Loads bitmaps into QSPI memory for GC500_2_5inch to use.

Dependencies:   DMBasicGUI DMSupport

Files at this revision

API Documentation at this revision

Comitter:
jmitc91516
Date:
Mon Jul 31 15:44:39 2017 +0000
Commit message:
Background and scroll arrow bitmaps added to QSPI memory.

Changed in this revision

DMBasicGUI.lib Show annotated file Show diff for this revision Revisions of this file
DMSupport.lib Show annotated file Show diff for this revision Revisions of this file
dm_board_config.h Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiComponents.h Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiDisplay.c Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiDisplay.h Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiGraph.h Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiGraph16.h Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiItems.h Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiLib.c Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiLib.h Show annotated file Show diff for this revision Revisions of this file
easyGUIFixed/GuiLibStruct.h Show annotated file Show diff for this revision Revisions of this file
easyGUIUpdated/GuiConst.h Show annotated file Show diff for this revision Revisions of this file
easyGUIUpdated/GuiFont.c Show annotated file Show diff for this revision Revisions of this file
easyGUIUpdated/GuiFont.h Show annotated file Show diff for this revision Revisions of this file
easyGUIUpdated/GuiStruct.c Show annotated file Show diff for this revision Revisions of this file
easyGUIUpdated/GuiStruct.h Show annotated file Show diff for this revision Revisions of this file
easyGUIUpdated/GuiVar.c Show annotated file Show diff for this revision Revisions of this file
easyGUIUpdated/GuiVar.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DMBasicGUI.lib	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,1 @@
+http://developer.mbed.org/teams/Embedded-Artists/code/DMBasicGUI/#1a7c743600e6
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DMSupport.lib	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,1 @@
+http://developer.mbed.org/teams/Embedded-Artists/code/DMSupport/#e1cb4dd9bfeb
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dm_board_config.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,37 @@
+/*
+ *  Copyright 2014 Embedded Artists AB
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ */
+
+#ifndef DM_BOARD_CONFIG_H
+#define DM_BOARD_CONFIG_H
+
+// Template to use for the project-specific settings. Copy this file to your project,
+// rename it to dm_board_config.h and uncomment the wanted features below:
+
+// #define DM_BOARD_USE_USB_DEVICE
+// #define DM_BOARD_USE_USB_HOST
+// #define DM_BOARD_USE_MCI_FS
+#define DM_BOARD_USE_QSPI_FS
+#define DM_BOARD_USE_QSPI
+#define DM_BOARD_USE_DISPLAY
+#define DM_BOARD_USE_TOUCH
+// #define DM_BOARD_USE_ETHERNET
+#define DM_BOARD_USE_FAST_UART
+// #define DM_BOARD_USE_USBSERIAL_IN_RTOSLOG
+// #define DM_BOARD_DISABLE_STANDARD_PRINTF
+// #define DM_BOARD_ENABLE_MEASSURING_PINS
+#define DM_BOARD_USE_REGISTRY
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiComponents.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,4250 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2015 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                               v6.0.9.005                                 */
+/*                                                                          */
+/*     GuiLib.c include file - do NOT reference it in your linker setup     */
+/*                                                                          */
+/* ************************************************************************ */
+
+//------------------------------------------------------------------------------
+void GuiLib_ClearPositionCallbacks(void)
+{
+  GuiConst_INT16U I;
+
+  for (I = 0; I < GuiConst_POSCALLBACK_CNT; I++)
+    sgl.PosCallbacks[I].InUse = 0;
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_SetPositionCallbackFunc(
+   GuiConst_INT16U IndexNo,
+   void (*PosCallbackFunc) (GuiConst_INT16U IndexNo,
+                            GuiConst_INT16S X,
+                            GuiConst_INT16S Y))
+{
+  GuiConst_INT32S I, J;
+
+  J = -1;
+  for (I = 0; I < GuiConst_POSCALLBACK_CNT; I++)
+    if (sgl.PosCallbacks[I].IndexNo == IndexNo)
+    {
+      J = I;
+      break;
+    }
+  if (J == -1)
+    for (I = 0; I < GuiConst_POSCALLBACK_CNT; I++)
+      if (!sgl.PosCallbacks[I].InUse)
+      {
+        J = I;
+        break;
+      }
+
+  if (J >= 0)
+  {
+    sgl.PosCallbacks[J].InUse = 1;
+    sgl.PosCallbacks[J].PosCallbackFunc = PosCallbackFunc;
+    sgl.PosCallbacks[J].IndexNo = IndexNo;
+  }
+}
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+static void DrawCursorItem(
+   GuiConst_INT8U CursorVisible)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  GuiConst_INT16S RemCursorFieldNo, I;
+  PrefixLocate ItemMemory     RemMemory;
+  PrefixLocate ItemMemory  *PrefixLocate CursorMemory;
+  PrefixLocate GuiLib_ItemRec *CursorItem;
+
+  if (sgl.CursorInUse && (GuiLib_ActiveCursorFieldNo >= 0))
+  {
+    I = -1;
+    memcpy(&RemMemory, &sgl.Memory, sizeof(ItemMemory));
+    while ((I = AutoRedraw_GetCursor(GuiLib_ActiveCursorFieldNo, I)) != -1)
+    {
+      CursorItem = AutoRedraw_GetItem(I);
+      CursorMemory = AutoRedraw_GetItemMemory(I);
+
+      if ((CursorItem == NULL) || (CursorMemory == NULL))
+        return;
+
+      memcpy(&sgl.CurItem, CursorItem, sizeof(GuiLib_ItemRec));
+      memcpy(&sgl.Memory, CursorMemory, sizeof(ItemMemory));
+
+
+  #ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+      if ((sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_FIELDSCROLLBOX) &&
+          (sgl.ScrollBoxesAry[sgl.CurItem.CursorScrollBoxIndex].ScrollLineDataFunc != 0))
+        sgl.ScrollBoxesAry[sgl.CurItem.CursorScrollBoxIndex].ScrollLineDataFunc(
+           sgl.ScrollBoxesAry[sgl.CurItem.CursorScrollBoxIndex].MarkerStartLine[0]);
+  #endif // GuiConst_ITEM_SCROLLBOX_INUSE
+
+      if (!CursorVisible)
+      {
+        RemCursorFieldNo = GuiLib_ActiveCursorFieldNo;
+        GuiLib_ActiveCursorFieldNo = -1;
+      }
+      else
+        RemCursorFieldNo = 0;
+
+      sgl.SwapColors = 0;
+  #ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+      if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_FIELDSCROLLBOX)
+        ScrollBox_DrawScrollLine(sgl.CurItem.CursorScrollBoxIndex,
+           sgl.ScrollBoxesAry[sgl.CurItem.CursorScrollBoxIndex].MarkerStartLine[0]);
+      else
+  #endif // GuiConst_ITEM_SCROLLBOX_INUSE
+      {
+  #ifdef GuiConst_BITMAP_SUPPORT_ON
+        UpdateBackgroundBitmap();
+  #endif
+
+        DrawItem(GuiLib_COL_INVERT_IF_CURSOR);
+      }
+
+      if (!CursorVisible)
+        GuiLib_ActiveCursorFieldNo = RemCursorFieldNo;
+    }
+    memcpy(&sgl.Memory, &RemMemory, sizeof(ItemMemory));
+  }
+  #else // GuiConst_CURSOR_FIELDS_OFF
+  CursorVisible = 0;
+  #endif // GuiConst_CURSOR_FIELDS_OFF
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Cursor_Hide(void)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  GuiDisplay_Lock();
+  DrawCursorItem(0);
+  GuiDisplay_Unlock();
+  GuiLib_ActiveCursorFieldNo = -1;
+#endif // GuiConst_CURSOR_FIELDS_OFF
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_IsCursorFieldInUse(
+   GuiConst_INT16S AskCursorFieldNo)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  if (AskCursorFieldNo >= 0)
+  {
+    if (AutoRedraw_GetCursor(AskCursorFieldNo, -1) != -1)
+      return 1;
+  }
+
+  return 0;
+#else // GuiConst_CURSOR_FIELDS_OFF
+  return 0;
+#endif // GuiConst_CURSOR_FIELDS_OFF
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Cursor_Select(
+   GuiConst_INT16S NewCursorFieldNo)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  if (NewCursorFieldNo == -1)
+  {
+    GuiLib_Cursor_Hide();
+    return 0;
+  }
+  else if (NewCursorFieldNo >= 0)
+  {
+    if (AutoRedraw_GetCursor(NewCursorFieldNo, -1) != -1)
+    {
+      GuiDisplay_Lock();
+
+      DrawCursorItem(0);
+      GuiLib_ActiveCursorFieldNo = NewCursorFieldNo;
+      DrawCursorItem(1);
+
+      GuiDisplay_Unlock();
+
+      return 1;
+    }
+  }
+
+  return 0;
+#else
+  NewCursorFieldNo = 0;
+  return 0;
+#endif
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Cursor_Down(void)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  GuiConst_INT16S NewCursorFieldNo, Index;
+
+  Index = AutoRedraw_GetNextCursor(GuiLib_ActiveCursorFieldNo);
+
+  NewCursorFieldNo = AutoRedraw_GetCursorNumber(Index);
+
+#ifdef GuiConst_CURSOR_MODE_WRAP_AROUND
+  if ((NewCursorFieldNo == GuiLib_ActiveCursorFieldNo)
+   || (Index == -1))
+    return GuiLib_Cursor_Home();
+#else
+  if (Index == -1)
+    return 0;
+#endif
+
+  GuiLib_Cursor_Select(NewCursorFieldNo);
+
+  return 1;
+#else
+  return 0;
+#endif
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Cursor_Up(void)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  GuiConst_INT16S NewCursorFieldNo, Index;
+
+  Index = AutoRedraw_GetPrevCursor(GuiLib_ActiveCursorFieldNo);
+
+  NewCursorFieldNo = AutoRedraw_GetCursorNumber(Index);
+
+#ifdef GuiConst_CURSOR_MODE_WRAP_AROUND
+  if ((NewCursorFieldNo == GuiLib_ActiveCursorFieldNo)
+   || (Index == -1))
+    return GuiLib_Cursor_End();
+#else
+  if (Index == -1)
+    return 0;
+#endif
+
+  GuiLib_Cursor_Select(NewCursorFieldNo);
+
+  return 1;
+#else
+  return 0;
+#endif
+
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Cursor_Home(void)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  GuiConst_INT16S NewCursorFieldNo, Index;
+
+  Index = AutoRedraw_GetFirstCursor();
+
+  NewCursorFieldNo = AutoRedraw_GetCursorNumber(Index);
+
+  if (NewCursorFieldNo == GuiLib_ActiveCursorFieldNo)
+    return 0;
+
+  GuiLib_Cursor_Select(NewCursorFieldNo);
+
+  return 1;
+#else
+  return 0;
+#endif
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Cursor_End(void)
+{
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+  GuiConst_INT16S NewCursorFieldNo, Index;
+
+  Index = AutoRedraw_GetLastCursor();
+
+  NewCursorFieldNo = AutoRedraw_GetCursorNumber(Index);
+
+  if (NewCursorFieldNo == GuiLib_ActiveCursorFieldNo)
+    return 0;
+
+  GuiLib_Cursor_Select(NewCursorFieldNo);
+
+  return 1;
+#else
+  return 0;
+#endif
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+#endif // GuiConst_CURSOR_SUPPORT_ON
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+static void BlinkBox(void)
+{
+  if ((sgl.BlinkBoxRate) && (sgl.DisplayWriting))
+    GuiLib_InvertBox(sgl.BlinkBoxX1, sgl.BlinkBoxY1, sgl.BlinkBoxX2, sgl.BlinkBoxY2);
+  sgl.BlinkBoxInverted = !sgl.BlinkBoxInverted;
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_BlinkBoxStart(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INT16S Rate)
+{
+  GuiLib_BlinkBoxStop();
+  sgl.BlinkBoxX1 = X1;
+  sgl.BlinkBoxY1 = Y1;
+  sgl.BlinkBoxX2 = X2;
+  sgl.BlinkBoxY2 = Y2;
+  if (Rate < 1)
+    sgl.BlinkBoxRate = 1;
+  else
+    sgl.BlinkBoxRate = Rate;
+  sgl.BlinkBoxState = sgl.BlinkBoxRate;
+  sgl.BlinkBoxInverted = 0;
+  BlinkBox();
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_BlinkBoxStop(void)
+{
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  GuiConst_INT16U I;
+#endif
+
+  if (sgl.BlinkBoxRate && sgl.BlinkBoxInverted)
+    BlinkBox();
+  sgl.BlinkBoxRate = 0;
+
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  for (I = 0; I < GuiConst_BLINK_FIELDS_MAX; I++)
+    if (sgl.BlinkTextItems[I].InUse && sgl.BlinkTextItems[I].Active)
+      GuiLib_BlinkBoxMarkedItemStop(I);
+#endif
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_BlinkBoxMarkedItem(
+   GuiConst_INT16U BlinkFieldNo,
+   GuiConst_INT16U CharNo,
+   GuiConst_INT16S Rate)
+{
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  GuiConst_INT16S TextXOfs[GuiConst_MAX_TEXT_LEN + 2];
+  TextParRec TempTextPar;
+  GuiConst_INT8U TempPs;
+  GuiConst_INT16U CharCnt;
+  GuiConst_INT16U TempTextLength;
+  GuiConst_INT8U TempFormatFieldWidth;
+  GuiConst_INT8U TempFormatDecimals;
+  GuiConst_INT8U TempFormatAlignment;
+  GuiConst_INT8U TempFormatFormat;
+  #ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT32U PrefixRom TempOfs;
+  GuiConst_INT8U CharHeader[GuiLib_CHR_LINECTRL_OFS];
+  #else // GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U PrefixRom * TempPtr;
+  #endif // GuiConst_REMOTE_FONT_DATA
+  #ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+  GuiConst_INT8U CharHeader1[GuiLib_CHR_LINECTRL_OFS];
+  GuiConst_INT8U CharHeader2[GuiLib_CHR_LINECTRL_OFS];
+  GuiConst_INT16S TextCharLineStart[GuiConst_MAX_PARAGRAPH_LINE_CNT];
+  GuiConst_INT16S TextCharLineEnd[GuiConst_MAX_PARAGRAPH_LINE_CNT];
+  GuiConst_INT16S M;
+  GuiConst_INT16S LineCnt;
+  GuiConst_INT16S LineCnt2;
+  GuiConst_INT16S LineLen;
+  GuiConst_INT16S XStart, XEnd;
+  GuiConst_INT16S P2;
+  #endif // GuiConst_ITEM_TEXTBLOCK_INUSE
+  GuiConst_INT16S N;
+#ifndef GuiConst_CHARMODE_ANSI
+  GuiConst_INT16S P1;
+#endif
+  GuiConst_TEXT PrefixGeneric *CharPtr;
+  GuiConst_INT32S VarValue;
+  GuiConst_INT16S TextPixelLen;
+
+  if ((BlinkFieldNo >= GuiConst_BLINK_FIELDS_MAX) ||
+      !sgl.BlinkTextItems[BlinkFieldNo].InUse)
+    return;
+
+  if (sgl.BlinkTextItems[BlinkFieldNo].Active &&
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate &&
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted)
+  {
+    if (sgl.DisplayWriting)
+    {
+      GuiLib_InvertBox(sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1,
+                       sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1,
+                       sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2,
+                       sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY2);
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted =
+         !sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted;
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxLast =
+         sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted;
+    }
+  }
+
+  sgl.BlinkTextItems[BlinkFieldNo].Active = 0;
+  sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate = 0;
+
+  if ((BlinkFieldNo < GuiConst_BLINK_FIELDS_MAX) &&
+       sgl.BlinkTextItems[BlinkFieldNo].InUse)
+  {
+    sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 = sgl.BlinkTextItems[BlinkFieldNo].X1;
+    sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2 = sgl.BlinkTextItems[BlinkFieldNo].X2;
+    sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1 = sgl.BlinkTextItems[BlinkFieldNo].Y1;
+    sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY2 = sgl.BlinkTextItems[BlinkFieldNo].Y2;
+
+    if (sgl.BlinkTextItems[BlinkFieldNo].InUse)
+    {
+      TempTextPar = sgl.CurItem.TextPar[0];
+      TempTextLength = sgl.CurItem.TextLength[0];
+      TempFormatFieldWidth = sgl.CurItem.FormatFieldWidth;
+      TempFormatDecimals = sgl.CurItem.FormatDecimals;
+      TempFormatAlignment = sgl.CurItem.FormatAlignment;
+      TempFormatFormat = sgl.CurItem.FormatFormat;
+
+      sgl.CurItem.FormatFieldWidth = sgl.BlinkTextItems[BlinkFieldNo].FormatFieldWidth;
+      sgl.CurItem.FormatDecimals = sgl.BlinkTextItems[BlinkFieldNo].FormatDecimals;
+      sgl.CurItem.FormatAlignment = sgl.BlinkTextItems[BlinkFieldNo].FormatAlignment;
+      sgl.CurItem.FormatFormat = sgl.BlinkTextItems[BlinkFieldNo].FormatFormat;
+      sgl.CurItem.TextPar[0] = sgl.BlinkTextItems[BlinkFieldNo].TextPar;
+      CharCnt = sgl.BlinkTextItems[BlinkFieldNo].CharCnt;
+      sgl.CurItem.TextLength[0] = CharCnt;
+
+      SetCurFont(sgl.BlinkTextItems[BlinkFieldNo].TextPar.FontIndex);
+
+      if ((sgl.BlinkTextItems[BlinkFieldNo].ItemType == GuiLib_ITEM_TEXT) ||
+          (sgl.BlinkTextItems[BlinkFieldNo].ItemType == GuiLib_ITEM_TEXTBLOCK))
+      {
+#ifdef GuiConst_CHARMODE_UNICODE
+        ExtractUnicodeString(
+           (GuiConst_INT8U PrefixRom *)sgl.BlinkTextItems[BlinkFieldNo].TextPtr,
+            sgl.CurItem.TextLength[0]);
+  #ifdef GuiConst_ARAB_CHARS_INUSE
+        if (sgl.BlinkTextItems[BlinkFieldNo].TextPar.BitFlags &
+            GuiLib_BITFLAG_REVERSEWRITING)
+        {
+          CharCnt = ArabicCorrection(
+             sgl.UnicodeTextBuf, CharCnt,
+             (sgl.BlinkTextItems[BlinkFieldNo].TextPar.BitFlags &
+              GuiLib_BITFLAG_REVERSEWRITING) > 0);
+        }
+  #endif // GuiConst_ARAB_CHARS_INUSE
+#endif // GuiConst_CHARMODE_UNICODE
+
+#ifdef GuiConst_CHARMODE_UNICODE
+        CharPtr = (GuiConst_TEXT PrefixGeneric *)sgl.UnicodeTextBuf;
+#else // GuiConst_CHARMODE_UNICODE
+        CharPtr = (GuiConst_TEXT PrefixRom *)sgl.BlinkTextItems[BlinkFieldNo].TextPtr;
+#endif // GuiConst_CHARMODE_UNICODE
+        PrepareText(CharPtr,CharCnt,0);
+      }
+      else
+      {
+#ifdef GuiConst_DISP_VAR_NOW
+        displayVarNow = 1;
+#endif
+        if (sgl.BlinkTextItems[BlinkFieldNo].VarType == GuiLib_VAR_STRING)
+        {
+          CharPtr = (GuiConst_TEXT PrefixGeneric *)sgl.BlinkTextItems[BlinkFieldNo].TextPtr;
+#ifdef GuiConst_CHARMODE_ANSI
+          CharCnt = strlen(CharPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+          CharCnt = GuiLib_UnicodeStrLen((GuiConst_TEXT*)CharPtr);
+#else // GuiConst_CODEVISION_COMPILER
+          CharCnt = GuiLib_UnicodeStrLen(CharPtr);
+#endif // GuiConst_CODEVISION_COMPILER
+#endif // GuiConst_CHARMODE_ANSI
+        }
+        else
+        {
+          VarValue = ReadVar(sgl.BlinkTextItems[BlinkFieldNo].TextPtr,
+                             sgl.BlinkTextItems[BlinkFieldNo].VarType);
+
+          CharCnt =
+             DataNumStr(VarValue, sgl.BlinkTextItems[BlinkFieldNo].VarType, 0);
+
+#ifdef GuiConst_CHARMODE_ANSI
+          CharPtr = (GuiConst_TEXT PrefixGeneric *) sgl.VarNumTextStr;
+#else // GuiConst_CHARMODE_ANSI
+          for (P1=0; P1<=CharCnt; P1++)
+            sgl.VarNumUnicodeTextStr[P1] = sgl.VarNumTextStr[P1];
+          CharPtr = (GuiConst_TEXT *) sgl.VarNumUnicodeTextStr;
+#endif // GuiConst_CHARMODE_ANSI
+        }
+#ifdef GuiConst_CHARMODE_ANSI
+         strcpy(sgl.AnsiTextBuf, CharPtr);
+#else // GuiConst_CHARMODE_ANSI
+         GuiLib_UnicodeStrCpy(sgl.UnicodeTextBuf, CharPtr);
+#endif // GuiConst_CHARMODE_ANSI
+#ifdef   GuiConst_ARAB_CHARS_INUSE
+         if (sgl.BlinkTextItems[BlinkFieldNo].TextPar.BitFlags &
+             GuiLib_BITFLAG_REVERSEWRITING)
+         {
+           CharCnt = ArabicCorrection(
+              sgl.UnicodeTextBuf, CharCnt,
+             (sgl.BlinkTextItems[BlinkFieldNo].TextPar.BitFlags &
+              GuiLib_BITFLAG_REVERSEWRITING) > 0);
+         }
+#endif // GuiConst_ARAB_CHARS_INUSE
+#ifdef GuiConst_CHARMODE_ANSI
+         CharPtr = sgl.AnsiTextBuf;
+#else // GuiConst_CHARMODE_ANSI
+         CharPtr = sgl.UnicodeTextBuf;
+#endif // GuiConst_CHARMODE_ANSI
+         PrepareText(CharPtr, CharCnt,0);
+
+#ifdef GuiConst_DISP_VAR_NOW
+         displayVarNow = 0;
+#endif
+      }
+
+      if (CharNo > CharCnt)
+      {
+        SetCurFont(sgl.CurItem.TextPar[0].FontIndex);
+        sgl.CurItem.TextPar[0] = TempTextPar;
+        sgl.CurItem.TextLength[0] = TempTextLength;
+        sgl.CurItem.FormatFieldWidth = TempFormatFieldWidth;
+        sgl.CurItem.FormatDecimals = TempFormatDecimals;
+        sgl.CurItem.FormatAlignment = TempFormatAlignment;
+        sgl.CurItem.FormatFormat = TempFormatFormat;
+        return;
+      }
+
+      if(CharNo > 0)
+      {
+#ifdef GuiConst_BLINK_LF_COUNTS
+        if (*(CharPtr + (CharNo - 1)) != GuiLib_LINEFEED)
+#endif
+        {
+          sgl.BlinkTextItems[BlinkFieldNo].Active = 0;
+          sgl.BlinkTextItems[BlinkFieldNo].CharNo = CharNo;
+        }
+      }
+
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+      if ((sgl.BlinkTextItems[BlinkFieldNo].ItemType == GuiLib_ITEM_TEXTBLOCK)||
+          (sgl.BlinkTextItems[BlinkFieldNo].ItemType == GuiLib_ITEM_VARBLOCK))
+      {
+        if(CharNo > 0)
+        {
+          TextPixelLength(sgl.BlinkTextItems[BlinkFieldNo].TextPar.Ps,
+                          CharCnt, TextXOfs);
+
+          TextCharLineStart[0] = 0;
+          TextCharLineEnd[0] = -1;
+
+          LineCnt = 1 - sgl.BlinkTextItems[BlinkFieldNo].BlindLinesAtTop;
+          if (LineCnt >= 1)
+            LineCnt = 1;
+          LineCnt2 = 1;
+          P2 = 0;
+
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+          GuiLib_RemoteDataReadBlock(
+             (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[
+              sgl.TextCharNdx[TextCharLineStart[LineCnt2 - 1]]],
+              GuiLib_CHR_LINECTRL_OFS,
+              CharHeader2);
+#endif // GuiConst_REMOTE_FONT_DATA
+
+          while (P2 < CharCnt)
+          {
+            while ((P2 < CharCnt - 1) &&
+                !((ReadBytePtr(CharPtr + P2) == GuiLib_LINEFEED) ||
+                ((ReadBytePtr(CharPtr + P2) != ' ') && (ReadBytePtr(CharPtr + P2 + 1) == ' ')) ||
+                ((ReadBytePtr(CharPtr + P2) == '-') && (ReadBytePtr(CharPtr + P2 + 1) != ' '))))
+              P2++;
+
+            if (CalcCharsWidth(TextCharLineStart[LineCnt2 - 1], P2,
+                               TextXOfs, &XStart, &XEnd) >
+               (sgl.BlinkTextItems[BlinkFieldNo].X2 -
+                sgl.BlinkTextItems[BlinkFieldNo].X1 + 1))
+            {
+              if (TextCharLineEnd[LineCnt2 - 1] == -1)
+              {
+                TextCharLineEnd[LineCnt2 - 1] = P2;
+                TextCharLineStart[LineCnt2] = P2 + 1;
+                TextCharLineEnd[LineCnt2] = -1;
+              }
+              else
+              {
+                TextCharLineStart[LineCnt2] = TextCharLineEnd[LineCnt2 - 1] + 1;
+                while ((TextCharLineStart[LineCnt2] < P2) &&
+                       (ReadBytePtr(CharPtr + TextCharLineStart[LineCnt2]) ==
+                        ' '))
+                  TextCharLineStart[LineCnt2]++;
+                TextCharLineEnd[LineCnt2] = P2;
+              }
+              if (LineCnt >= GuiConst_MAX_PARAGRAPH_LINE_CNT)
+              {
+                P2 = CharCnt;
+                break;
+              }
+              LineCnt++;
+              if (LineCnt > 1)
+                LineCnt2 = LineCnt;
+              else
+                TextCharLineStart[LineCnt2 - 1] = TextCharLineStart[LineCnt2];
+            }
+            else
+              TextCharLineEnd[LineCnt2 - 1] = P2;
+            if (ReadBytePtr(CharPtr + P2) == GuiLib_LINEFEED)
+            {
+              TextCharLineEnd[LineCnt2 - 1] = P2 - 1;
+              TextCharLineStart[LineCnt2] = P2 + 1;
+              TextCharLineEnd[LineCnt2] = -1;
+              if (LineCnt >= GuiConst_MAX_PARAGRAPH_LINE_CNT)
+              {
+                P2 = CharCnt;
+                break;
+              }
+              LineCnt++;
+              if (LineCnt > 1)
+                LineCnt2 = LineCnt;
+              else
+                TextCharLineStart[LineCnt2 - 1] = TextCharLineStart[LineCnt2];
+            }
+            P2++;
+          }
+
+            if (sgl.BlinkTextItems[BlinkFieldNo].TextPar.BitFlags &
+                GuiLib_BITFLAG_REVERSEWRITING)
+            {
+              for (M = 0; M < LineCnt2 ; M++)
+              {
+                for (P2 = TextCharLineStart[M]; P2 <= (TextCharLineStart[M] +
+                   ((TextCharLineEnd[M] - TextCharLineStart[M] + 1) / 2) - 1);
+                     P2++)
+                {
+#ifdef GuiConst_REMOTE_FONT_DATA
+                  TempOfs = sgl.TextCharNdx[P2];
+                  sgl.TextCharNdx[P2] =
+                     sgl.TextCharNdx[TextCharLineEnd[M] - (P2 - TextCharLineStart[M])];
+                  sgl.TextCharNdx[TextCharLineEnd[M] - (P2 - TextCharLineStart[M])] =
+                     TempOfs;
+#else // GuiConst_REMOTE_FONT_DATA
+                  TempPtr = sgl.TextCharPtrAry[P2];
+                  sgl.TextCharPtrAry[P2] =
+                     (GuiConst_INT8U PrefixRom *)sgl.TextCharPtrAry[
+                     TextCharLineEnd[M] - (P2 - TextCharLineStart[M])];
+                  sgl.TextCharPtrAry[TextCharLineEnd[M] - (P2 - TextCharLineStart[M])] =
+                     (GuiConst_INT8U PrefixRom *)TempPtr;
+#endif // GuiConst_REMOTE_FONT_DATA
+                }
+              }
+              TextPixelLength(sgl.BlinkTextItems[BlinkFieldNo].TextPar.Ps,
+                              CharCnt, TextXOfs);
+            }
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+            if (sgl.BlinkTextItems[BlinkFieldNo].BlindLinesAtTop < 0)
+              sgl.BlinkTextItems[BlinkFieldNo].BlindLinesAtTop = 0;
+            sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1 -=
+               sgl.BlinkTextItems[BlinkFieldNo].TextBoxScrollPos -
+              (sgl.BlinkTextItems[BlinkFieldNo].TextBoxLineDist *
+               sgl.BlinkTextItems[BlinkFieldNo].BlindLinesAtTop);
+#endif // GuiConst_TEXTBOX_FIELDS_ON
+
+            switch (sgl.BlinkTextItems[BlinkFieldNo].TextBoxVertAlignment)
+            {
+             case GuiLib_ALIGN_CENTER:
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1 +=
+                  (sgl.BlinkTextItems[BlinkFieldNo].Y2 -
+                   sgl.BlinkTextItems[BlinkFieldNo].Y1 + 1 -
+                  (sgl.BlinkTextItems[BlinkFieldNo].YSize +
+                  (LineCnt2 - 1) *
+                   sgl.BlinkTextItems[BlinkFieldNo].TextBoxLineDist)) / 2;
+               break;
+
+             case GuiLib_ALIGN_RIGHT:
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1 +=
+                  sgl.BlinkTextItems[BlinkFieldNo].Y2 -
+                  sgl.BlinkTextItems[BlinkFieldNo].Y1 + 1 -
+                 (sgl.BlinkTextItems[BlinkFieldNo].YSize +
+                 (LineCnt2 - 1) *
+                  sgl.BlinkTextItems[BlinkFieldNo].TextBoxLineDist);
+               break;
+            }
+
+            for (N = 0; N < LineCnt2; N++)
+            {
+              if (((CharNo - 1) <= TextCharLineEnd[N])
+               && ((CharNo - 1) >= TextCharLineStart[N]))
+              {
+                if (sgl.BlinkTextItems[BlinkFieldNo].TextPar.BitFlags &
+                    GuiLib_BITFLAG_REVERSEWRITING)
+                  CharNo = TextCharLineStart[N] + TextCharLineEnd[N] + 2 - CharNo;
+
+                sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 =
+                   sgl.BlinkTextItems[BlinkFieldNo].X1;
+
+                LineLen = CalcCharsWidth(TextCharLineStart[N],
+                                         TextCharLineEnd[N],
+                                         TextXOfs,
+                                         &XStart,
+                                         &XEnd);
+                switch (sgl.BlinkTextItems[BlinkFieldNo].TextBoxHorzAlignment)
+                {
+                  case GuiLib_ALIGN_CENTER:
+                   sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +=
+                      (sgl.BlinkTextItems[BlinkFieldNo].X2 -
+                       sgl.BlinkTextItems[BlinkFieldNo].X1 + LineLen - 1) / 2;
+                   break;
+
+                  case GuiLib_ALIGN_RIGHT:
+                   sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +=
+                      sgl.BlinkTextItems[BlinkFieldNo].X2 -
+                      sgl.BlinkTextItems[BlinkFieldNo].X1 + LineLen - 1;
+                   break;
+                }
+
+                sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 -= XStart;
+                LineLen = CalcCharsWidth(CharNo - 1,
+                                         CharNo - 1,
+                                         TextXOfs,
+                                         &XStart,
+                                         &XEnd);
+                sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2 =
+                   sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 + XEnd;
+                sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 += XStart;
+                sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY2 =
+                   sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1 +
+                   sgl.BlinkTextItems[BlinkFieldNo].YSize - 1;
+
+                sgl.BlinkTextItems[BlinkFieldNo].Active = 1;
+                break;
+              }
+
+#ifndef GuiConst_BLINK_LF_COUNTS
+              if ((N+1) < LineCnt2)
+                if ((TextCharLineEnd[N]+1) != TextCharLineStart[N+1])
+                  CharNo++;
+#endif
+
+              sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1 +=
+                 sgl.BlinkTextItems[BlinkFieldNo].TextBoxLineDist;
+            }
+        }
+        else
+        {
+          sgl.BlinkTextItems[BlinkFieldNo].Active = 1;
+          sgl.BlinkTextItems[BlinkFieldNo].CharNo = CharNo;
+        }
+      }
+      else
+#endif // GuiConst_ITEM_TEXTBLOCK_INUSE
+      {
+        if (sgl.BlinkTextItems[BlinkFieldNo].TextPar.BitFlags &
+            GuiLib_BITFLAG_REVERSEWRITING)
+        {
+          for (N = 0; N < CharCnt / 2; N++)
+          {
+#ifdef GuiConst_REMOTE_FONT_DATA
+            TempOfs = sgl.TextCharNdx[N];
+            sgl.TextCharNdx[N] =
+               sgl.TextCharNdx[CharCnt - 1 - N];
+            sgl.TextCharNdx[CharCnt - 1 - N] =
+               TempOfs;
+#else
+            TempPtr = sgl.TextCharPtrAry[N];
+            sgl.TextCharPtrAry[N] = (GuiConst_INT8U PrefixRom *)
+               sgl.TextCharPtrAry[CharCnt - 1 - N];
+            sgl.TextCharPtrAry[CharCnt - 1 - N] =
+              (GuiConst_INT8U PrefixRom *)TempPtr;
+#endif
+          }
+          CharNo =  CharCnt + 1 - CharNo;
+        }
+
+        TextPixelLen = TextPixelLength(sgl.BlinkTextItems[BlinkFieldNo].TextPar.Ps,
+                          CharCnt, TextXOfs);
+
+        switch (sgl.BlinkTextItems[BlinkFieldNo].TextPar.Alignment)
+        {
+          case GuiLib_ALIGN_CENTER:
+            if (CharCnt > 0)
+                sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 -= TextPixelLen / 2;
+              break;
+          case GuiLib_ALIGN_RIGHT:
+            sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 -= TextPixelLen - 1;
+              break;
+        }
+
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2 = sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +
+           TextPixelLen - 1;
+
+        if (CharNo)
+        {
+          if (sgl.BlinkTextItems[BlinkFieldNo].TextPar.Ps == GuiLib_PS_OFF)
+          {
+            sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 =
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 + TextXOfs[CharNo-1] - 1;
+            sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2 =
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +
+               sgl.BlinkTextItems[BlinkFieldNo].XSize;
+          }
+          else if ((sgl.BlinkTextItems[BlinkFieldNo].TextPar.Ps == GuiLib_PS_NUM) &&
+                   (sgl.TextPsMode[CharNo - 1] == 0))
+          {
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 =
+                  sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 + TextXOfs[CharNo - 1] - 1;
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2 =
+                  sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +
+                  sgl.BlinkTextItems[BlinkFieldNo].PsNumWidth +
+                  sgl.BlinkTextItems[BlinkFieldNo].PsSpace;
+          }
+          else
+          {
+#ifdef GuiConst_REMOTE_FONT_DATA
+            GuiLib_RemoteDataReadBlock((GuiConst_INT32U PrefixRom)
+               GuiFont_ChPtrList[sgl.TextCharNdx[CharNo - 1]],
+               GuiLib_CHR_LINECTRL_OFS, CharHeader);
+            sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 =
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +
+               TextXOfs[CharNo-1] + CharHeader[GuiLib_CHR_XLEFT_OFS] - 1;
+#else
+            sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 =
+               sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 + TextXOfs[CharNo - 1] +
+               ReadBytePtr(sgl.TextCharPtrAry[CharNo - 1] +
+               GuiLib_CHR_XLEFT_OFS) - 1;
+#endif
+#ifdef GuiConst_REMOTE_FONT_DATA
+          sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2 =
+             sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +
+             CharHeader[GuiLib_CHR_XWIDTH_OFS] + 1;
+#else
+          sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2 =
+             sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1 +
+             ReadBytePtr(sgl.TextCharPtrAry[CharNo - 1] +
+             GuiLib_CHR_XWIDTH_OFS) + 1;
+#endif
+          }
+          sgl.BlinkTextItems[BlinkFieldNo].Active = 1;
+        }
+        else
+        {
+          sgl.BlinkTextItems[BlinkFieldNo].Active = 1;
+          sgl.BlinkTextItems[BlinkFieldNo].CharNo = CharNo;
+        }
+      }
+      SetCurFont(sgl.CurItem.TextPar[0].FontIndex);
+      sgl.CurItem.TextPar[0] = TempTextPar;
+      sgl.CurItem.TextLength[0] = TempTextLength;
+      sgl.CurItem.FormatFieldWidth = TempFormatFieldWidth;
+      sgl.CurItem.FormatDecimals = TempFormatDecimals;
+      sgl.CurItem.FormatAlignment = TempFormatAlignment;
+      sgl.CurItem.FormatFormat = TempFormatFormat;
+
+    }
+
+    if (sgl.BlinkTextItems[BlinkFieldNo].Active)
+    {
+      if (Rate < 1)
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate = 1;
+      else
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate = Rate;
+      if (sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate < 255)
+      {
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxState =
+           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate -
+          (sgl.RefreshClock % sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate);
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted =
+           ((sgl.RefreshClock / sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate) % 2) ==
+             0;
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxLast =
+           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted;
+        if (sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted && sgl.DisplayWriting)
+          GuiLib_InvertBox(sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1,
+                           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1,
+                           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2,
+                           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY2);
+      }
+      else
+      {
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxState =
+             sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate;
+        if (sgl.DisplayWriting)
+          GuiLib_InvertBox(sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1,
+                           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1,
+                           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2,
+                           sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY2);
+
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted =
+                        !sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted;
+        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxLast =
+                        sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted;
+      }
+    }
+  }
+#else // GuiConst_BLINK_FIELDS_OFF
+  gl.Dummy1_16U = BlinkFieldNo;   // To avoid compiler warning
+  gl.Dummy2_16U = CharNo;   // To avoid compiler warning
+  gl.Dummy1_16S = Rate;   // To avoid compiler warning
+#endif // GuiConst_BLINK_FIELDS_OFF
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_BlinkBoxMarkedItemStop(
+   GuiConst_INT16U BlinkFieldNo)
+{
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  if ((BlinkFieldNo >= GuiConst_BLINK_FIELDS_MAX) ||
+      !sgl.BlinkTextItems[BlinkFieldNo].InUse)
+    return;
+
+  if (sgl.BlinkTextItems[BlinkFieldNo].Active &&
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate &&
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted)
+  {
+    if (sgl.DisplayWriting)
+    {
+      GuiLib_InvertBox(sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX1,
+                       sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY1,
+                       sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxX2,
+                       sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxY2);
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted =
+         !sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted;
+      sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxLast =
+         sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxInverted;
+    }
+  }
+  sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate = 0;
+  sgl.BlinkTextItems[BlinkFieldNo].Active = 0;
+#else // GuiConst_BLINK_FIELDS_OFF
+  gl.Dummy1_16U = BlinkFieldNo;   // To avoid compiler warning
+#endif // GuiConst_BLINK_FIELDS_OFF
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_BlinkBoxMarkedItemUpdate(
+   GuiConst_INT16U BlinkFieldNo)
+{
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  if ((BlinkFieldNo >= GuiConst_BLINK_FIELDS_MAX) ||
+      !sgl.BlinkTextItems[BlinkFieldNo].InUse)
+    return;
+
+  if (sgl.BlinkTextItems[BlinkFieldNo].Active &&
+     ((sgl.BlinkTextItems[BlinkFieldNo].ItemType == GuiLib_ITEM_VAR) ||
+      (sgl.BlinkTextItems[BlinkFieldNo].ItemType == GuiLib_ITEM_VARBLOCK)))
+    GuiLib_BlinkBoxMarkedItem(
+       BlinkFieldNo,
+       sgl.BlinkTextItems[BlinkFieldNo].CharNo,
+       sgl.BlinkTextItems[BlinkFieldNo].BlinkBoxRate);
+#else // GuiConst_BLINK_FIELDS_OFF
+  gl.Dummy1_16U = BlinkFieldNo;   // To avoid compiler warning
+#endif // GuiConst_BLINK_FIELDS_OFF
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+#endif // GuiConst_BLINK_SUPPORT_ON
+
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_TouchCheck(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y)
+{
+  GuiConst_INT32S TouchSearch;
+  GuiConst_INT32S XX, YY;
+  GuiConst_INT32S XL, XR, YT, YB;
+  GuiConst_INT32S TouchArea;
+
+  if (sgl.TouchAdjustActive)
+  {
+    XX = 10 * (GuiConst_INT32S)X;
+    YY = 10 * (GuiConst_INT32S)Y;
+    XL = sgl.TouchAdjustXTL +
+       (YY - sgl.TouchAdjustYTL) * (sgl.TouchAdjustXBL - sgl.TouchAdjustXTL) /
+       (sgl.TouchAdjustYBL - sgl.TouchAdjustYTL);
+    XR = sgl.TouchAdjustXTR +
+       (YY - sgl.TouchAdjustYTR) * (sgl.TouchAdjustXBR - sgl.TouchAdjustXTR) /
+       (sgl.TouchAdjustYBR - sgl.TouchAdjustYTR);
+    YT = sgl.TouchAdjustYTL +
+       (XX - sgl.TouchAdjustXTL) * (sgl.TouchAdjustYTR - sgl.TouchAdjustYTL) /
+       (sgl.TouchAdjustXTR - sgl.TouchAdjustXTL);
+    YB = sgl.TouchAdjustYBL +
+       (XX - sgl.TouchAdjustXBL) * (sgl.TouchAdjustYBR - sgl.TouchAdjustYBL) /
+       (sgl.TouchAdjustXBR - sgl.TouchAdjustXBL);
+    sgl.TouchConvertX = GuiConst_DISPLAY_WIDTH * (XX - XL) / (XR - XL);
+    sgl.TouchConvertY = GuiConst_DISPLAY_HEIGHT * (YY - YT) / (YB - YT);
+  }
+  else
+  {
+    sgl.TouchConvertX = X;
+    sgl.TouchConvertY = Y;
+  }
+
+  TouchArea = -1;
+  if ((sgl.TouchConvertX >= 0) && (sgl.TouchConvertX < GuiConst_DISPLAY_WIDTH) &&
+      (sgl.TouchConvertY >= 0) && (sgl.TouchConvertY < GuiConst_DISPLAY_HEIGHT))
+    for (TouchSearch = 0; TouchSearch < sgl.TouchAreaCnt; TouchSearch++)
+      if ((sgl.TouchConvertX >= sgl.TouchAreas[TouchSearch].X1) &&
+          (sgl.TouchConvertX <= sgl.TouchAreas[TouchSearch].X2) &&
+          (sgl.TouchConvertY >= sgl.TouchAreas[TouchSearch].Y1) &&
+          (sgl.TouchConvertY <= sgl.TouchAreas[TouchSearch].Y2))
+      {
+        if (TouchArea == -1)
+          TouchArea = sgl.TouchAreas[TouchSearch].IndexNo;
+        else if (sgl.TouchAreas[TouchSearch].IndexNo < TouchArea)
+          TouchArea = sgl.TouchAreas[TouchSearch].IndexNo;
+      }
+  return TouchArea;
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_TouchGet(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S* TouchX,
+   GuiConst_INT16S* TouchY)
+{
+  GuiConst_INT32S Result;
+
+  Result = GuiLib_TouchCheck(X, Y);
+
+  *TouchX = sgl.TouchConvertX;
+  *TouchY = sgl.TouchConvertY;
+
+  return (Result);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_TouchAdjustReset(void)
+{
+  sgl.TouchAdjustActive = 0;
+  sgl.TouchAdjustInUse[0] = 0;
+  sgl.TouchAdjustInUse[1] = 0;
+  sgl.TouchAdjustInUse[2] = 0;
+  sgl.TouchAdjustInUse[3] = 0;
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_TouchAdjustSet(
+   GuiConst_INT16S XTrue,
+   GuiConst_INT16S YTrue,
+   GuiConst_INT16S XMeasured,
+   GuiConst_INT16S YMeasured)
+{
+  GuiConst_INT8U I;
+  GuiConst_INT32S XTL, YTL, XTR, YTR, XBL, YBL, XBR, YBR, XL, XR, YT, YB;
+
+  if (YTrue < GuiConst_DISPLAY_HEIGHT / 2)
+  {
+    if (XTrue < GuiConst_DISPLAY_WIDTH / 2)
+      I = 0;
+    else
+      I = 1;
+  }
+  else
+  {
+    if (XTrue < GuiConst_DISPLAY_WIDTH / 2)
+      I = 2;
+    else
+      I = 3;
+  }
+
+  sgl.TouchAdjustInUse[I] = 1;
+
+  sgl.TouchAdjustXTrue[I] = XTrue;
+  sgl.TouchAdjustYTrue[I] = YTrue;
+  sgl.TouchAdjustXMeasured[I] = XMeasured;
+  sgl.TouchAdjustYMeasured[I] = YMeasured;
+
+  if (sgl.TouchAdjustInUse[0] && sgl.TouchAdjustInUse[3])
+  {
+    sgl.TouchAdjustActive = 1;
+    if (!sgl.TouchAdjustInUse[1])
+    {
+      sgl.TouchAdjustInUse[1] = 1;
+      sgl.TouchAdjustXTrue[1] = sgl.TouchAdjustXTrue[3];
+      sgl.TouchAdjustYTrue[1] = sgl.TouchAdjustYTrue[0];
+      sgl.TouchAdjustXMeasured[1] = sgl.TouchAdjustXMeasured[3];
+      sgl.TouchAdjustYMeasured[1] = sgl.TouchAdjustYMeasured[0];
+    }
+    if (!sgl.TouchAdjustInUse[2])
+    {
+      sgl.TouchAdjustInUse[2] = 1;
+      sgl.TouchAdjustXTrue[2] = sgl.TouchAdjustXTrue[0];
+      sgl.TouchAdjustYTrue[2] = sgl.TouchAdjustYTrue[3];
+      sgl.TouchAdjustXMeasured[2] = sgl.TouchAdjustXMeasured[0];
+      sgl.TouchAdjustYMeasured[2] = sgl.TouchAdjustYMeasured[3];
+    }
+  }
+  else if (sgl.TouchAdjustInUse[1] && sgl.TouchAdjustInUse[2])
+  {
+    sgl.TouchAdjustActive = 1;
+    if (!sgl.TouchAdjustInUse[0])
+    {
+      sgl.TouchAdjustInUse[0] = 1;
+      sgl.TouchAdjustXTrue[0] = sgl.TouchAdjustXTrue[2];
+      sgl.TouchAdjustYTrue[0] = sgl.TouchAdjustYTrue[1];
+      sgl.TouchAdjustXMeasured[0] = sgl.TouchAdjustXMeasured[2];
+      sgl.TouchAdjustYMeasured[0] = sgl.TouchAdjustYMeasured[1];
+    }
+    if (!sgl.TouchAdjustInUse[3])
+    {
+      sgl.TouchAdjustInUse[3] = 1;
+      sgl.TouchAdjustXTrue[3] = sgl.TouchAdjustXTrue[1];
+      sgl.TouchAdjustYTrue[3] = sgl.TouchAdjustYTrue[2];
+      sgl.TouchAdjustXMeasured[3] = sgl.TouchAdjustXMeasured[1];
+      sgl.TouchAdjustYMeasured[3] = sgl.TouchAdjustYMeasured[2];
+    }
+  }
+
+  if (sgl.TouchAdjustActive)
+  {
+    XTL = (10 * sgl.TouchAdjustXMeasured[1]) - ((10 * sgl.TouchAdjustXTrue[1] *
+       (sgl.TouchAdjustXMeasured[1] - sgl.TouchAdjustXMeasured[0])) /
+       (sgl.TouchAdjustXTrue[1] - sgl.TouchAdjustXTrue[0]));
+    XTR = (10 * sgl.TouchAdjustXMeasured[0]) +
+       ((10 * (GuiConst_DISPLAY_WIDTH - sgl.TouchAdjustXTrue[0]) *
+       (sgl.TouchAdjustXMeasured[1] - sgl.TouchAdjustXMeasured[0])) /
+       (sgl.TouchAdjustXTrue[1] - sgl.TouchAdjustXTrue[0]));
+    XBL = (10 * sgl.TouchAdjustXMeasured[3]) - ((10 * sgl.TouchAdjustXTrue[3] *
+       (sgl.TouchAdjustXMeasured[3] - sgl.TouchAdjustXMeasured[2])) /
+       (sgl.TouchAdjustXTrue[3] - sgl.TouchAdjustXTrue[2]));
+    XBR = (10 * sgl.TouchAdjustXMeasured[2]) +
+       ((10 * (GuiConst_DISPLAY_WIDTH - sgl.TouchAdjustXTrue[2]) *
+       (sgl.TouchAdjustXMeasured[3] - sgl.TouchAdjustXMeasured[2])) /
+       (sgl.TouchAdjustXTrue[3] - sgl.TouchAdjustXTrue[2]));
+
+    YT = 5 * (sgl.TouchAdjustYTrue[0] + sgl.TouchAdjustYTrue[1]);
+    YB = 5 * (sgl.TouchAdjustYTrue[2] + sgl.TouchAdjustYTrue[3]);
+
+    sgl.TouchAdjustXTL = XBL - (YB * (XBL - XTL) / (YB - YT));
+    sgl.TouchAdjustXBL =
+       XTL + (((10 * GuiConst_DISPLAY_HEIGHT) - YT) * (XBL - XTL) / (YB - YT));
+    sgl.TouchAdjustXTR = XBR - (YB * (XBR - XTR) / (YB - YT));
+    sgl.TouchAdjustXBR =
+       XTR + (((10 * GuiConst_DISPLAY_HEIGHT) - YT) * (XBR - XTR) / (YB - YT));
+
+    YTL = (10 * sgl.TouchAdjustYMeasured[2]) - ((10 * sgl.TouchAdjustYTrue[2] *
+       (sgl.TouchAdjustYMeasured[2] - sgl.TouchAdjustYMeasured[0])) /
+       (sgl.TouchAdjustYTrue[2] - sgl.TouchAdjustYTrue[0]));
+    YBL = (10 * sgl.TouchAdjustYMeasured[0]) +
+       ((10 * (GuiConst_DISPLAY_HEIGHT - sgl.TouchAdjustYTrue[0]) *
+       (sgl.TouchAdjustYMeasured[2] - sgl.TouchAdjustYMeasured[0])) /
+       (sgl.TouchAdjustYTrue[2] - sgl.TouchAdjustYTrue[0]));
+    YTR = (10 * sgl.TouchAdjustYMeasured[3]) - ((10 * sgl.TouchAdjustYTrue[3] *
+       (sgl.TouchAdjustYMeasured[3] - sgl.TouchAdjustYMeasured[1])) /
+       (sgl.TouchAdjustYTrue[3] - sgl.TouchAdjustYTrue[1]));
+    YBR = (10 * sgl.TouchAdjustYMeasured[1]) +
+       ((10 * (GuiConst_DISPLAY_HEIGHT - sgl.TouchAdjustYTrue[1]) *
+       (sgl.TouchAdjustYMeasured[3] - sgl.TouchAdjustYMeasured[1])) /
+       (sgl.TouchAdjustYTrue[3] - sgl.TouchAdjustYTrue[1]));
+
+    XL = 5 * (sgl.TouchAdjustXTrue[0] + sgl.TouchAdjustXTrue[2]);
+    XR = 5 * (sgl.TouchAdjustXTrue[1] + sgl.TouchAdjustXTrue[3]);
+
+    sgl.TouchAdjustYTL = YTR - (XR * (YTR - YTL) / (XR - XL));
+    sgl.TouchAdjustYTR =
+       YTL + (((10 * GuiConst_DISPLAY_WIDTH) - XL) * (YTR - YTL) / (XR - XL));
+    sgl.TouchAdjustYBL = YBR - (XR * (YBR - YBL) / (XR - XL));
+    sgl.TouchAdjustYBR =
+       YBL + (((10 * GuiConst_DISPLAY_WIDTH) - XL) * (YBR - YBL) / (XR - XL));
+  }
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+#endif // GuiConst_ITEM_TOUCHAREA_INUSE
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+static void ScrollBox_ShowLineStruct(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U StructToCallIndex,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT8U ColorInvert)
+{
+  GuiLib_StructPtr StructToCall;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiConst_INT16S RemClippingX1, RemClippingY1, RemClippingX2, RemClippingY2;
+#endif //GuiConst_CLIPPING_SUPPORT_ON
+
+  if (StructToCallIndex != 0xFFFF)
+  {
+    sgl.DisplayLevel++;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    RemClippingX1 = sgl.CurItem.ClipRectX1;
+    RemClippingY1 = sgl.CurItem.ClipRectY1;
+    RemClippingX2 = sgl.CurItem.ClipRectX2;
+    RemClippingY2 = sgl.CurItem.ClipRectY2;
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+    memcpy(&sgl.CurItem, &sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxItem,
+       sizeof(GuiLib_ItemRec));
+    sgl.CurItem.RX = X;
+    sgl.CurItem.RY = Y;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    sgl.CurItem.ClipRectX1 = RemClippingX1;
+    sgl.CurItem.ClipRectY1 = RemClippingY1;
+    sgl.CurItem.ClipRectX2 = RemClippingX2;
+    sgl.CurItem.ClipRectY2 = RemClippingY2;
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+    StructToCall = (GuiLib_StructPtr)
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+       GetRemoteStructData(StructToCallIndex);
+#else // GuiConst_REMOTE_STRUCT_DATA
+       (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[StructToCallIndex]);
+#endif // GuiConst_REMOTE_STRUCT_DATA
+
+    if (ColorInvert == GuiLib_COL_INVERT_ON)
+    {
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].ContainsCursorFields)
+        ColorInvert = GuiLib_COL_INVERT_IF_CURSOR;
+#endif // GuiConst_CURSOR_SUPPORT_ON
+    }
+    else
+    {
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+      UpdateBackgroundBitmap();
+#endif
+    }
+
+    DrawStructure(StructToCall, ColorInvert);
+    ResetLayerBufPtr();
+    sgl.DisplayLevel--;
+  }
+}
+
+//------------------------------------------------------------------------------
+static void ScrollBox_ShowLineBlock(
+   GuiConst_INTCOLOR Color,
+   GuiConst_INT8U Transparent,
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  if (!Transparent)
+    GuiLib_FillBox(X1, Y1, X2, Y2, Color);
+}
+
+//------------------------------------------------------------------------------
+static void ScrollBox_ShowBarBlock(
+   GuiConst_INTCOLOR ForeColor,
+   GuiConst_INTCOLOR BackColor,
+   GuiConst_INT8U Thickness,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S SizeX,
+   GuiConst_INT16S SizeY)
+{
+  GuiConst_INT8U T;
+  GuiConst_INT16S BX1, BY1, BX2, BY2;
+
+  if (Thickness > 0)
+    for (T = 0; T < Thickness; T++)
+    {
+      BX1 = X + T;
+      BY1 = Y + T;
+      BX2 = X + SizeX - 1 - T;
+      BY2 = Y + SizeY - 1 - T;
+      GuiLib_Box(BX1, BY1, BX2, BY2, ForeColor);
+    }
+  BX1 = X + Thickness;
+  BY1 = Y + Thickness;
+  BX2 = X + SizeX - 1 - Thickness;
+  BY2 = Y + SizeY - 1 - Thickness;
+  GuiLib_FillBox(BX1, BY1, BX2, BY2, BackColor);
+}
+
+//------------------------------------------------------------------------------
+static void ScrollBox_SetTopLine(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+    GuiConst_INT16U LowerLimtA=0;
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0)
+  {
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+       sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] -
+       sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+    GuiLib_LIMIT_MINMAX(sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine,
+       LowerLimtA, sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+       sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines);
+  }
+  else
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+       sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] -
+       sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+}
+
+//------------------------------------------------------------------------------
+static void ScrollBox_DrawScrollLine(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16S LineNdx)
+{
+  GuiConst_INT16U N;
+  GuiConst_INT16S SX1, SY1;
+  GuiConst_INT16S X1, Y1, X2, Y2;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiConst_INT16S RemClippingX1, RemClippingY1, RemClippingX2, RemClippingY2;
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+  if ((LineNdx < sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine) ||
+      (LineNdx >= sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine +
+                  sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines))
+    return;
+
+  X1 = sgl.ScrollBoxesAry[ScrollBoxIndex].X1 +
+       sgl.ScrollBoxesAry[ScrollBoxIndex].LineOffsetX;
+  Y1 = sgl.ScrollBoxesAry[ScrollBoxIndex].Y1 +
+       sgl.ScrollBoxesAry[ScrollBoxIndex].LineOffsetY +
+       (LineNdx - sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine) *
+       sgl.ScrollBoxesAry[ScrollBoxIndex].LineVerticalOffset;
+  X2 = X1 + sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeX - 1;
+  Y2 = Y1 + sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeY - 1;
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  RemClippingX1 = sgl.CurItem.ClipRectX1;
+  RemClippingY1 = sgl.CurItem.ClipRectY1;
+  RemClippingX2 = sgl.CurItem.ClipRectX2;
+  RemClippingY2 = sgl.CurItem.ClipRectY2;
+  GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX1, X1, X2);
+  GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY1, Y1, Y2);
+  GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX2, X1, X2);
+  GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY2, Y1, Y2);
+  GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                     sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+  if ((LineNdx >= 0) &&
+      (LineNdx < sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines))
+  {
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollLineDataFunc(LineNdx);
+
+    SX1 = X1 + sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructOffsetX;
+    SY1 = Y1 + sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructOffsetY;
+    for (N = 0; N <= GuiConst_SCROLLITEM_MARKERS_MAX; N++)
+    {
+      if (N < GuiConst_SCROLLITEM_MARKERS_MAX)
+      {
+        if ((sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[N] >= 0) &&
+            (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerSize[N] >= 1))
+        {
+          if ((LineNdx >= sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[N]) &&
+              (LineNdx <= (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[N] +
+               sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerSize[N] - 1)))
+          {
+            ScrollBox_ShowLineBlock(
+               sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[N],
+               sgl.ScrollBoxesAry[ScrollBoxIndex].
+               MarkerColorTransparent[N], X1, Y1, X2, Y2);
+            switch (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerDrawingOrder[N])
+            {
+              case 0:
+                ScrollBox_ShowLineStruct(ScrollBoxIndex,
+                   sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructIndex, SX1, SY1,
+                   GuiLib_COL_INVERT_ON);
+                if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStructIndex[N] !=
+                    0xFFFF)
+                  ScrollBox_ShowLineStruct(ScrollBoxIndex,
+                     sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStructIndex[N],
+                     SX1, SY1, GuiLib_COL_INVERT_ON);
+                break;
+
+              case 1:
+                if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStructIndex[N] !=
+                    0xFFFF)
+                  ScrollBox_ShowLineStruct(ScrollBoxIndex,
+                     sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStructIndex[N],
+                     SX1, SY1, GuiLib_COL_INVERT_ON);
+                ScrollBox_ShowLineStruct(ScrollBoxIndex,
+                   sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructIndex, SX1, SY1,
+                   GuiLib_COL_INVERT_ON);
+                break;
+
+              case 2:
+                ScrollBox_ShowLineStruct(ScrollBoxIndex,
+                   sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructIndex, SX1, SY1,
+                   GuiLib_COL_INVERT_ON);
+                break;
+
+              case 3:
+                if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStructIndex[N] !=
+                    0xFFFF)
+                  ScrollBox_ShowLineStruct(ScrollBoxIndex,
+                     sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStructIndex[N],
+                     SX1, SY1, GuiLib_COL_INVERT_ON);
+                break;
+            }
+
+            break;
+          }
+        }
+      }
+      else
+      {
+        ScrollBox_ShowLineBlock(
+           sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor,
+           sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorTransparent,
+           X1, Y1, X2, Y2);
+        ScrollBox_ShowLineStruct(ScrollBoxIndex,
+           sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructIndex, SX1, SY1,
+           GuiLib_COL_INVERT_OFF);
+      }
+    }
+  }
+  else
+    ScrollBox_ShowLineBlock(sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor,
+       sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorTransparent,
+       X1, Y1, X2, Y2);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  sgl.CurItem.ClipRectX1 = RemClippingX1;
+  sgl.CurItem.ClipRectY1 = RemClippingY1;
+  sgl.CurItem.ClipRectX2 = RemClippingX2;
+  sgl.CurItem.ClipRectY2 = RemClippingY2;
+  GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                     sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_Init(
+   GuiConst_INT8U ScrollBoxIndex,
+   void (*DataFuncPtr) (GuiConst_INT16S LineIndex),
+   GuiConst_INT16S NoOfLines,
+   GuiConst_INT16S ActiveLine)
+{
+  GuiConst_INT16U StructToCallIndex;
+  GuiLib_StructPtr StructToCall;
+  GuiLib_ItemRec RemCurItem;
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  GuiConst_INT8U RemCursorInUse;
+#endif // GuiConst_CURSOR_SUPPORT_ON
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_READ) ||
+      (ActiveLine >= NoOfLines))
+    return (0);
+
+  memcpy(&RemCurItem, &sgl.CurItem, sizeof(GuiLib_ItemRec));
+
+  sgl.GlobalScrollBoxIndex = ScrollBoxIndex;
+
+  memcpy(&sgl.CurItem, &sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxItem,
+     sizeof(GuiLib_ItemRec));
+  StructToCallIndex = sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructIndex;
+  if (StructToCallIndex != 0xFFFF)
+  {
+    sgl.DisplayLevel++;
+    StructToCall = (GuiLib_StructPtr)
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+       GetRemoteStructData(StructToCallIndex);
+#else
+       (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[StructToCallIndex]);
+#endif
+    sgl.NextScrollLineReading = 1;
+    sgl.InitialDrawing = 1;
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+    RemCursorInUse = sgl.CursorInUse;
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ContainsCursorFields = 0;
+    sgl.CursorInUse = (GuiLib_ActiveCursorFieldNo >= 0);
+    sgl.CursorFieldFound = -1;
+    sgl.CursorActiveFieldFound = 0;
+#endif // GuiConst_CURSOR_SUPPORT_ON
+    DrawStructure(StructToCall, GuiLib_COL_INVERT_OFF);
+    ResetLayerBufPtr();
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+    sgl.InitialDrawing = 0;
+    if (sgl.CursorFieldFound == -1)
+    {
+      sgl.CursorInUse = 0;
+      GuiLib_ActiveCursorFieldNo = -1;
+    }
+    else
+    {
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ContainsCursorFields = 1;
+      if (sgl.CursorActiveFieldFound == 0)
+      {
+        GuiLib_ActiveCursorFieldNo = sgl.CursorFieldFound;
+
+        DrawCursorItem(1);
+      }
+    }
+    sgl.CursorInUse = sgl.CursorInUse | RemCursorInUse;
+#endif // GuiConst_CURSOR_SUPPORT_ON
+    sgl.NextScrollLineReading = 0;
+    sgl.DisplayLevel--;
+  }
+
+  SetCurFont(sgl.CurItem.TextPar[0].FontIndex);
+  if ((sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeY == 0) &&
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeY2 == 0))
+  {
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeY = sgl.CurFont->BaseLine;
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeY2 =
+       sgl.CurFont->YSize - sgl.CurFont->BaseLine - 1;
+  }
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiLib_SetClipping(sgl.CurItem.ClipRectX1,sgl.CurItem.ClipRectY1,
+                     sgl.CurItem.ClipRectX2,sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+  StructToCallIndex = sgl.ScrollBoxesAry[ScrollBoxIndex].MakeUpStructIndex;
+  if (StructToCallIndex != 0xFFFF)
+  {
+    sgl.DisplayLevel++;
+    memcpy(&sgl.CurItem, &sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxItem,
+       sizeof(GuiLib_ItemRec));
+    sgl.CurItem.RX = sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].X1;
+    sgl.CurItem.RY = sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].Y1;
+    StructToCall = (GuiLib_StructPtr)
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+       GetRemoteStructData(StructToCallIndex);
+#else
+       (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[StructToCallIndex]);
+#endif
+    DrawStructure(StructToCall,GuiLib_COL_INVERT_OFF);
+    ResetLayerBufPtr();
+    sgl.DisplayLevel--;
+  }
+
+  sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollLineDataFunc = DataFuncPtr;
+  sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] = ActiveLine;
+  sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine = ActiveLine;
+  sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines = NoOfLines;
+  if ((sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0) &&
+      (NoOfLines < sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines))
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines = NoOfLines;
+  sgl.ScrollBoxesAry[ScrollBoxIndex].InUse = GuiLib_SCROLL_STRUCTURE_USED;
+  ScrollBox_SetTopLine(ScrollBoxIndex);
+  GuiLib_ScrollBox_Redraw(ScrollBoxIndex);
+  sgl.ScrollBoxesAry[ScrollBoxIndex].LastScrollTopLine = 0xFFFF;
+
+  memcpy(&sgl.CurItem, &RemCurItem, sizeof(GuiLib_ItemRec));
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_Redraw(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+  GuiConst_INT16S N, ScrollStartLine, ScrollStopLine;
+  GuiLib_ItemRec RemCurItem;
+#ifndef GuiConst_SCROLLITEM_BAR_NONE
+#define GuiLib_SCROLL_REDRAW_VAR
+#else
+#ifndef GuiConst_SCROLLITEM_INDICATOR_NONE
+#define GuiLib_SCROLL_REDRAW_VAR
+#endif
+#endif
+#ifdef GuiLib_SCROLL_REDRAW_VAR
+  GuiLib_StructPtr StructToCall;
+  GuiConst_INT16U StructToCallIndex;
+  GuiConst_INT16S SX1, SY1;
+  GuiConst_INT16S X1, Y1;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiConst_INT16S SX2, SY2;
+  GuiConst_INT16S X2, Y2;
+  GuiConst_INT16S RemClippingX1, RemClippingY1, RemClippingX2, RemClippingY2;
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+#endif // GuiLib_SCROLL_REDRAW_VAR
+#ifndef GuiConst_SCROLLITEM_BAR_NONE
+  GuiConst_INT16S BarMarkerY;
+  GuiConst_INT16S BarMarkerHeight;
+  GuiConst_INT16S BarMarkerMovementDY;
+  GuiConst_INT32S N1, N2;
+#endif // GuiConst_SCROLLITEM_BAR_NONE
+  GuiConst_INT32S BackColor;
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED))
+    return (0);
+
+  memcpy(&RemCurItem, &sgl.CurItem, sizeof(GuiLib_ItemRec));
+
+  sgl.GlobalScrollBoxIndex = ScrollBoxIndex;
+
+  ScrollStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+  ScrollStopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine +
+     sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines - 1;
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].LastScrollTopLine ==
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine)
+  {
+    if ((sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine == -1) ||
+        (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] == -1))
+    {
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine !=
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0])
+      {
+        if (sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine == -1)
+        {
+          ScrollStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+          ScrollStopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+        }
+        else
+        {
+          ScrollStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine;
+          ScrollStopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine;
+        }
+      }
+    }
+    else if (sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine <
+             sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0])
+    {
+      ScrollStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine;
+      if (ScrollStartLine < sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine)
+        ScrollStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+      ScrollStopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+    }
+    else if (sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine >
+             sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0])
+    {
+      ScrollStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+      ScrollStopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine;
+      GuiLib_LIMIT_MAX(ScrollStartLine,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine +
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines - 1);
+    }
+  }
+
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollLineDataFunc != 0)
+    for (N = ScrollStartLine; N <= ScrollStopLine; N++)
+      ScrollBox_DrawScrollLine(ScrollBoxIndex, N);
+
+  sgl.ScrollBoxesAry[ScrollBoxIndex].LastScrollTopLine =
+     sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+  sgl.ScrollBoxesAry[ScrollBoxIndex].LastMarkerLine =
+     sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+
+#ifndef GuiConst_SCROLLITEM_BAR_NONE
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].BarType != GuiLib_MARKER_NONE)
+  {
+    SX1 = sgl.ScrollBoxesAry[ScrollBoxIndex].BarPositionX;
+    SY1 = sgl.ScrollBoxesAry[ScrollBoxIndex].BarPositionY;
+    X1 = SX1 + sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerLeftOffset;
+    Y1 = SY1 + sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerTopOffset;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    SX2 = SX1 + sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeX - 1;
+    SY2 = SY1 + sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeY - 1;
+    X2 = SX2 - sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerRightOffset;
+    Y2 = SY2 - sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBottomOffset;
+    RemClippingX1 = sgl.CurItem.ClipRectX1;
+    RemClippingY1 = sgl.CurItem.ClipRectY1;
+    RemClippingX2 = sgl.CurItem.ClipRectX2;
+    RemClippingY2 = sgl.CurItem.ClipRectY2;
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX1, SX1, SX2);
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY1, SY1, SY2);
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX2, SX1, SX2);
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY2, SY1, SY2);
+    GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                       sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+    StructToCallIndex = sgl.ScrollBoxesAry[ScrollBoxIndex].BarStructIndex;
+    if (StructToCallIndex != 0xFFFF)
+    {
+      ScrollBox_ShowBarBlock(
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor,
+         0,
+         SX1,
+         SY1,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeX,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeY);
+
+      sgl.DisplayLevel++;
+      memcpy(&sgl.CurItem,
+             &sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxItem,
+             sizeof(GuiLib_ItemRec));
+      sgl.CurItem.RX = SX1;
+      sgl.CurItem.RY = SY1;
+      StructToCall = (GuiLib_StructPtr)
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+         GetRemoteStructData(StructToCallIndex);
+#else
+         (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[StructToCallIndex]);
+#endif
+      DrawStructure(StructToCall, GuiLib_COL_INVERT_OFF);
+      ResetLayerBufPtr();
+      sgl.DisplayLevel--;
+    }
+    else
+      ScrollBox_ShowBarBlock(
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarThickness,
+         SX1,
+         SY1,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeX,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeY);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    sgl.CurItem.ClipRectX1 = RemClippingX1;
+    sgl.CurItem.ClipRectY1 = RemClippingY1;
+    sgl.CurItem.ClipRectX2 = RemClippingX2;
+    sgl.CurItem.ClipRectY2 = RemClippingY2;
+    GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                       sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines >
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines)
+    {
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      RemClippingX1 = sgl.CurItem.ClipRectX1;
+      RemClippingY1 = sgl.CurItem.ClipRectY1;
+      RemClippingX2 = sgl.CurItem.ClipRectX2;
+      RemClippingY2 = sgl.CurItem.ClipRectY2;
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX1, X1, X2);
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY1, Y1, Y2);
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX2, X1, X2);
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY2, Y1, Y2);
+      GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                         sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+      BarMarkerHeight = 0;
+      BarMarkerMovementDY = sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeY -
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBottomOffset -
+         sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerTopOffset;
+
+      switch (sgl.ScrollBoxesAry[ScrollBoxIndex].BarType)
+      {
+        case GuiLib_MARKER_ICON:
+          sgl.CurFont = (GuiLib_FontRecPtr)ReadWord(GuiFont_FontList[
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerIconFont]);
+          BarMarkerHeight = sgl.CurFont->YSize;
+          break;
+
+        case GuiLib_MARKER_BITMAP:
+          BarMarkerHeight =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapHeight;
+          break;
+
+        case GuiLib_MARKER_FIXED_BLOCK:
+          BarMarkerHeight =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeX -
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerLeftOffset -
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerRightOffset;
+          break;
+
+        case GuiLib_MARKER_VARIABLE_BLOCK:
+          BarMarkerHeight =
+             (((10 * BarMarkerMovementDY *
+             sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines) + 5) /
+             sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines) / 10;
+          GuiLib_LIMIT_MIN(BarMarkerHeight, 4);
+          break;
+      }
+
+      N1 = sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines;
+      N2 = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+      GuiLib_LIMIT_MINMAX(N2, 0, N1);
+      BarMarkerY = (((10 * (BarMarkerMovementDY - BarMarkerHeight) *
+         N2) + 5) / N1) / 10;
+
+      switch (sgl.ScrollBoxesAry[ScrollBoxIndex].BarType)
+      {
+        case GuiLib_MARKER_ICON:
+          sgl.CurItem.X1 = X1 + sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerIconOffsetX;
+          sgl.CurItem.Y1 = Y1 + BarMarkerY +
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerIconOffsetY +
+             sgl.CurFont->BaseLine;
+          sgl.CurItem.TextPar[0].FontIndex =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerIconFont;
+          sgl.CurItem.TextPar[0].Alignment = GuiLib_ALIGN_LEFT;
+          sgl.CurItem.TextPar[0].Ps = GuiLib_PS_OFF;
+          sgl.CurItem.TextPar[0].BitFlags = 0;
+          sgl.CurItem.TextPar[0].BackBoxSizeX = 0;
+          sgl.CurItem.TextPar[0].BackBorderPixels = 0;
+          DrawText(sgl.ScrollBoxesAry[ScrollBoxIndex].BarIconPtr, 1, 0,
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor,
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor,
+             sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerTransparent);
+          break;
+
+        case GuiLib_MARKER_BITMAP:
+          if (sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIsTransparent)
+            BackColor =
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapTranspColor;
+          else
+            BackColor = -1;
+          GuiLib_ShowBitmap(sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIndex,
+             X1, Y1 + BarMarkerY, BackColor);
+          break;
+
+        case GuiLib_MARKER_FIXED_BLOCK:
+        case GuiLib_MARKER_VARIABLE_BLOCK:
+          if (sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerTransparent)
+            GuiLib_Box(X1, Y1 + BarMarkerY,
+               X1 + sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeX -
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerLeftOffset -
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerRightOffset - 1,
+               Y1 + BarMarkerY + BarMarkerHeight - 1,
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor);
+          else
+            GuiLib_BorderBox(X1, Y1 + BarMarkerY,
+               X1 + sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeX -
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerLeftOffset -
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerRightOffset - 1,
+               Y1 + BarMarkerY + BarMarkerHeight - 1,
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor,
+               sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor);
+          break;
+      }
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      sgl.CurItem.ClipRectX1 = RemClippingX1;
+      sgl.CurItem.ClipRectY1 = RemClippingY1;
+      sgl.CurItem.ClipRectX2 = RemClippingX2;
+      sgl.CurItem.ClipRectY2 = RemClippingY2;
+      GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                         sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+    }
+  }
+#endif
+
+#ifndef GuiConst_SCROLLITEM_INDICATOR_NONE
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorType != GuiLib_INDICATOR_NONE)
+  {
+    SX1 = sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorPositionX;
+    SY1 = sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorPositionY;
+    X1 = SX1 + sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerLeftOffset;
+    Y1 = SY1 + sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerTopOffset;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    SX2 = SX1 + sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeX - 1;
+    SY2 = SY1 + sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeY - 1;
+    X2 = SX2 - sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerRightOffset;
+    Y2 = SY2 - sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBottomOffset;
+    RemClippingX1 = sgl.CurItem.ClipRectX1;
+    RemClippingY1 = sgl.CurItem.ClipRectY1;
+    RemClippingX2 = sgl.CurItem.ClipRectX2;
+    RemClippingY2 = sgl.CurItem.ClipRectY2;
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX1, SX1, SX2);
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY1, SY1, SY2);
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX2, SX1, SX2);
+    GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY2, SY1, SY2);
+    GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                       sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+    StructToCallIndex = sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorStructIndex;
+    if (StructToCallIndex != 0xFFFF)
+    {
+      ScrollBox_ShowBarBlock(
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor,
+         0,
+         SX1,
+         SY1,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeX,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeY);
+
+      sgl.DisplayLevel++;
+      memcpy(&sgl.CurItem,
+             &sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxItem,
+             sizeof(GuiLib_ItemRec));
+      sgl.CurItem.RX = SX1;
+      sgl.CurItem.RY = SY1;
+      StructToCall = (GuiLib_StructPtr)
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+         GetRemoteStructData(StructToCallIndex);
+#else
+         (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[StructToCallIndex]);
+#endif
+      DrawStructure(StructToCall, GuiLib_COL_INVERT_OFF);
+      ResetLayerBufPtr();
+      sgl.DisplayLevel--;
+    }
+    else
+      ScrollBox_ShowBarBlock(
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorThickness,
+         SX1,
+         SY1,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeX,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeY);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    sgl.CurItem.ClipRectX1 = RemClippingX1;
+    sgl.CurItem.ClipRectY1 = RemClippingY1;
+    sgl.CurItem.ClipRectX2 = RemClippingX2;
+    sgl.CurItem.ClipRectY2 = RemClippingY2;
+    GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                       sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+    if ((sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorLine >= 0) &&
+        (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorLine >=
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine) &&
+        (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorLine <
+        (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine +
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines)))
+    {
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX1, X1, X2);
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY1, Y1, Y2);
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectX2, X1, X2);
+      GuiLib_LIMIT_MINMAX(sgl.CurItem.ClipRectY2, Y1, Y2);
+      GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                         sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+      switch (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorType)
+      {
+        case GuiLib_MARKER_ICON:
+          sgl.CurFont = (GuiLib_FontRecPtr)ReadWord(GuiFont_FontList[
+             sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerIconFont]);
+          sgl.CurItem.X1 =
+             X1 + sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerIconOffsetX;
+          sgl.CurItem.Y1 =
+             Y1 + sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerIconOffsetY +
+             sgl.CurFont->BaseLine +
+             sgl.ScrollBoxesAry[ScrollBoxIndex].LineVerticalOffset *
+             (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorLine -
+             sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine);
+          sgl.CurItem.TextPar[0].FontIndex =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerIconFont;
+          sgl.CurItem.TextPar[0].Alignment = GuiLib_ALIGN_LEFT;
+          sgl.CurItem.TextPar[0].Ps = GuiLib_PS_OFF;
+          sgl.CurItem.TextPar[0].BitFlags = 0;
+          sgl.CurItem.TextPar[0].BackBoxSizeX = 0;
+          sgl.CurItem.TextPar[0].BackBorderPixels = 0;
+          DrawText(sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorIconPtr, 1, 0,
+                   sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor,
+                   sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor,
+                   sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerTransparent);
+          break;
+
+        case GuiLib_MARKER_BITMAP:
+          if (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapIsTransparent)
+            BackColor =
+               sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapTranspColor;
+          else
+            BackColor = -1;
+          GuiLib_ShowBitmap(
+             sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapIndex,
+             X1, Y1 + sgl.ScrollBoxesAry[ScrollBoxIndex].LineVerticalOffset *
+             (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorLine -
+             sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine), BackColor);
+          break;
+      }
+    }
+  }
+#endif // GuiConst_SCROLLITEM_INDICATOR_NONE
+
+  memcpy(&sgl.CurItem, &RemCurItem, sizeof(GuiLib_ItemRec));
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_RedrawLine(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLine)
+{
+  GuiLib_ItemRec RemCurItem;
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED) ||
+      (ScrollLine > (sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1)) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollLineDataFunc == 0))
+    return (0);
+
+  memcpy(&RemCurItem, &sgl.CurItem, sizeof(GuiLib_ItemRec));
+  sgl.GlobalScrollBoxIndex = ScrollBoxIndex;
+
+  ScrollBox_DrawScrollLine(ScrollBoxIndex, ScrollLine);
+
+  memcpy(&sgl.CurItem, &RemCurItem, sizeof(GuiLib_ItemRec));
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_Close(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED))
+    return (0);
+
+  sgl.ScrollBoxesAry[ScrollBoxIndex].InUse = GuiLib_SCROLL_STRUCTURE_READ;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_Down(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+  GuiConst_INT16U ScrollBottomLine;
+  GuiConst_INT16S RemScrollTopLine;
+  GuiConst_INT16S RemMarkerStartLine;
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED))
+    return (0);
+
+  RemScrollTopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+  RemMarkerStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+
+  ScrollBottomLine = (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine +
+     sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines - 1);
+
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxType)
+  {
+    if (ScrollBottomLine >= (sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1))
+    {
+      if ((sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 1)
+#ifdef GuiConst_SCROLL_MODE_WRAP_AROUND
+         || (sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 2)
+#endif
+                                                        )
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = 0;
+    }
+    else
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine++;
+  }
+  else if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] >= 0)
+  {
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0)
+    {
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] ==
+         (sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1))
+      {
+        if ((sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 1)
+#ifdef GuiConst_SCROLL_MODE_WRAP_AROUND
+           || (sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 2)
+#endif
+                                                          )
+        {
+          sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = 0;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] = 0;
+        }
+      }
+      else if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] <
+         ScrollBottomLine - sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs)
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0]++;
+      else
+      {
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine++;
+        GuiLib_LIMIT_MAX(sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine,
+           sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+           sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines);
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0]++;
+      }
+    }
+    else
+    {
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] ==
+         (sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1))
+      {
+        if ((sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 1)
+#ifdef GuiConst_SCROLL_MODE_WRAP_AROUND
+           || (sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 2)
+#endif
+                                                          )
+        {
+          sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+             -sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] = 0;
+        }
+      }
+      else
+      {
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine++;
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0]++;
+      }
+    }
+  }
+
+  if ((sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine != RemScrollTopLine) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] != RemMarkerStartLine))
+  {
+    GuiLib_ScrollBox_Redraw(ScrollBoxIndex);
+    return (1);
+  }
+  else
+    return (0);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_Up(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+  GuiConst_INT16S RemScrollTopLine;
+  GuiConst_INT16S RemMarkerStartLine;
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED))
+    return (0);
+
+  RemScrollTopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+  RemMarkerStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxType)
+  {
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine == 0)
+    {
+      if ((sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 1)
+#ifdef GuiConst_SCROLL_MODE_WRAP_AROUND
+         || (sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 2)
+#endif
+                                                        )
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+           sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+           sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines;
+        GuiLib_LIMIT_MIN(sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine, 0);
+    }
+    else
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine--;
+  }
+  else if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] >= 0)
+  {
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0)
+    {
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] == 0)
+      {
+        if ((sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 1)
+#ifdef GuiConst_SCROLL_MODE_WRAP_AROUND
+           || (sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 2)
+#endif
+                                                          )
+        {
+          sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+             sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines;
+          GuiLib_LIMIT_MIN(sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine, 0);
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1;
+        }
+      }
+      else if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] >
+               sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine +
+               sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs)
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0]--;
+      else
+      {
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine--;
+        GuiLib_LIMIT_MIN(sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine, 0);
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0]--;
+      }
+    }
+    else
+    {
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] == 0)
+      {
+        if ((sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 1)
+#ifdef GuiConst_SCROLL_MODE_WRAP_AROUND
+           || (sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode == 2)
+#endif
+                                                          )
+        {
+          sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1 -
+             sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] =
+             sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1;
+        }
+      }
+      else
+      {
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine--;
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0]--;
+      }
+    }
+  }
+
+  if ((sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine != RemScrollTopLine) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] != RemMarkerStartLine))
+  {
+    GuiLib_ScrollBox_Redraw(ScrollBoxIndex);
+    return (1);
+  }
+  else
+    return (0);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_Home(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+  GuiConst_INT16S RemScrollTopLine;
+  GuiConst_INT16S RemMarkerStartLine;
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED))
+    return (0);
+
+  RemScrollTopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+  RemMarkerStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxType)
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = 0;
+  else
+  {
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0)
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = 0;
+    else
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+         -sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] >= 0)
+      sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] = 0;
+  }
+
+  if ((sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine != RemScrollTopLine) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] != RemMarkerStartLine))
+  {
+    GuiLib_ScrollBox_Redraw(ScrollBoxIndex);
+    return (1);
+  }
+  else
+    return (0);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_End(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+  GuiConst_INT16S RemScrollTopLine;
+  GuiConst_INT16S RemMarkerStartLine;
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED))
+    return (0);
+
+  RemScrollTopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+  RemMarkerStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxType)
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = GuiLib_GET_MAX(
+       sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+       sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines, 0);
+  else
+  {
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0)
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = GuiLib_GET_MAX(
+         sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines, 0);
+    else
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+         sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1 -
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] >= 0)
+      sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] =
+         sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1;
+  }
+
+  if ((sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine != RemScrollTopLine) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] != RemMarkerStartLine))
+  {
+    GuiLib_ScrollBox_Redraw(ScrollBoxIndex);
+    return (1);
+  }
+  else
+    return (0);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_To_Line(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16S NewLine)
+{
+  GuiConst_INT16S RemScrollTopLine;
+  GuiConst_INT16S RemMarkerStartLine;
+  GuiConst_INT16S TopLine;
+  GuiConst_INT16S LowerLimtA = 0;
+
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED) ||
+      (NewLine >= sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines))
+    return(0);
+
+  RemScrollTopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine;
+  RemMarkerStartLine = sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0];
+
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxType)
+  {
+    TopLine = sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+              sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines;
+    GuiLib_LIMIT_MIN(TopLine, 0);
+    if (NewLine > TopLine)
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = TopLine;
+    else
+      sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine = NewLine;
+  }
+  else if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0)
+  {
+    if ((NewLine != -1) &&
+        ((NewLine < sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine) ||
+        (NewLine >= (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine +
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines))))
+    {
+      if (NewLine > (sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+          sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines +
+          sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs))
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+           sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+           sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines;
+      else
+        sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+           NewLine - sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+
+      GuiLib_LIMIT_MINMAX(sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine,
+         NewLine - sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines + 1,
+         NewLine + sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines - 1);
+      GuiLib_LIMIT_MINMAX(sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine, LowerLimtA,
+         sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+         sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines);
+    }
+  }
+  else
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+       NewLine - sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs;
+  sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] = NewLine;
+
+  if ((sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine != RemScrollTopLine) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[0] != RemMarkerStartLine))
+  {
+    GuiLib_ScrollBox_Redraw(ScrollBoxIndex);
+    return (1);
+  }
+  else
+    return (0);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_SetLineMarker(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLineMarkerIndex,
+   GuiConst_INT16S StartLine,
+   GuiConst_INT16U Size)
+{
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED) ||
+      (ScrollLineMarkerIndex >= GuiConst_SCROLLITEM_MARKERS_MAX) ||
+      (StartLine >= sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines))
+    return (0);
+
+  sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[ScrollLineMarkerIndex] =
+     GuiLib_GET_MINMAX(StartLine, -1,
+     (GuiConst_INT16S)sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1);
+  if ((ScrollLineMarkerIndex == 0) && (Size > 1))
+    Size = 1;
+  sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerSize[ScrollLineMarkerIndex] = Size;
+  if (ScrollLineMarkerIndex == 0)
+    ScrollBox_SetTopLine(ScrollBoxIndex);
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT16S GuiLib_ScrollBox_GetActiveLine(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLineMarkerIndex)
+{
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED) ||
+      (ScrollLineMarkerIndex >= GuiConst_SCROLLITEM_MARKERS_MAX))
+    return (-1);
+
+  return (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[ScrollLineMarkerIndex]);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT16S GuiLib_ScrollBox_GetActiveLineCount(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLineMarkerIndex)
+{
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED) ||
+      (ScrollLineMarkerIndex >= GuiConst_SCROLLITEM_MARKERS_MAX))
+    return (-1);
+
+  return (sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerSize[ScrollLineMarkerIndex]);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_SetIndicator(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16S StartLine)
+{
+#ifdef GuiConst_SCROLLITEM_INDICATOR_NONE
+  gl.Dummy1_8U = ScrollBoxIndex;   // To avoid compiler warning
+  gl.Dummy1_16S = StartLine;   // To avoid compiler warning
+  return (0);
+#else
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED) ||
+      (StartLine >= sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines))
+    return (0);
+
+  sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorLine = GuiLib_GET_MINMAX(
+     StartLine, -1,
+     (GuiConst_INT16S)sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines - 1);
+
+  return (1);
+#endif
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_ScrollBox_SetTopLine(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16S TopLine)
+{
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED) ||
+      (TopLine >= sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines))
+    return (0);
+
+  if (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode == 0)
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine =
+       GuiLib_GET_MINMAX(TopLine, 0,
+       sgl.ScrollBoxesAry[ScrollBoxIndex].NumberOfLines -
+       sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines);
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT16S GuiLib_ScrollBox_GetTopLine(
+   GuiConst_INT8U ScrollBoxIndex)
+{
+  if ((ScrollBoxIndex >= GuiConst_SCROLLITEM_BOXES_MAX) ||
+      (sgl.ScrollBoxesAry[ScrollBoxIndex].InUse != GuiLib_SCROLL_STRUCTURE_USED))
+    return (-1);
+
+  return (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollTopLine);
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+#endif // GuiConst_ITEM_SCROLLBOX_INUSE
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+//------------------------------------------------------------------------------
+static void Graph_SetClipping(
+   GuiConst_INT8U GraphIndex)
+{
+  GuiLib_SetClipping(sgl.GraphAry[GraphIndex].GraphItem.ClipRectX1,
+                     sgl.GraphAry[GraphIndex].GraphItem.ClipRectY1,
+                     sgl.GraphAry[GraphIndex].GraphItem.ClipRectX2,
+                     sgl.GraphAry[GraphIndex].GraphItem.ClipRectY2);
+}
+
+//------------------------------------------------------------------------------
+static void Graph_ResetClipping(void)
+{
+  GuiLib_ResetClipping();
+}
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+//------------------------------------------------------------------------------
+static void Graph_CalcScaleX(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  GuiConst_INT32S D1,D2;
+
+  D1 = (sgl.GraphAry[GraphIndex].GraphItem.X2 -
+       sgl.GraphAry[GraphIndex].GraphItem.X1 -
+       sgl.GraphAry[GraphIndex].OriginOffsetX);
+  D1 = D1 * 10000;
+  D2 = (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].NumbersMaxValue -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].NumbersMinValue);
+  D1 = D1/D2;
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Scale = D1;
+}
+
+//------------------------------------------------------------------------------
+static void Graph_CalcScaleY(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  GuiConst_INT32S D1,D2;
+
+  D1 = (sgl.GraphAry[GraphIndex].GraphItem.Y2 -
+       sgl.GraphAry[GraphIndex].GraphItem.Y1-
+       sgl.GraphAry[GraphIndex].OriginOffsetY);
+  D1 = D1 * 10000;
+  D2 = (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].NumbersMaxValue -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].NumbersMinValue);
+  D1 = D1/D2;
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Scale= D1;
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT32S Graph_CalcNumbersMaxValue(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex,
+   GuiConst_INT8U AxisType)
+{
+  GuiConst_INT32S MV;
+
+  MV = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][AxisType].NumbersMaxValue;
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][AxisType].TicksMinor)
+    MV -= sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][AxisType].NumbersAtEnd *
+          sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][AxisType].NumbersStepMinor;
+  else if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][AxisType].TicksMajor)
+    MV -= sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][AxisType].NumbersAtEnd *
+          sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][AxisType].NumbersStepMajor;
+  return(MV);
+}
+
+//------------------------------------------------------------------------------
+static void Graph_DrawXAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  GuiConst_INT16S X, Y;
+  GuiConst_INT16S DX, DY;
+  GuiConst_INT32S TX, TY;
+  #ifdef GuiConst_FLOAT_SUPPORT_ON
+  double TDX;
+  #endif
+  GuiConst_INT32S F;
+  GuiConst_INT16S HW;
+  GuiConst_INT32S MV;
+  GuiConst_INT16U StrLen;
+  GuiConst_INT16U I;
+  GuiConst_INT8U Align;
+
+  Y = sgl.GraphAry[GraphIndex].OrigoY +
+      sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Offset;
+
+  MV = Graph_CalcNumbersMaxValue(GraphIndex, AxisIndex, GuiLib_GRAPHAXIS_X);
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Line)
+  {
+    X = sgl.GraphAry[GraphIndex].GraphItem.X2 -
+        sgl.GraphAry[GraphIndex].GraphItem.X1 + 1;
+    for (I = 0; I < sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y]; I++)
+      if (sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].Offset < X)
+        X = sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].Offset;
+    X += sgl.GraphAry[GraphIndex].OriginOffsetX;
+    if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+        LineNegative)
+      GuiLib_FillBox(sgl.GraphAry[GraphIndex].GraphItem.X1,
+                     Y,
+                     sgl.GraphAry[GraphIndex].GraphItem.X1 + X - 1,
+                     Y,
+                     sgl.GraphAry[GraphIndex].ForeColor);
+    if ((sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y] > 1) &&
+         sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         LineBetweenAxes)
+      GuiLib_FillBox(sgl.GraphAry[GraphIndex].GraphItem.X1 + X - 1,
+                     Y,
+                     sgl.GraphAry[GraphIndex].GraphItem.X1 +
+                     sgl.GraphAry[GraphIndex].OriginOffsetX,
+                     Y,
+                     sgl.GraphAry[GraphIndex].ForeColor);
+    GuiLib_FillBox(sgl.GraphAry[GraphIndex].GraphItem.X1 +
+                   sgl.GraphAry[GraphIndex].OriginOffsetX,
+                   Y,
+                   sgl.GraphAry[GraphIndex].GraphItem.X2,
+                   Y,
+                   sgl.GraphAry[GraphIndex].ForeColor);
+  }
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Arrow)
+  {
+    DX = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         ArrowLength;
+    HW = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         ArrowWidth / 2;
+    for (DY = -HW; DY <= HW; DY++)
+      GuiLib_Line(sgl.GraphAry[GraphIndex].GraphItem.X2 - DX,
+                  Y + DY,
+                  sgl.GraphAry[GraphIndex].GraphItem.X2,
+                  Y,
+                  sgl.GraphAry[GraphIndex].ForeColor);
+  }
+
+  Graph_CalcScaleX(GraphIndex, AxisIndex);
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].TicksMajor)
+  {
+    HW = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         TicksMajorWidth / 2;
+    TX = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         NumbersMinValue;
+    F = TX % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+             NumbersStepMajor;
+    if (F != 0)
+    {
+      TX -= F;
+      if (TX < sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+               NumbersMinValue)
+        TX += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+              NumbersStepMajor;
+    }
+    while (TX <= MV)
+    {
+      DX = sgl.GraphAry[GraphIndex].OrigoX + ((TX -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+           NumbersMinValue) *
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Scale) /
+           10000;
+      if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+          NumbersAtOrigo ||
+         (TX != sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+                NumbersMinValue))
+        GuiLib_FillBox(
+           DX - HW,
+           Y,
+           DX - HW +
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+           TicksMajorWidth - 1,
+           Y + sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+           TicksMajorLength - 1,
+           sgl.GraphAry[GraphIndex].ForeColor);
+      TX += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+            NumbersStepMajor;
+    }
+  }
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].TicksMinor)
+  {
+    HW = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         TicksMinorWidth / 2;
+    TX = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         NumbersMinValue;
+    F = TX % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+             NumbersStepMinor;
+    if (F != 0)
+    {
+      TX -= F;
+      if (TX < sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+               NumbersMinValue)
+        TX += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+              NumbersStepMinor;
+    }
+    while (TX <= MV)
+    {
+      DX = sgl.GraphAry[GraphIndex].OrigoX + ((TX -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+           NumbersMinValue) *
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Scale) /
+           10000;
+      if ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+          NumbersAtOrigo ||
+         (TX != sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+                NumbersMinValue)) &&
+         ((!sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+            TicksMajor) ||
+         (TX % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+               NumbersStepMajor != 0)))
+        GuiLib_FillBox(
+           DX - HW,
+           Y,
+           DX - HW +
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+           TicksMinorWidth - 1,
+           Y + sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+           TicksMinorLength - 1,
+           sgl.GraphAry[GraphIndex].ForeColor);
+      TX += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+            NumbersStepMinor;
+    }
+  }
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Numbers)
+  {
+    memcpy(&sgl.CurItem, &sgl.GraphAry[GraphIndex].GraphItem, sizeof(GuiLib_ItemRec));
+
+    DY = Y;
+    if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+       TicksMajor)
+      DY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         TicksMajorLength;
+    SetCurFont(sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].FontIndex);
+    DY += ReadByte(sgl.CurFont->BaseLine);
+    DY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+       NumbersOffset;
+
+    TX = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+       NumbersMinValue;
+    F = TX % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+             NumbersStepMajor;
+    if (F != 0)
+    {
+      TX -= F;
+      if (TX < sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+               NumbersMinValue)
+        TX += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+              NumbersStepMajor;
+    }
+    switch (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].FormatAlignment)
+    {
+      case GuiLib_FORMAT_ALIGNMENT_LEFT:
+        Align = GuiLib_ALIGN_LEFT;
+        break;
+      case GuiLib_FORMAT_ALIGNMENT_CENTER:
+        Align = GuiLib_ALIGN_CENTER;
+        break;
+      case GuiLib_FORMAT_ALIGNMENT_RIGHT:
+        Align = GuiLib_ALIGN_RIGHT;
+        break;
+    }
+    while (TX <= MV)
+    {
+      DX = sgl.GraphAry[GraphIndex].OrigoX + ((TX -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+           NumbersMinValue) *
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Scale) /
+           10000;
+      if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+          NumbersAtOrigo ||
+         (TX != sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+                NumbersMinValue))
+      {
+        #ifdef GuiConst_FLOAT_SUPPORT_ON
+        TDX = TX;
+        #endif
+        GuiLib_DrawVar(
+           DX,
+           DY,
+           sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].FontIndex,
+           #ifdef GuiConst_FLOAT_SUPPORT_ON
+           &TDX,
+           GuiLib_VAR_DOUBLE,
+           #else
+           &TX,
+           GuiLib_VAR_SIGNED_LONG,
+           #endif
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].FormatFormat,
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].FormatFieldWidth,
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].FormatAlignment,
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].FormatDecimals,
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+              BitFlags & GuiLib_BITFLAG_FORMATSHOWSIGN) > 0),
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+              BitFlags & GuiLib_BITFLAG_FORMATZEROPADDING) > 0),
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+              BitFlags & GuiLib_BITFLAG_FORMATTRAILINGZEROS) > 0),
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+              BitFlags & GuiLib_BITFLAG_FORMATTHOUSANDSSEP) > 0),
+           Align,
+           sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].Ps,
+           1,   // Transparent
+           ((sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].BitFlags &
+            GuiLib_BITFLAG_UNDERLINE) > 0),
+           0,
+           0,
+           0,
+           0,
+           sgl.GraphAry[GraphIndex].GraphItem.ForeColor,
+           sgl.GraphAry[GraphIndex].GraphItem.BackColor);
+      }
+      TX += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+         NumbersStepMajor;
+    }
+  }
+}
+
+//------------------------------------------------------------------------------
+static void Graph_DrawYAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  GuiConst_INT16S X, Y;
+  GuiConst_INT16S DX, DY;
+  GuiConst_INT32S TX, TY;
+  #ifdef GuiConst_FLOAT_SUPPORT_ON
+  double TDY;
+  #endif
+  GuiConst_INT32S F;
+  GuiConst_INT16S HW;
+  GuiConst_INT32S MV;
+  GuiConst_INT16U StrLen;
+  GuiConst_INT16U I;
+  GuiConst_INT8U Align;
+
+  X = sgl.GraphAry[GraphIndex].OrigoX +
+      sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Offset;
+
+  MV = Graph_CalcNumbersMaxValue(GraphIndex, AxisIndex, GuiLib_GRAPHAXIS_Y);
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Line)
+  {
+    Y = 0;
+    for (I = 0; I < sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X]; I++)
+      if (sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].Offset > Y)
+        Y = sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].Offset;
+    Y = sgl.GraphAry[GraphIndex].OriginOffsetY - Y;
+    if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+        LineNegative)
+      GuiLib_FillBox(X,
+                     sgl.GraphAry[GraphIndex].GraphItem.Y2 - Y,
+                     X,
+                     sgl.GraphAry[GraphIndex].GraphItem.Y2,
+                     sgl.GraphAry[GraphIndex].ForeColor);
+    if ((sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X] > 1) &&
+         sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         LineBetweenAxes)
+      GuiLib_FillBox(X,
+                     sgl.GraphAry[GraphIndex].GraphItem.Y2 -
+                     sgl.GraphAry[GraphIndex].OriginOffsetY,
+                     X,
+                     sgl.GraphAry[GraphIndex].GraphItem.Y2 - Y,
+                     sgl.GraphAry[GraphIndex].ForeColor);
+    GuiLib_FillBox(X,
+                   sgl.GraphAry[GraphIndex].GraphItem.Y1,
+                   X,
+                   sgl.GraphAry[GraphIndex].GraphItem.Y2 -
+                   sgl.GraphAry[GraphIndex].OriginOffsetY,
+                   sgl.GraphAry[GraphIndex].ForeColor);
+  }
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Arrow)
+  {
+    DY = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         ArrowLength;
+    HW = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         ArrowWidth / 2;
+    for (DX = -HW; DX <= HW; DX++)
+      GuiLib_Line(X - DX,
+                  sgl.GraphAry[GraphIndex].GraphItem.Y1 + DY,
+                  X,
+                  sgl.GraphAry[GraphIndex].GraphItem.Y1,
+                  sgl.GraphAry[GraphIndex].ForeColor);
+  }
+
+  Graph_CalcScaleY(GraphIndex, AxisIndex);
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].TicksMajor)
+  {
+    HW = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         TicksMajorWidth / 2;
+    TY = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         NumbersMinValue;
+    F = TY % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+             NumbersStepMajor;
+    if (F != 0)
+    {
+      TY -= F;
+      if (TY < sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+               NumbersMinValue)
+        TY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+              NumbersStepMajor;
+    }
+    while (TY <= MV)
+    {
+      DY = sgl.GraphAry[GraphIndex].OrigoY - ((TY -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+           NumbersMinValue) *
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Scale) /
+           10000;
+      if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+          NumbersAtOrigo ||
+         (TY != sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+                NumbersMinValue))
+        GuiLib_FillBox(
+           X - sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+           TicksMajorLength + 1,
+           DY - HW,
+           X,
+           DY - HW +
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+           TicksMajorWidth - 1,
+           sgl.GraphAry[GraphIndex].ForeColor);
+      TY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+            NumbersStepMajor;
+    }
+  }
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].TicksMinor)
+  {
+    HW = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         TicksMinorWidth / 2;
+    TY = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         NumbersMinValue;
+    F = TY % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+             NumbersStepMinor;
+    if (F != 0)
+    {
+      TY -= F;
+      if (TY < sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+               NumbersMinValue)
+        TY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+              NumbersStepMinor;
+    }
+    while (TY <= MV)
+    {
+      DY = sgl.GraphAry[GraphIndex].OrigoY - ((TY -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+           NumbersMinValue) *
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Scale) /
+           10000;
+      if ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+          NumbersAtOrigo ||
+         (TY != sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+                NumbersMinValue)) &&
+         ((!sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+          TicksMajor) ||
+         (TY % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+               NumbersStepMajor != 0)))
+        GuiLib_FillBox(
+           X - sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+           TicksMinorLength + 1,
+           DY - HW,
+           X,
+           DY - HW +
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+           TicksMinorWidth - 1,
+           sgl.GraphAry[GraphIndex].ForeColor);
+      TY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+            NumbersStepMinor;
+    }
+  }
+
+  if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Numbers)
+  {
+    memcpy(&sgl.CurItem, &sgl.GraphAry[GraphIndex].GraphItem, sizeof(GuiLib_ItemRec));
+
+    SetCurFont(sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].FontIndex);
+
+    sgl.CurItem.TextPar[0].BitFlags =
+       sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].BitFlags;
+    sgl.CurItem.FormatFieldWidth =
+       sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatFieldWidth;
+    sgl.CurItem.FormatDecimals =
+       sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatDecimals;
+    sgl.CurItem.FormatAlignment =
+       sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatAlignment;
+    sgl.CurItem.FormatFormat =
+       sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatFormat;
+
+    DX = X;
+    if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+       TicksMajor)
+      DX -= sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         TicksMajorLength;
+    DX -= sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+       NumbersOffset;
+
+    TY = sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+       NumbersMinValue;
+    F = TY % sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+             NumbersStepMajor;
+    if (F != 0)
+    {
+      TY -= F;
+      if (TY < sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+               NumbersMinValue)
+        TY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+              NumbersStepMajor;
+    }
+    switch (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatAlignment)
+    {
+      case GuiLib_FORMAT_ALIGNMENT_LEFT:
+        Align = GuiLib_ALIGN_LEFT;
+        break;
+      case GuiLib_FORMAT_ALIGNMENT_CENTER:
+        Align = GuiLib_ALIGN_CENTER;
+        break;
+      case GuiLib_FORMAT_ALIGNMENT_RIGHT:
+        Align = GuiLib_ALIGN_RIGHT;
+        break;
+    }
+    while (TY <= MV)
+    {
+      DY = sgl.GraphAry[GraphIndex].OrigoY - ((TY -
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+           NumbersMinValue) *
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Scale) /
+           10000;
+      if (sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+          NumbersAtOrigo ||
+         (TY != sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+                NumbersMinValue))
+      {
+        #ifdef GuiConst_FLOAT_SUPPORT_ON
+        TDY = TY;
+        #endif
+        GuiLib_DrawVar(
+           DX,
+           DY + GuiLib_FONT_MID_Y(ReadByte(sgl.CurFont->BaseLine),
+                                  ReadByte(sgl.CurFont->TopLine)),
+           sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].FontIndex,
+           #ifdef GuiConst_FLOAT_SUPPORT_ON
+           &TDY,
+           GuiLib_VAR_DOUBLE,
+           #else
+           &TY,
+           GuiLib_VAR_SIGNED_LONG,
+           #endif
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatFormat,
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatFieldWidth,
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatAlignment,
+           sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].FormatDecimals,
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+              BitFlags & GuiLib_BITFLAG_FORMATSHOWSIGN) > 0),
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+              BitFlags & GuiLib_BITFLAG_FORMATZEROPADDING) > 0),
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+              BitFlags & GuiLib_BITFLAG_FORMATTRAILINGZEROS) > 0),
+           ((sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+              BitFlags & GuiLib_BITFLAG_FORMATTHOUSANDSSEP) > 0),
+           Align,
+           sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].Ps,
+           1,   // Transparent
+           ((sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].BitFlags &
+              GuiLib_BITFLAG_UNDERLINE) > 0),
+           0,
+           0,
+           0,
+           0,
+           sgl.GraphAry[GraphIndex].GraphItem.ForeColor,
+           sgl.GraphAry[GraphIndex].GraphItem.BackColor);
+      }
+      TY += sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+         NumbersStepMajor;
+    }
+  }
+}
+
+//------------------------------------------------------------------------------
+static void Graph_DrawDataPoint(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex,
+   GuiConst_INT16U DataIndex,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S LastX,
+   GuiConst_INT16S LastY)
+{
+  GuiConst_INT16S DX1, DY1;
+  GuiConst_INT16S DX2, DY2;
+  GuiConst_INT16S HW;
+  GuiConst_INT16S AY;
+
+  switch (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Representation)
+  {
+    case GuiLib_GRAPH_DATATYPE_DOT:
+      if (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Thickness == 0)
+        GuiLib_Circle(
+           X, Y,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].BackColor,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].BackColor);
+      else if (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].
+               Thickness == 1)
+        GuiLib_Circle(
+           X, Y,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].BackColor);
+      else
+      {
+        GuiLib_Circle(
+           X, Y,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor);
+        GuiLib_Circle(
+           X, Y,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width-
+              sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Thickness,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].BackColor,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].BackColor);
+      }
+      break;
+
+    case GuiLib_GRAPH_DATATYPE_LINE:
+      if (DataIndex ==
+          sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataFirst)
+        GuiLib_Dot(
+           X, Y,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor);
+      else
+        GuiLib_Line(
+           LastX, LastY,
+           X, Y,
+           sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor);
+      break;
+
+    case GuiLib_GRAPH_DATATYPE_BAR:
+      AY = sgl.GraphAry[GraphIndex].OrigoY +
+           sgl.GraphAry[GraphIndex].GraphAxes[0][GuiLib_GRAPHAXIS_X].Offset;
+      DX2 = X + (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width / 2);
+      DX1 = DX2 - sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width + 1;
+      if (DX1 > DX2)
+        DX1 = DX2;
+      DY1 = AY;
+      DY2 = Y;
+      if (Y < AY)
+        DY1--;
+      if (Y != AY)
+      {
+        if (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Thickness == 0)
+        {
+          if (!sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].
+               BackColorTransparent)
+            GuiLib_FillBox(
+               DX1, DY1,
+               DX2, DY2,
+               sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].BackColor);
+        }
+        else
+        {
+          OrderCoord(&DX1, &DX2);
+          OrderCoord(&DY1, &DY2);
+          DrawBorderBox(
+             DX1, DY1,
+             DX2, DY2,
+             sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor,
+             sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].BackColor,
+             sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].
+                BackColorTransparent,
+             sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Thickness);
+        }
+      }
+      break;
+
+    case GuiLib_GRAPH_DATATYPE_CROSS:
+      HW = sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width;
+      DX1 = X - HW;
+      DY1 = Y - HW;
+      DX2 = X + HW;
+      DY2 = Y + HW;
+      GuiLib_Line(
+         DX1, Y,
+         DX2, Y,
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor);
+      GuiLib_Line(
+         X, DY1,
+         X, DY2,
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor);
+      break;
+
+    case GuiLib_GRAPH_DATATYPE_X:
+      HW = sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Width;
+      DX1 = X - HW;
+      DY1 = Y - HW;
+      DX2 = X + HW;
+      DY2 = Y + HW;
+      GuiLib_Line(
+         DX1, DY1,
+         DX2, DY2,
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor);
+      GuiLib_Line(
+         DX1, DY2,
+         DX2, DY1,
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].ForeColor);
+      break;
+  }
+}
+
+//------------------------------------------------------------------------------
+static void Graph_DrawDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex)
+{
+  GuiConst_INT16S DX = 0, DY = 0;
+  GuiConst_INT16S LastDX, LastDY;
+  GuiConst_INT32S TX, TY;
+  GuiConst_INT16U DataIndex;
+  GuiConst_INT16U DataCount;
+
+  Graph_CalcScaleX(GraphIndex,
+                   sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX);
+  Graph_CalcScaleY(GraphIndex,
+                   sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY);
+
+  DataIndex = sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataFirst;
+  for (DataCount = 1;
+       DataCount <= sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount;
+       DataCount++)
+  {
+    TX =
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[DataIndex].X;
+    TY =
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[DataIndex].Y;
+
+    LastDX = DX;
+    LastDY = DY;
+    DX = sgl.GraphAry[GraphIndex].OrigoX + ((TX -
+         sgl.GraphAry[GraphIndex].GraphAxes[
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX]
+         [GuiLib_GRAPHAXIS_X].NumbersMinValue) *
+         sgl.GraphAry[GraphIndex].GraphAxes[
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX]
+         [GuiLib_GRAPHAXIS_X].Scale) / 10000;
+    DY = sgl.GraphAry[GraphIndex].OrigoY - ((TY -
+         sgl.GraphAry[GraphIndex].GraphAxes[
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY]
+         [GuiLib_GRAPHAXIS_Y].NumbersMinValue) *
+         sgl.GraphAry[GraphIndex].GraphAxes[
+         sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY]
+         [GuiLib_GRAPHAXIS_Y].Scale) / 10000;
+
+    Graph_DrawDataPoint(
+       GraphIndex,
+       DataSetIndex,
+       DataIndex,
+       DX, DY,
+       LastDX, LastDY);
+
+    if (DataIndex >= sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount)
+      DataIndex = 0;
+    else
+      DataIndex++;
+  }
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_Close(
+   GuiConst_INT8U GraphIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].InUse = GuiLib_GRAPH_STRUCTURE_UNDEF;
+  sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X] = 0;
+  sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y] = 0;
+  sgl.GraphAry[GraphIndex].GraphDataSetCnt = 0;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_AddDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex,
+   GuiConst_INT8U XAxisIndex,
+   GuiConst_INT8U YAxisIndex,
+   GuiLib_GraphDataPoint *DataPtr,
+   GuiConst_INT16U DataSize,
+   GuiConst_INT16U DataCount,
+   GuiConst_INT16U DataFirst)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((DataSetIndex >= GuiConst_GRAPH_DATASETS_MAX) ||
+      (DataSetIndex >= sgl.GraphAry[GraphIndex].GraphDataSetCnt))
+    return (0);
+  if (DataCount > DataSize)
+    return (0);
+  if (DataFirst >= DataSize)
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr = DataPtr;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataSize = DataSize;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataFirst = DataFirst;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount = DataCount;
+  if ((XAxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (XAxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X]))
+    XAxisIndex = 0;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX = XAxisIndex;
+  if ((YAxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (YAxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y]))
+    YAxisIndex = 0;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY = YAxisIndex;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_RemoveDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((DataSetIndex >= GuiConst_GRAPH_DATASETS_MAX) ||
+      (DataSetIndex >= sgl.GraphAry[GraphIndex].GraphDataSetCnt))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount = 0;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataSize = 0;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_AddDataPoint(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex,
+   GuiConst_INT32S X,
+   GuiConst_INT32S Y)
+{
+  GuiConst_INT16U I;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((DataSetIndex >= GuiConst_GRAPH_DATASETS_MAX) ||
+      (DataSetIndex >= sgl.GraphAry[GraphIndex].GraphDataSetCnt))
+    return (0);
+  if (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount >=
+      sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataSize)
+    return (0);
+
+  I = (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataFirst +
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount) %
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataSize;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount++;
+
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[I].X = X;
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[I].Y = Y;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_ShowDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((DataSetIndex >= GuiConst_GRAPH_DATASETS_MAX) ||
+      (DataSetIndex >= sgl.GraphAry[GraphIndex].GraphDataSetCnt))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Visible = 1;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_HideDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((DataSetIndex >= GuiConst_GRAPH_DATASETS_MAX) ||
+      (DataSetIndex >= sgl.GraphAry[GraphIndex].GraphDataSetCnt))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Visible = 0;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_ShowXAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X]))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Visible = 1;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_HideXAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X]))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].Visible = 0;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_ShowYAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y]))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Visible = 1;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_HideYAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y]))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].Visible = 0;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_SetXAxisRange(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex,
+   GuiConst_INT32S MinValue,
+   GuiConst_INT32S MaxValue)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X]))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+     NumbersMinValue = MinValue;
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_X].
+     NumbersMaxValue = MaxValue;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_SetYAxisRange(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex,
+   GuiConst_INT32S MinValue,
+   GuiConst_INT32S MaxValue)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y]))
+    return (0);
+
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+     NumbersMinValue = MinValue;
+  sgl.GraphAry[GraphIndex].GraphAxes[AxisIndex][GuiLib_GRAPHAXIS_Y].
+     NumbersMaxValue = MaxValue;
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_ResetXAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex)
+{
+  GuiConst_INT8U AxisIndex1,AxisIndex2;
+  GuiConst_INT8U I;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if (AxisIndex == -1)
+  {
+    AxisIndex1 = 0;
+    AxisIndex2 = sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X] - 1;
+  }
+  else if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X]))
+    return (0);
+  else
+  {
+    AxisIndex1 = AxisIndex;
+    AxisIndex2 = AxisIndex;
+  }
+
+  for (I = AxisIndex1; I <= AxisIndex2; I++)
+  {
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].NumbersMinValue =
+       sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].NumbersMinValueOrg;
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].NumbersMaxValue =
+       sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].NumbersMaxValueOrg;
+  }
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_OffsetXAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex,
+   GuiConst_INT32S Offset)
+{
+  GuiConst_INT8U AxisIndex1,AxisIndex2;
+  GuiConst_INT8U I;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if (AxisIndex == -1)
+  {
+    AxisIndex1 = 0;
+    AxisIndex2 = sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X] - 1;
+  }
+  else if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X]))
+    return (0);
+  else
+  {
+    AxisIndex1 = AxisIndex;
+    AxisIndex2 = AxisIndex;
+  }
+
+  for (I = AxisIndex1; I <= AxisIndex2; I++)
+  {
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].NumbersMinValue += Offset;
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].NumbersMaxValue += Offset;
+  }
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_ResetYAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex)
+{
+  GuiConst_INT8U AxisIndex1,AxisIndex2;
+  GuiConst_INT8U I;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if (AxisIndex == -1)
+  {
+    AxisIndex1 = 0;
+    AxisIndex2 = sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y] - 1;
+  }
+  else if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y]))
+    return (0);
+  else
+  {
+    AxisIndex1 = AxisIndex;
+    AxisIndex2 = AxisIndex;
+  }
+
+  for (I = AxisIndex1; I <= AxisIndex2; I++)
+  {
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].NumbersMinValue =
+       sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].NumbersMinValueOrg;
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].NumbersMaxValue =
+       sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].NumbersMaxValueOrg;
+  }
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_OffsetYAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex,
+   GuiConst_INT32S Offset)
+{
+  GuiConst_INT8U AxisIndex1,AxisIndex2;
+  GuiConst_INT8U I;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if (AxisIndex == -1)
+  {
+    AxisIndex1 = 0;
+    AxisIndex2 = sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y] - 1;
+  }
+  else if ((AxisIndex >= GuiConst_GRAPH_AXES_MAX) ||
+      (AxisIndex >= sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y]))
+    return (0);
+  else
+  {
+    AxisIndex1 = AxisIndex;
+    AxisIndex2 = AxisIndex;
+  }
+
+  for (I = AxisIndex1; I <= AxisIndex2; I++)
+  {
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].NumbersMinValue += Offset;
+    sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].NumbersMaxValue += Offset;
+  }
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_Redraw(
+   GuiConst_INT8U GraphIndex)
+{
+  GuiConst_INT16S I;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_SetClipping(GraphIndex);
+#endif
+
+  GuiLib_Graph_DrawAxes(GraphIndex);
+
+  for (I = sgl.GraphAry[GraphIndex].GraphDataSetCnt - 1; I >= 0; I--)
+    GuiLib_Graph_DrawDataSet(GraphIndex, I);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_ResetClipping();
+#endif
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_DrawAxes(
+   GuiConst_INT8U GraphIndex)
+{
+  GuiConst_INT16S I;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_SetClipping(GraphIndex);
+#endif
+
+  if (!(sgl.GraphAry[GraphIndex].GraphItem.TextPar[0].BitFlags &
+        GuiLib_BITFLAG_TRANSPARENT))
+    GuiLib_FillBox(sgl.GraphAry[GraphIndex].GraphItem.X1,
+                   sgl.GraphAry[GraphIndex].GraphItem.Y1,
+                   sgl.GraphAry[GraphIndex].GraphItem.X2,
+                   sgl.GraphAry[GraphIndex].GraphItem.Y2,
+                   sgl.GraphAry[GraphIndex].GraphItem.BackColor);
+
+  for (I = sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_X] - 1;
+       I >= 0; I--)
+    if (sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_X].Visible)
+      Graph_DrawXAxis(GraphIndex, I);
+
+  for (I = sgl.GraphAry[GraphIndex].GraphAxesCnt[GuiLib_GRAPHAXIS_Y] - 1;
+       I >= 0; I--)
+    if (sgl.GraphAry[GraphIndex].GraphAxes[I][GuiLib_GRAPHAXIS_Y].Visible)
+      Graph_DrawYAxis(GraphIndex, I);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_ResetClipping();
+#endif
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_DrawDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex)
+{
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((DataSetIndex >= GuiConst_GRAPH_DATASETS_MAX) ||
+      (DataSetIndex >= sgl.GraphAry[GraphIndex].GraphDataSetCnt))
+    return (0);
+  if (!sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Visible)
+    return (0);
+  if (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataSize == 0)
+    return (0);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_SetClipping(GraphIndex);
+#endif
+
+  Graph_DrawDataSet(GraphIndex, DataSetIndex);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_ResetClipping();
+#endif
+
+  return (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Graph_DrawDataPoint(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex,
+   GuiConst_INT16U DataIndex)
+{
+  GuiConst_INT16S Y;
+  GuiConst_INT16S DX, DY;
+  GuiConst_INT16S LastDX, LastDY;
+  GuiConst_INT32S TX, TY;
+
+  if ((GraphIndex >= GuiConst_GRAPH_MAX) ||
+      (sgl.GraphAry[GraphIndex].InUse != GuiLib_GRAPH_STRUCTURE_USED))
+    return (0);
+  if ((DataSetIndex >= GuiConst_GRAPH_DATASETS_MAX) ||
+      (DataSetIndex >= sgl.GraphAry[GraphIndex].GraphDataSetCnt))
+    return (0);
+  if (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataSize == 0)
+    return (0);
+  if (!sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Visible)
+    return (0);
+  if (DataIndex >= sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount)
+    return (0);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_SetClipping(GraphIndex);
+#endif
+
+  Graph_CalcScaleX(GraphIndex,
+                   sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX);
+  Graph_CalcScaleY(GraphIndex,
+                   sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY);
+
+  TX = sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[DataIndex].X;
+  TY = sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[DataIndex].Y;
+  DX = sgl.GraphAry[GraphIndex].OrigoX + ((TX -
+       sgl.GraphAry[GraphIndex].GraphAxes[
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX]
+       [GuiLib_GRAPHAXIS_X].NumbersMinValue) *
+       sgl.GraphAry[GraphIndex].GraphAxes[
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX]
+       [GuiLib_GRAPHAXIS_X].Scale) / 10000;
+  DY = sgl.GraphAry[GraphIndex].OrigoY - ((TY -
+       sgl.GraphAry[GraphIndex].GraphAxes[
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY]
+       [GuiLib_GRAPHAXIS_Y].NumbersMinValue) *
+       sgl.GraphAry[GraphIndex].GraphAxes[
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY]
+       [GuiLib_GRAPHAXIS_Y].Scale) / 10000;
+  if (sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].Representation ==
+      GuiLib_GRAPH_DATATYPE_LINE)
+  {
+    if (DataIndex == 0)
+      DataIndex = sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataCount - 1;
+    else
+      DataIndex--;
+
+    TX =
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[DataIndex].X;
+    TY =
+       sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].DataPtr[DataIndex].Y;
+    LastDX = sgl.GraphAry[GraphIndex].OrigoX + ((TX -
+            sgl.GraphAry[GraphIndex].GraphAxes[
+            sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX]
+            [GuiLib_GRAPHAXIS_X].NumbersMinValue) *
+            sgl.GraphAry[GraphIndex].GraphAxes[
+            sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexX]
+            [GuiLib_GRAPHAXIS_X].Scale) / 10000;
+    LastDY = sgl.GraphAry[GraphIndex].OrigoY - ((TY -
+             sgl.GraphAry[GraphIndex].GraphAxes[
+             sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY]
+             [GuiLib_GRAPHAXIS_Y].NumbersMinValue) *
+             sgl.GraphAry[GraphIndex].GraphAxes[
+             sgl.GraphAry[GraphIndex].GraphDataSets[DataSetIndex].AxisIndexY]
+             [GuiLib_GRAPHAXIS_Y].Scale) / 10000;
+  }
+  else
+  {
+    LastDX = DX;
+    LastDY = DY;
+  }
+
+  Graph_DrawDataPoint(
+     GraphIndex,
+     DataSetIndex,
+     DataIndex,
+     DX, DY,
+     LastDX, LastDY);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  Graph_ResetClipping();
+#endif
+
+  return (1);
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+#endif // GuiConst_ITEM_GRAPH_INUSE
+
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+static GuiConst_INT16S IndexOfGraphicsLayer(
+   GuiConst_INT16S GraphicsLayerIndex)
+{
+  GuiConst_INT16S I;
+
+  if (GraphicsLayerIndex == GuiLib_GRAPHICS_LAYER_BASE)
+    return(GuiLib_GRAPHICS_LAYER_BASE);
+  else if (GraphicsLayerIndex == GuiLib_GRAPHICS_LAYER_PREVIOUS)
+  {
+    if (sgl.GraphicsLayerLifoCnt <= 1)
+      return(GuiLib_GRAPHICS_LAYER_BASE);
+    else
+      return(sgl.GraphicsLayerLifo[sgl.GraphicsLayerLifoCnt - 2]);
+  }
+  else if (GraphicsLayerIndex == GuiLib_GRAPHICS_LAYER_CURRENT)
+  {
+    if (sgl.GraphicsLayerLifoCnt > 0)
+      return(sgl.GraphicsLayerLifo[sgl.GraphicsLayerLifoCnt - 1]);
+    else
+      return(GuiLib_GRAPHICS_LAYER_BASE);
+  }
+  else if (GraphicsLayerIndex < 0)
+    return(GuiLib_GRAPHICS_LAYER_BASE);
+  else if (sgl.GraphicsLayerLifoCnt <= 1)
+    return(GuiLib_GRAPHICS_LAYER_BASE);
+  for (I = 0; I < sgl.GraphicsLayerLifoCnt; I++)
+    if (sgl.GraphicsLayerLifo[I] == GraphicsLayerIndex)
+      return(GraphicsLayerIndex);
+  return(GuiLib_GRAPHICS_LAYER_BASE);
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT8U GraphicsLayer_Push(
+   GuiConst_INT8U GraphicsLayerIndex)
+{
+  GuiConst_INT16S I;
+
+  if (GraphicsLayerIndex >= GuiConst_GRAPHICS_LAYER_MAX)
+    return(0);
+  if (sgl.GraphicsLayerList[GraphicsLayerIndex].InUse != GuiLib_GRAPHICS_LAYER_USED)
+    return(0);
+  if (sgl.GraphicsLayerLifoCnt == GuiConst_GRAPHICS_LAYER_MAX)
+    return(0);
+  for (I = 0; I < sgl.GraphicsLayerLifoCnt; I++)
+    if (sgl.GraphicsLayerLifo[I] == GraphicsLayerIndex)
+      return(0);
+
+  sgl.GraphicsLayerLifo[sgl.GraphicsLayerLifoCnt] = GraphicsLayerIndex;
+  sgl.GraphicsLayerLifoCnt++;
+  sgl.GraphicsLayerList[GraphicsLayerIndex].BaseAddress =
+   &sgl.LayerBuf[(GuiConst_INT32U)ReadWord(
+   GuiStruct_GraphicsLayerOfs[GraphicsLayerIndex])];
+
+  sgl.CurLayerBufPtr = sgl.GraphicsLayerList[GraphicsLayerIndex].BaseAddress;
+  sgl.CurLayerLineSize = sgl.GraphicsLayerList[GraphicsLayerIndex].LineSize;
+  sgl.CurLayerWidth = sgl.GraphicsLayerList[GraphicsLayerIndex].Width;
+  sgl.CurLayerHeight = sgl.GraphicsLayerList[GraphicsLayerIndex].Height;
+  sgl.CurLayerBytes =
+     sgl.GraphicsLayerList[GraphicsLayerIndex].Height *
+     sgl.GraphicsLayerList[GraphicsLayerIndex].LineSize;
+  sgl.BaseLayerDrawing = 0;
+
+  return(1);
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT8U GraphicsLayer_Pop(
+   GuiConst_INT16S GraphicsLayerIndex)
+{
+  GuiConst_INT16S I;
+
+  if (GraphicsLayerIndex == GuiLib_GRAPHICS_LAYER_BASE)
+    sgl.GraphicsLayerLifoCnt = 0;
+  else if ((GraphicsLayerIndex == GuiLib_GRAPHICS_LAYER_PREVIOUS) &&
+           (sgl.GraphicsLayerLifoCnt > 0))
+  {
+    sgl.GraphicsLayerLifoCnt--;
+    GraphicsLayerIndex = sgl.GraphicsLayerLifo[sgl.GraphicsLayerLifoCnt - 1];
+  }
+  else if (GraphicsLayerIndex < 0)
+    return(0);
+  else if (sgl.GraphicsLayerLifoCnt <= 1)
+    return(0);
+  else
+  {
+    for (I = sgl.GraphicsLayerLifoCnt - 2; I >= 0; I--)
+      if (sgl.GraphicsLayerLifo[I] == GraphicsLayerIndex)
+      {
+        sgl.GraphicsLayerLifoCnt = I + 1;
+        break;
+      }
+    if (I == -1)
+      return(0);
+  }
+
+  if (sgl.GraphicsLayerLifoCnt == 0)
+    ResetLayerBufPtr();
+  else
+  {
+    sgl.CurLayerBufPtr = sgl.GraphicsLayerList[GraphicsLayerIndex].BaseAddress;
+    sgl.CurLayerLineSize = sgl.GraphicsLayerList[GraphicsLayerIndex].LineSize;
+    sgl.CurLayerWidth = sgl.GraphicsLayerList[GraphicsLayerIndex].Width;
+    sgl.CurLayerHeight = sgl.GraphicsLayerList[GraphicsLayerIndex].Height;
+    sgl.CurLayerBytes =
+       sgl.GraphicsLayerList[GraphicsLayerIndex].Height *
+       sgl.GraphicsLayerList[GraphicsLayerIndex].LineSize;
+    sgl.BaseLayerDrawing = 0;
+  }
+
+  return(1);
+}
+
+//------------------------------------------------------------------------------
+static void GraphicsLayer_Copy(
+   GuiConst_INT8U *DestAddress,
+   GuiConst_INT16U DestLineSize,
+   GuiConst_INT16S DestX,
+   GuiConst_INT16S DestY,
+   GuiConst_INT8U *SourceAddress,
+   GuiConst_INT16U SourceLineSize,
+   GuiConst_INT16S SourceX,
+   GuiConst_INT16S SourceY,
+   GuiConst_INT16U Width,
+   GuiConst_INT16U Height)
+{
+  GuiConst_INT16S LineSize;
+
+  SourceAddress +=
+     SourceY * SourceLineSize + GuiConst_PIXEL_BYTE_SIZE * SourceX;
+  DestAddress += DestY * DestLineSize + GuiConst_PIXEL_BYTE_SIZE * DestX;
+  LineSize = GuiConst_PIXEL_BYTE_SIZE * Width;
+  while (Height > 0)
+  {
+    memcpy(DestAddress, SourceAddress, LineSize);
+    SourceAddress += SourceLineSize;
+    DestAddress += DestLineSize;
+    Height--;
+  }
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_GraphicsFilter_Init(
+   GuiConst_INT8U GraphicsFilterIndex,
+   void (*FilterFuncPtr)
+     (GuiConst_INT8U *DestAddress,
+      GuiConst_INT16U DestLineSize,
+      GuiConst_INT8U *SourceAddress,
+      GuiConst_INT16U SourceLineSize,
+      GuiConst_INT16U Width,
+      GuiConst_INT16U Height,
+      GuiConst_INT32S FilterPars[10]))
+{
+  if (GraphicsFilterIndex >= GuiConst_GRAPHICS_FILTER_MAX)
+    return (0);
+
+  sgl.GraphicsFilterList[GraphicsFilterIndex].GraphicsFilterFunc = FilterFuncPtr;
+
+  return (1);
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+#endif // GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+GuiConst_INT16S *TextBox_Scroll_GetPosRec(GuiConst_INT8U TextBoxIndex)
+{
+  GuiConst_INT16S I;
+  GuiConst_INT16S *result = NULL;
+
+  for (I=0;I<GuiConst_TEXTBOX_FIELDS_MAX;I++)
+  {
+    if (sgl.TextBoxScrollPositions[I].index == TextBoxIndex)
+    {
+      result = &sgl.TextBoxScrollPositions[I].pos;
+      break;
+    }
+  }
+
+  return result;
+}
+//------------------------------------------------------------------------------
+static GuiConst_INT16S TextBox_Scroll_CalcEndPos(
+   GuiLib_ItemRec PrefixLocate *TextBoxItem,
+   GuiConst_INT8U PerLine)
+{
+  GuiConst_INT16S H;
+
+  H = TextBoxItem->Y2 -
+      TextBoxItem->Y1 + 1;
+  if (PerLine)
+    return (TextBoxItem->CompPars.CompTextBox.LineDist *
+       (TextBoxItem->CompPars.CompTextBox.Lines -
+       (H / TextBoxItem->CompPars.CompTextBox.LineDist)));
+  else
+    return (TextBoxItem->CompPars.CompTextBox.Lines *
+       TextBoxItem->CompPars.CompTextBox.LineDist - H);
+}
+#endif // GuiConst_TEXTBOX_FIELDS_ON
+
+//------------------------------------------------------------------------------
+static GuiConst_INT8U TextBox_Scroll_To(
+   GuiConst_INT8U TextBoxIndex,
+   GuiConst_INT16S NewPos,
+   GuiConst_INT8U PerLine,
+   GuiConst_INT8U AbsoluteMove)
+{
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  GuiLib_ItemRec PrefixLocate *TextBoxItem;
+  GuiConst_INT16S TextBox;
+  GuiConst_INT16S PrefixLocate *ScrollPos;
+
+  TextBox = AutoRedraw_GetTextBox(TextBoxIndex, -1);
+
+  if (TextBox == -1)
+    return (0);
+
+  TextBoxItem = AutoRedraw_GetItem(TextBox);
+
+  if (TextBoxItem == NULL)
+    return (0);
+  else
+  {
+    ScrollPos = TextBox_Scroll_GetPosRec(TextBoxIndex);
+
+    if (ScrollPos == NULL)
+      return (0);
+
+    if (PerLine)
+      NewPos *= TextBoxItem->CompPars.CompTextBox.LineDist;
+
+    switch (AbsoluteMove)
+    {
+      case 0:
+        *ScrollPos += NewPos;
+        break;
+
+      case 1:
+        *ScrollPos = NewPos;
+        break;
+
+      case 2:
+        *ScrollPos = TextBox_Scroll_CalcEndPos(TextBoxItem, PerLine);
+        break;
+    }
+
+    TextBoxItem->CompPars.CompTextBox.ScrollPos = *ScrollPos;
+
+    memcpy(&sgl.CurItem, TextBoxItem, sizeof(GuiLib_ItemRec));
+
+    GuiDisplay_Lock();
+
+    sgl.DisplayLevel = 0;
+    sgl.SwapColors = 0;
+    DrawItem(GuiLib_COL_INVERT_OFF);
+
+    GuiDisplay_Unlock();
+    return (1);
+  }
+#else
+  gl.Dummy1_8U = TextBoxIndex;   // To avoid compiler warning
+  gl.Dummy1_16S = NewPos;   // To avoid compiler warning
+  gl.Dummy2_8U = PerLine;   // To avoid compiler warning
+  gl.Dummy3_8U = AbsoluteMove;   // To avoid compiler warning
+  return (0);
+#endif
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Up(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, -1, 1, 0));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Down(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, 1, 1, 0));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Home(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, 0, 1, 1));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_End(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, 0, 1, 2));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_To_Line(
+   GuiConst_INT8U TextBoxIndex,
+   GuiConst_INT16S NewLine)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, NewLine, 1, 1));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Up_Pixel(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, -1, 0, 0));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Down_Pixel(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, 1, 0, 0));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Home_Pixel(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, 0, 0, 1));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_End_Pixel(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, 0, 0, 2));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_To_PixelLine(
+   GuiConst_INT8U TextBoxIndex,
+   GuiConst_INT16S NewPixelLine)
+{
+  return (TextBox_Scroll_To(TextBoxIndex, NewPixelLine, 0, 1));
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT8U TextBox_Scroll_Get_Pos(
+   GuiConst_INT8U TextBoxIndex,
+   GuiConst_INT8U PerLine)
+{
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  GuiConst_INT16S P;
+  GuiLib_ItemRec PrefixLocate*TextBoxItem;
+  GuiConst_INT16S TextBox;
+  GuiConst_INT16S PrefixLocate *ScrollPos;
+
+  TextBox = AutoRedraw_GetTextBox(TextBoxIndex, -1);
+
+  if (TextBox == -1)
+    return (GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX);
+
+  TextBoxItem = AutoRedraw_GetItem(TextBox);
+
+  if (TextBoxItem == NULL)
+    return (GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX);
+
+  ScrollPos = TextBox_Scroll_GetPosRec(TextBoxIndex);
+
+  if (ScrollPos == NULL)
+    return (GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX);
+
+  P = TextBox_Scroll_CalcEndPos(TextBoxItem, PerLine);
+  if (*ScrollPos == 0)
+    return (GuiLib_TEXTBOX_SCROLL_AT_HOME);
+  else if (*ScrollPos == P)
+    return (GuiLib_TEXTBOX_SCROLL_AT_END);
+  else if (*ScrollPos < 0)
+    return (GuiLib_TEXTBOX_SCROLL_ABOVE_HOME);
+  else if (*ScrollPos > P)
+    return (GuiLib_TEXTBOX_SCROLL_BELOW_END);
+  else
+    return (GuiLib_TEXTBOX_SCROLL_INSIDE_BLOCK);
+
+#else
+  gl.Dummy1_8U = TextBoxIndex;   // To avoid compiler warning
+  gl.Dummy2_8U = PerLine;   // To avoid compiler warning
+  return (GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX);
+#endif
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Get_Pos(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_Get_Pos(TextBoxIndex, 1));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_Get_Pos_Pixel(
+   GuiConst_INT8U TextBoxIndex)
+{
+  return (TextBox_Scroll_Get_Pos(TextBoxIndex, 0));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_TextBox_Scroll_FitsInside(
+   GuiConst_INT8U TextBoxIndex)
+{
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  GuiLib_ItemRec PrefixLocate *TextBoxItem;
+  GuiConst_INT16S TextBox;
+  GuiConst_INT16S PrefixLocate *ScrollPos;
+
+  TextBox = AutoRedraw_GetTextBox(TextBoxIndex, -1);
+
+  if (TextBox == -1)
+    return (0);
+
+  TextBoxItem = AutoRedraw_GetItem(TextBox);
+
+  if (TextBoxItem == NULL)
+    return (0);
+
+  return (TextBox_Scroll_CalcEndPos(TextBoxItem, 0) < 0);
+#else
+  gl.Dummy1_8U = TextBoxIndex;   // To avoid compiler warning
+  return (0);
+#endif
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_SetButtonDisabledColor(GuiConst_INTCOLOR PixelColor)
+{
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+  sgl.ButtonColorOverride = GuiLib_TRUE;
+  sgl.DisabledButtonColor = PixelColor;
+#endif
+
+  return PixelColor;
+}
+//------------------------------------------------------------------------------
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiDisplay.c	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,742 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2014 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                       easyGUI display driver unit                        */
+/*                               v6.0.23.002                                */
+/*                                                                          */
+/* ************************************************************************ */
+
+#include "GuiConst.h"
+#include "GuiDisplay.h"
+#include "GuiLib.h"
+#include <stdlib.h>
+
+#define WANT_DOUBLE_BUFFERING // Also in GuiGraph16.h, GuiLib.c - *** all three must match ***
+
+#define USE_WAIT_MS
+#ifdef USE_WAIT_MS
+extern void EasyGUIWaitMs(GuiConst_INT32U msec); // in main.cpp
+#endif
+
+extern void SetupQSPIBitmapArray(int stageNumber); // In main.cpp
+
+// Make FRAME_ADDRESS able to be set at runtime, not hardcoded
+static unsigned long frameAddress = 0L;
+// Global function (actually called from the main function, in main.cpp) 
+// to set the frame address at startup
+void GuiDisplay_SetFrameAddress(void *newFrameAddress)
+{
+    // C/C++ is not happy copying a pointer value direct to an unsigned long
+    union {
+        void *ptrValue;
+        unsigned long ulValue;
+    } frameAddressUnion;
+    
+    frameAddressUnion.ptrValue = newFrameAddress;
+    
+    frameAddress = frameAddressUnion.ulValue;
+}
+
+// Select LCD controller type by removing double slashes
+//
+// Many of the drivers listed here supports more than one display controller.
+// To find your driver simply make a text search in this file. Omit eventual
+// letters after the display controller type number. Example: For an NJU6450A
+// display controller make a search for "NJU6450" - make sure it is a plain
+// text search, not a word search.
+//
+// If your display controller is not found you can contact support at
+// sales@ibissolutions.com. We will then quickly supply a driver for it.
+//
+// You only need to use the relevant display driver, all others may be deleted.
+// Make a copy of this file before modifying it.
+//
+// -----------------------------------------------------------------------------
+// #define LCD_CONTROLLER_TYPE_AT32AP7000
+// #define LCD_CONTROLLER_TYPE_AT91RM9200_ST7565
+// #define LCD_CONTROLLER_TYPE_AT91SAM9263
+// #define LCD_CONTROLLER_TYPE_BVGP
+// #define LCD_CONTROLLER_TYPE_D51E5TA7601
+// #define LCD_CONTROLLER_TYPE_F5529
+// #define LCD_CONTROLLER_TYPE_FLEVIPER
+// #define LCD_CONTROLLER_TYPE_FSA506
+// #define LCD_CONTROLLER_TYPE_H8S2378
+// #define LCD_CONTROLLER_TYPE_HD61202_2H
+// #define LCD_CONTROLLER_TYPE_HD61202_4H
+// #define LCD_CONTROLLER_TYPE_HD61202_2H2V
+// #define LCD_CONTROLLER_TYPE_HX8238_AT32AP7000
+// #define LCD_CONTROLLER_TYPE_HX8238_TMP92CH21
+// #define LCD_CONTROLLER_TYPE_HX8312
+// #define LCD_CONTROLLER_TYPE_HX8345
+// #define LCD_CONTROLLER_TYPE_HX8346
+// #define LCD_CONTROLLER_TYPE_HX8347
+// #define LCD_CONTROLLER_TYPE_HX8347G
+// #define LCD_CONTROLLER_TYPE_HX8352A
+// #define LCD_CONTROLLER_TYPE_ILI9341
+// #define LCD_CONTROLLER_TYPE_K70
+// #define LCD_CONTROLLER_TYPE_LC7981
+// #define LCD_CONTROLLER_TYPE_LS027
+// #define LCD_CONTROLLER_TYPE_LS044
+// #define LCD_CONTROLLER_TYPE_LH155BA
+// #define LCD_CONTROLLER_TYPE_LH75401
+// #define LCD_CONTROLLER_TYPE_LH7A400
+// #define LCD_CONTROLLER_TYPE_LPC1788
+// #define LCD_CONTROLLER_TYPE_LPC1850
+// #define LCD_CONTROLLER_TYPE_LPC2478
+// #define LCD_CONTROLLER_TYPE_LPC3230
+#define LCD_CONTROLLER_TYPE_LPC408X
+// #define LCD_CONTROLLER_TYPE_MPC5606S
+// #define LCD_CONTROLLER_TYPE_MX257
+// #define LCD_CONTROLLER_TYPE_NJU6450A
+// #define LCD_CONTROLLER_TYPE_NT39016D
+// #define LCD_CONTROLLER_TYPE_NT75451
+// #define LCD_CONTROLLER_TYPE_OTM2201A
+// #define LCD_CONTROLLER_TYPE_PCF8548
+// #define LCD_CONTROLLER_TYPE_PCF8813
+// #define LCD_CONTROLLER_TYPE_PIC24FJ256
+// #define LCD_CONTROLLER_TYPE_PXA320
+// #define LCD_CONTROLLER_TYPE_R61509
+// #define LCD_CONTROLLER_TYPE_R61526
+// #define LCD_CONTROLLER_TYPE_R61580
+// #define LCD_CONTROLLER_TYPE_RA8822
+// #define LCD_CONTROLLER_TYPE_RA8875
+// #define LCD_CONTROLLER_TYPE_S1D13505
+// #define LCD_CONTROLLER_TYPE_S1D13506
+// #define LCD_CONTROLLER_TYPE_S1D13700
+// #define LCD_CONTROLLER_TYPE_S1D13705
+// #define LCD_CONTROLLER_TYPE_S1D13706
+// #define LCD_CONTROLLER_TYPE_S1D13715
+// #define LCD_CONTROLLER_TYPE_S1D13743
+// #define LCD_CONTROLLER_TYPE_S1D13748
+// #define LCD_CONTROLLER_TYPE_S1D13781
+// #define LCD_CONTROLLER_TYPE_S1D13781_DIRECT
+// #define LCD_CONTROLLER_TYPE_S1D13A04
+// #define LCD_CONTROLLER_TYPE_S1D13A05
+// #define LCD_CONTROLLER_TYPE_S1D15721
+// #define LCD_CONTROLLER_TYPE_S6B0741
+// #define LCD_CONTROLLER_TYPE_S6B33BL
+// #define LCD_CONTROLLER_TYPE_S6D0139
+// #define LCD_CONTROLLER_TYPE_S6E63D6
+// #define LCD_CONTROLLER_TYPE_SBN1661_2H_SBN0080
+// #define LCD_CONTROLLER_TYPE_SED1335
+// #define LCD_CONTROLLER_TYPE_SEPS525
+// #define LCD_CONTROLLER_TYPE_SH1101A
+// #define LCD_CONTROLLER_TYPE_SH1123
+// #define LCD_CONTROLLER_TYPE_SPFD5408
+// #define LCD_CONTROLLER_TYPE_SPLC502
+// #define LCD_CONTROLLER_TYPE_SSD0323
+// #define LCD_CONTROLLER_TYPE_SSD1289
+// #define LCD_CONTROLLER_TYPE_SSD1305
+// #define LCD_CONTROLLER_TYPE_SSD1322
+// #define LCD_CONTROLLER_TYPE_SSD1339
+// #define LCD_CONTROLLER_TYPE_SSD1815
+// #define LCD_CONTROLLER_TYPE_SSD1815_2H
+// #define LCD_CONTROLLER_TYPE_SSD1848
+// #define LCD_CONTROLLER_TYPE_SSD1858
+// #define LCD_CONTROLLER_TYPE_SSD1926
+// #define LCD_CONTROLLER_TYPE_SSD1963
+// #define LCD_CONTROLLER_TYPE_SSD2119
+// #define LCD_CONTROLLER_TYPE_ST7529
+// #define LCD_CONTROLLER_TYPE_ST7541
+// #define LCD_CONTROLLER_TYPE_ST7561
+// #define LCD_CONTROLLER_TYPE_ST7565
+// #define LCD_CONTROLLER_TYPE_ST7586
+// #define LCD_CONTROLLER_TYPE_ST7637
+// #define LCD_CONTROLLER_TYPE_ST7715
+// #define LCD_CONTROLLER_TYPE_ST7920
+// #define LCD_CONTROLLER_TYPE_STM32F429
+// #define LCD_CONTROLLER_TYPE_T6963
+// #define LCD_CONTROLLER_TYPE_TLS8201
+// #define LCD_CONTROLLER_TYPE_TMPA900
+// #define LCD_CONTROLLER_TYPE_TS7390
+// #define LCD_CONTROLLER_TYPE_UC1608
+// #define LCD_CONTROLLER_TYPE_UC1610
+// #define LCD_CONTROLLER_TYPE_UC1611
+// #define LCD_CONTROLLER_TYPE_UC1617
+// #define LCD_CONTROLLER_TYPE_UC1698
+// #define LCD_CONTROLLER_TYPE_UPD161607
+// #define LCD_CONTROLLER_TYPE_UC1701
+
+// ============================================================================
+//
+// COMMON PART - NOT DEPENDENT ON DISPLAY CONTROLLER TYPE
+//
+// Do not delete this part of the GuiDisplay.c file.
+//
+// If your operating system uses pre-emptive execution, i.e. it interrupts tasks
+// at random instances, and transfers control to other tasks, display writing
+// must be protected from this, by writing code for the two protection
+// functions:
+//
+//   o  GuiDisplay_Lock     Prevent the OS from switching tasks
+//   o  GuiDisplay_Unlock   Open up normal task execution again
+//
+// If your operating system does not use pre-emptive execution, i.e. if you
+// must specifically release control in one tasks in order for other tasks to
+// be serviced, or if you don't employ an operating system at all, you can just
+// leave the two protection functions empty. Failing to write proper code for
+// the protection functions will result in a system with unpredictable
+// behavior.
+//
+// ============================================================================
+
+void GuiDisplay_Lock (void)
+{
+}
+
+void GuiDisplay_Unlock (void)
+{
+}
+
+// ============================================================================
+//
+// DISPLAY DRIVER PART
+//
+// You only need to use the relevant display driver, all others may be deleted.
+// Modify the driver so that it fits your specific hardware.
+// Make a copy of this file before modifying it.
+//
+// ============================================================================
+
+#ifdef LCD_CONTROLLER_TYPE_LPC408X
+
+// ============================================================================
+//
+// LPC408x MICROCONTROLLER WITH BUILT-IN DISPLAY CONTROLLER
+//
+// This driver uses internal LCD controller of LPC408x microcontroller.
+// LCD driver of LPC408x in 24 bit RGB parallel interface for TFT type
+// display or 4bit parallel interface for STN type display.
+// Graphic modes up to 1024x768 pixels.
+//
+// Compatible display controllers:
+//   None
+//
+// easyGUI setup should be (Parameters window, Display controller tab page):
+//   Horizontal bytes
+//   Bit 0 at right
+//   Number of color planes: 1
+//   Color mode: Grayscale, palette or RGB
+//   Color depth: 1 bit (B/W), 8 bits, 16 bits, 24 bits
+//   Display orientation: Normal, Upside down, 90 degrees left, 90 degrees right
+//   Display words with reversed bytes: Off
+//   Number of display controllers, horizontally: 1
+//   Number of display controllers, vertically: 1
+//
+// Port addresses (Px.x) must be altered to correspond to your microcontroller
+// hardware and compiler syntax.
+//
+// ============================================================================
+
+// Hardware connection for TFT display
+// LPC408x                        generic TFT display
+// LCD_FP               -         VSYNC
+// LCD_LP               -         HSYNC
+// LCD_LE               -         Line End
+// LCD_DCLK             -         Pixel CLK
+// LCD_ENAB_M           -         DATA_ENABLE
+// LCD_VD[0-7]          -         R0-R7 (for 16bit RGB mode connect R0,R1,R2 to 0)
+// LCD_VD[8-15]         -         G0-G7 (for 16bit RGB mode connect G0,G1 to 0)
+// LCD_VD[16-23]        -         B0-B7 (for 16bit RGB mode connect B0,B1,B2 to 0)
+
+// Hardware connection for STN display
+// LCD_PWR              -         DISP
+// LCD_DCLK             -         CL2
+// LCD_FP               -         Frame Pulse
+// LCD_LP               -         Line Sync Pulse
+// LCD_LE               -         Line End
+// LCD_VD[3:0]          -         UD[3:0]
+
+// Power Control registers
+#define PCONP          (*(volatile unsigned long *)0x400FC0C4)
+// LCD controller power control bit
+#define PCLCD          0
+
+// Pin setup registers (IOCON)
+#define IOCON_P0_4         (*(volatile unsigned long *)0x4002C010)
+#define IOCON_P0_5         (*(volatile unsigned long *)0x4002C014)
+#define IOCON_P0_6         (*(volatile unsigned long *)0x4002C018)
+#define IOCON_P0_7         (*(volatile unsigned long *)0x4002C01C)
+#define IOCON_P0_8         (*(volatile unsigned long *)0x4002C020)
+#define IOCON_P0_9         (*(volatile unsigned long *)0x4002C024)
+#define IOCON_P1_20        (*(volatile unsigned long *)0x4002C0D0)
+#define IOCON_P1_21        (*(volatile unsigned long *)0x4002C0D4)
+#define IOCON_P1_22        (*(volatile unsigned long *)0x4002C0D8)
+#define IOCON_P1_23        (*(volatile unsigned long *)0x4002C0DC)
+#define IOCON_P1_24        (*(volatile unsigned long *)0x4002C0E0)
+#define IOCON_P1_25        (*(volatile unsigned long *)0x4002C0E4)
+#define IOCON_P1_26        (*(volatile unsigned long *)0x4002C0E8)
+#define IOCON_P1_27        (*(volatile unsigned long *)0x4002C0EC)
+#define IOCON_P1_28        (*(volatile unsigned long *)0x4002C0F0)
+#define IOCON_P1_29        (*(volatile unsigned long *)0x4002C0F4)
+#define IOCON_P2_0         (*(volatile unsigned long *)0x4002C100)
+#define IOCON_P2_1         (*(volatile unsigned long *)0x4002C104)
+#define IOCON_P2_2         (*(volatile unsigned long *)0x4002C108)
+#define IOCON_P2_3         (*(volatile unsigned long *)0x4002C10C)
+#define IOCON_P2_4         (*(volatile unsigned long *)0x4002C110)
+#define IOCON_P2_5         (*(volatile unsigned long *)0x4002C114)
+#define IOCON_P2_6         (*(volatile unsigned long *)0x4002C118)
+#define IOCON_P2_7         (*(volatile unsigned long *)0x4002C11C)
+#define IOCON_P2_8         (*(volatile unsigned long *)0x4002C120)
+#define IOCON_P2_9         (*(volatile unsigned long *)0x4002C124)
+#define IOCON_P2_11        (*(volatile unsigned long *)0x4002C12C)
+#define IOCON_P2_12        (*(volatile unsigned long *)0x4002C130)
+#define IOCON_P2_13        (*(volatile unsigned long *)0x4002C134)
+#define IOCON_P4_28        (*(volatile unsigned long *)0x4002C270)
+#define IOCON_P4_29        (*(volatile unsigned long *)0x4002C274)
+
+// LCD Port Enable
+#define LCDPE           1
+
+// LCD controller registers
+// LCD configuration register
+#define LCD_CFG         (*(volatile unsigned long *)0x400FC1B8)
+
+// LCD Controller Base Address
+#define LCD_BASE       0x20088000
+
+// Horizontal Timing Control
+#define LCD_TIMH       (*(volatile unsigned long *)(LCD_BASE+0x000))
+// Vertical Timing Control
+#define LCD_TIMV       (*(volatile unsigned long *)(LCD_BASE+0x004))
+// Clock and Signal Polarity Control register
+#define LCD_POL        (*(volatile unsigned long *)(LCD_BASE+0x008))
+// Line End Control register
+#define LCD_LE         (*(volatile unsigned long *)(LCD_BASE+0x00C))
+// Upper Panel Frame Base Address register
+#define LCD_UPBASE     (*(volatile unsigned long *)(LCD_BASE+0x010))
+// Lower Panel Frame Base Address register
+#define LCD_LPBASE     (*(volatile unsigned long *)(LCD_BASE+0x014))
+// LCD Control register
+#define LCD_CTRL       (*(volatile unsigned long *)(LCD_BASE+0x018))
+// Interrupt Mask register
+#define LCD_INTMSK     (*(volatile unsigned long *)(LCD_BASE+0x01C))
+// Raw Interrupt Status register
+#define LCD_INTRAW     (*(volatile unsigned long *)(LCD_BASE+0x020))
+// Masked Interrupt Status register
+#define LCD_INTSTAT    (*(volatile unsigned long *)(LCD_BASE+0x024))
+// Interrupt Clear register
+#define LCD_INTCLR     (*(volatile unsigned long *)(LCD_BASE+0x028))
+// Upper Panel Current Address Value register
+#define LCD_UPCURR     (*(volatile unsigned long *)(LCD_BASE+0x02C))
+// Lower Panel Current Address Value register
+#define LCD_LPCURR     (*(volatile unsigned long *)(LCD_BASE+0x030))
+// 256x16-bit Color Palette registers
+#define LCD_PAL        (*(volatile unsigned long *)(LCD_BASE+0x200))
+// Cursor Image registers
+#define CRSR_IMG       (*(volatile unsigned long *)(LCD_BASE+0x800))
+// Cursor Control register
+#define CRSR_CTRL      (*(volatile unsigned long *)(LCD_BASE+0xC00))
+
+// LCD controller enable bit
+#define LCDEN          0
+// LCD controller power bit
+#define LCDPWR         11
+// Bypass pixel clock divider - for TFT display must be 1
+#ifdef GuiConst_COLOR_DEPTH_1
+#define BCD            0
+#else
+#define BCD            1
+#endif
+// Adjust these values according your display
+// PLL clock prescaler selection - only odd numbers 0,1,3,5,..255
+// 0 - PLL/1, 1 - PLL/2, 3 - PLL/4
+#define PLLDIV         0
+// LCD panel clock prescaler selection,  range 0 - 31
+// LCD freq = MCU freq /(CLKDIV+1)
+#define CLKDIV         7
+// Horizontal back porch in pixels, range 3 - 256
+#ifdef GuiConst_COLOR_DEPTH_1
+#define HBP            5
+#else
+#define HBP            40
+#endif
+// Horizontal front porch in pixels, range 3 - 256
+#ifdef GuiConst_COLOR_DEPTH_1
+#define HFP            5
+#else
+#define HFP            79
+#endif
+// Horizontal synchronization pulse width in pixels, range 3 - 256
+#ifdef GuiConst_COLOR_DEPTH_1
+#define HSW            3
+#else
+#define HSW            48
+#endif
+// Pixels-per-line in pixels, must be multiple of 16
+#define PPL            GuiConst_DISPLAY_WIDTH_HW
+// Vertical back porch in lines, range 1 - 256
+#ifdef GuiConst_COLOR_DEPTH_1
+#define VBP            2
+#else
+#define VBP            29
+#endif
+// Vertical front porch in lines, range 1 - 256
+#ifdef GuiConst_COLOR_DEPTH_1
+#define VFP            2
+#else
+#define VFP            40
+#endif
+// Vertical synchronization pulse width in lines, range 1 - 31
+#ifdef GuiConst_COLOR_DEPTH_1
+#define VSW            1
+#else
+#define VSW            3
+#endif
+// Lines per panel
+#define LPP            GuiConst_BYTE_LINES
+// Clocks per line
+#ifdef GuiConst_COLOR_DEPTH_1
+#define CPL            GuiConst_DISPLAY_WIDTH_HW/4
+#else
+#define CPL            GuiConst_DISPLAY_WIDTH_HW
+#endif
+// Invert output enable
+// 0 = LCDENAB output pin is active HIGH in TFT mode
+// 1 = LCDENAB output pin is active LOW in TFT mode
+#define IOE            0
+// Invert panel clock
+// 0 = Data is driven on the LCD data lines on the rising edge of LCDDCLK
+// 1 = Data is driven on the LCD data lines on the falling edge of LCDDCLK
+#define IPC            0
+// Invert horizontal synchronization
+// 0 = LCDLP pin is active HIGH and inactive LOW
+// 1 = LCDLP pin is active LOW and inactive HIGH
+#ifdef GuiConst_COLOR_DEPTH_1
+#define IHS            0
+#else
+#define IHS            1
+#endif
+// IVS Invert vertical synchronization
+// 0 = LCDFP pin is active HIGH and inactive LOW
+// 1 = LCDFP pin is active LOW and inactive HIGH
+#ifdef GuiConst_COLOR_DEPTH_1
+#define IVS            0
+#else
+#define IVS            1
+#endif
+// Lower five bits of panel clock divisor
+#define PCD_LO         2
+// CLKSEL Clock Select
+// 0 = the clock source for the LCD block is CCLK
+// 1 = the clock source for the LCD block is LCD_DCLK
+#define CLKSEL         0
+
+/****************************************************************************/
+/* IMPORTANT!!!                                                             */
+/****************************************************************************/
+// Set start address of frame buffer in RAM memory
+// 0x4000 0000 - 0x4000 FFFF RAM (64 kB)
+// 0x8000 0000 - 0x80FF FFFF Static memory bank 0 (16 MB)
+// 0x8100 0000 - 0x81FF FFFF Static memory bank 1 (16 MB)
+// 0xA000 0000 - 0xAFFF FFFF Dynamic memory bank 0 (256 MB)
+// 0xB000 0000 - 0xBFFF FFFF Dynamic memory bank 1 (256 MB)
+//#define FRAME_ADDRESS  0xA0000008
+//#define FRAME_ADDRESS  0xA00017D8 // As of 26 Oct 2016
+#define FRAME_ADDRESS (frameAddress) // Use the static variable set at the top of this file
+/****************************************************************************/
+
+// Address of pallete registers
+#define PALETTE_RAM_ADDR LCD_PAL
+
+// Delay routine
+// This constant must be adjusted according to speed of microcontroller
+#define ONE_MS               100
+// Param msec is delay in miliseconds
+void millisecond_delay(GuiConst_INT32U msec)
+{
+#ifdef USE_WAIT_MS
+  EasyGUIWaitMs(msec);
+#else
+  GuiConst_INT32U j;
+
+  for (j = 0; j < (ONE_MS * msec) ; j++);
+#endif
+}
+
+// Initialises the module and the display
+void GuiDisplay_Init (void)
+{
+//  return; // Test - do we need any display initialisation here? Let the BIOS do it?
+          // No flickering - but red and blue reversed (again)
+// So - can we reinstate some of the code in this function, and get the red and blue 
+// the correct way round without flickering?
+//#define ALLOW_LPC4088_INIT
+// Now allowing initialisation of the LCD control register even with ALLOW_LPC4088_INIT not #defined.
+// This appears to have eliminated the flickering while keeping the red and blue components 
+// the correct way round.
+  
+  GuiConst_INT32U i;
+#ifdef GuiConst_COLOR_DEPTH_24
+  GuiConst_INT32U *framePtr;
+#else
+#ifdef GuiConst_COLOR_DEPTH_16
+  GuiConst_INT16U *framePtr;
+#else
+  GuiConst_INT32U PaletteData;
+  GuiConst_INT8U *framePtr;
+  GuiConst_INT32U * pDst;
+#endif
+#endif
+
+//  SetupQSPIBitmapArray(1);
+
+/**************************************************/
+/* Carefully adjust the IO pins for your system   */
+/* Following settings for TFT panel 16/24 bit     */
+/**************************************************/
+
+/* *** DEBUG *** COMMENT OUT THIS BLOCK OF CODE - WHAT HAPPENS?
+// PI         SETTING     RGB888      RGB565
+  IOCON_P1_29  |= 7;   // BLUE7       BLUE4
+  IOCON_P1_28  |= 7;   // BLUE6       BLUE3
+  IOCON_P1_27  |= 7;   // BLUE5       BLUE2
+  IOCON_P1_26  |= 7;   // BLUE4       BLUE1
+  IOCON_P2_13  |= 7;   // BLUE3       BLUE0
+  //IOCON_P2_12  |= 7;   // BLUE2       -       !! Comment out for RGB565
+  //IOCON_P0_9   |= 7;   // BLUE1       -       !! Comment out for RGB565
+  //IOCON_P0_8   |= 7;   // BLUE0       -       !! Comment out for RGB565
+  IOCON_P1_25  |= 7;   // GREEN7      GREEN5
+  IOCON_P1_24  |= 7;   // GREEN6      GREEN4
+  IOCON_P1_23  |= 7;   // GREEN5      GREEN3
+  IOCON_P1_22  |= 7;   // GREEN4      GREEN2
+  IOCON_P1_21  |= 7;   // GREEN3      GREEN1
+  IOCON_P1_20  |= 7;   // GREEN2      GREEN0
+  //IOCON_P0_7   |= 7;   // GREEN1      -       !! Comment out for RGB565
+  //IOCON_P0_6   |= 7;   // GREEN0      -       !! Comment out for RGB565
+  IOCON_P2_9   |= 7;   // RED7        RED4
+  IOCON_P2_8   |= 7;   // RED6        RED3
+  IOCON_P2_7   |= 7;   // RED5        RED2
+  IOCON_P2_6   |= 7;   // RED4        RED1
+  //IOCON_P4_29  |= 7;   // RED3        -       !! Comment out for RGB565
+  IOCON_P2_12  |= 5;   // -           RED0  !! Comment out for RGB888 !!
+  //IOCON_P4_28  |= 7;   // RED2        -       !! Comment out for RGB565
+  //IOCON_P0_5   |= 7;   // RED1        -       !! Comment out for RGB565
+  //IOCON_P0_4   |= 7;   // RED0        -       !! Comment out for RGB565
+  IOCON_P2_5   |= 7;   // LCD_LP      LCD_LP
+  IOCON_P2_4   |= 7;   // LCD_ENAB_M  LCD_ENAB_M
+  IOCON_P2_3   |= 7;   // LCD_FP      LCD_FP
+  IOCON_P2_2   |= 7;   // LCD_DCLK    LCD_DCLK
+  IOCON_P2_1   |= 7;   // LCD_LE      LCD_LE
+  IOCON_P2_0   |= 7;   // LCD_PWR     LCD_PWR
+  IOCON_P2_11  |= 7;   // LCD_CLKIN   LCD_CLKIN
+*/ // DEBUG - ANSWER - *** EVERYTHING STILL APPEARS TO WORK ***
+
+/**************************************************/
+
+//  SetupQSPIBitmapArray(2);
+  
+#ifdef ALLOW_LPC4088_INIT
+  // Disable power
+  LCD_CTRL &= ~(1 << LCDEN);
+  millisecond_delay(100);
+  LCD_CTRL &= ~(1 << LCDPWR);
+  
+  // ====================================
+  // Initialize Clock(PLL),EMC and SDRAM!
+  // ====================================
+
+  // Enable LCD controller
+  PCONP |= 1<<PCLCD;
+
+  // LCD Configuration init pixel clock
+  LCD_CFG |= (CLKDIV);
+
+  // Horizontal Timing register
+  LCD_TIMH |= ((HBP-1) << 24)|((HFP-1) << 16)|((HSW-1) << 8)|((PPL/16-1) << 2);
+
+  // Vertical Timing register
+  LCD_TIMV |= (VBP << 24)|(VFP << 16)|((VSW-1) << 10)|(LPP-1);
+
+  // Clock and Signal Polarity register
+  LCD_POL |= (BCD << 26)|((CPL-1) << 16)|(IOE << 14)|(IPC << 13)|
+             (IHS << 12)|(IVS << 11)|(CLKSEL << 5)| PCD_LO;
+
+  LCD_LE = 0;
+  LCD_INTMSK = 0;
+
+#endif // ALLOW_LPC4088_INIT
+// If we include the initialisation of the LCD control register,
+// does this get red and blue the correct way round without flickering?
+
+  // LCD Control register
+#ifdef GuiConst_COLOR_DEPTH_24
+  // TFT single panel,24bit, normal output
+  LCD_CTRL = 0x0000002A;
+#else
+#ifdef GuiConst_COLOR_DEPTH_16
+  // TFT single panel,16bit, normal output (BGR)
+  LCD_CTRL = 0x0000102C;
+#else
+#ifdef GuiConst_COLOR_DEPTH_8
+  // TFT single panel,8bit, normal output
+  LCD_CTRL = 0x00000026;
+#else
+  // STN single panel, monochrome, 4bit bus, normal output
+  LCD_CTRL = 0x00000010;
+#endif
+#endif
+#endif
+
+
+#ifdef GuiConst_COLOR_DEPTH_24
+  framePtr = (GuiConst_INT32U *)FRAME_ADDRESS;
+#else
+#ifdef GuiConst_COLOR_DEPTH_16
+  framePtr = (GuiConst_INT16U *)FRAME_ADDRESS;
+#else
+  framePtr = (GuiConst_INT8U *)FRAME_ADDRESS;
+  pDst = (GuiConst_INT32U *)PALETTE_RAM_ADDR;
+  for (i = 0; i < 128; i++)
+  {
+#ifdef GuiConst_COLOR_DEPTH_1
+    PaletteData = 0xFFFF0000;
+#else
+    PaletteData = GuiStruct_Palette[2*i][0];
+    PaletteData |= (GuiConst_INT32U)GuiStruct_Palette[2*i][1]<<8;
+    PaletteData |= (GuiConst_INT32U)GuiStruct_Palette[2*i+1][0]<<16;
+    PaletteData |= (GuiConst_INT32U)GuiStruct_Palette[2*i+1][1]<<24;
+#endif
+    *pDst++ = PaletteData;
+  }
+#endif
+#endif
+
+  // Clear frame buffer by copying the data into frame buffer
+#ifdef GuiConst_COLOR_DEPTH_24
+  for (i = 0; i < GuiConst_DISPLAY_BYTES/3; i++)
+    *framePtr++ = 0x00000000; // Color
+#else
+#ifdef GuiConst_COLOR_DEPTH_16
+    for (i = 0; i < GuiConst_DISPLAY_BYTES/2; i++)
+    *framePtr++ = 0x0000; // Color
+#else
+  for (i = 0; i < GuiConst_DISPLAY_BYTES; i++)
+    *framePtr++ = 0x00;  // Color
+#endif
+#endif
+
+//  LCD_CFG = 0;
+
+  millisecond_delay(100);
+  // Power-up sequence
+  LCD_CTRL |= 1<<LCDEN;
+  // Apply contrast voltage to LCD panel
+  // (not controlled or supplied by the LCD controller)
+  millisecond_delay(100);
+  LCD_CTRL |= 1<<LCDPWR;
+
+  // Set start address of frame buffer in RAM memory
+  LCD_LPBASE = FRAME_ADDRESS;
+  LCD_UPBASE = FRAME_ADDRESS;
+}
+
+#ifdef WANT_DOUBLE_BUFFERING
+// *** Need complete GuiDisplay_Refresh ***
+
+// Refreshes display buffer to display
+void GuiDisplay_Refresh (void)
+{
+  GuiConst_INT32U Pixel, X, Y, LastByte;
+#ifdef GuiConst_COLOR_DEPTH_24
+  GuiConst_INT32U *framePtr;
+#else
+#ifdef GuiConst_COLOR_DEPTH_16
+  GuiConst_INT16U *framePtr;
+#else
+  // Valid also for monochrome STN display
+  GuiConst_INT8U *framePtr;
+#endif
+#endif
+
+  GuiDisplay_Lock ();
+
+  // Walk through all lines
+  for (Y = 0; Y < GuiConst_BYTE_LINES; Y++)
+  {
+    if (GuiLib_DisplayRepaint[Y].ByteEnd >= 0)
+    // Something to redraw in this line
+    {
+#ifdef GuiConst_COLOR_DEPTH_24
+      // Set video ram base address
+      framePtr = (GuiConst_INT32U *)FRAME_ADDRESS;
+      // Pointer offset calculation
+      framePtr += Y * GuiConst_BYTES_PR_LINE/3 +
+                  GuiLib_DisplayRepaint[Y].ByteBegin;
+      // Set amount of data to be changed
+      LastByte = GuiConst_BYTES_PR_LINE/3 - 1;
+#else
+#ifdef GuiConst_COLOR_DEPTH_16
+      // Set video ram base address
+      framePtr = (GuiConst_INT16U *)FRAME_ADDRESS;
+      // Pointer offset calculation
+      framePtr += Y * GuiConst_BYTES_PR_LINE/2 +
+                  GuiLib_DisplayRepaint[Y].ByteBegin;
+      // Set amount of data to be changed
+      LastByte = GuiConst_BYTES_PR_LINE/2 - 1;
+#else
+      // Valid also for monochrome STN display
+      // Set video ram base address
+      framePtr = (GuiConst_INT8U *)FRAME_ADDRESS;
+      // Pointer offset calculation
+      framePtr += Y * GuiConst_BYTES_PR_LINE +
+                  GuiLib_DisplayRepaint[Y].ByteBegin;
+      // Set amount of data to be changed
+      LastByte = GuiConst_BYTES_PR_LINE - 1;
+#endif
+#endif
+      if (GuiLib_DisplayRepaint[Y].ByteEnd < LastByte)
+        LastByte = GuiLib_DisplayRepaint[Y].ByteEnd;
+
+      // Write data for one line to framebuffer from GuiLib_DisplayBuf
+#ifdef GuiConst_COLOR_DEPTH_24
+      for (X = GuiLib_DisplayRepaint[Y].ByteBegin * 3;
+               X <= (LastByte * 3 + 2);
+               X = X + 3)
+      {
+        Pixel = GuiLib_DisplayBuf[Y][X];
+        Pixel |= (GuiConst_INT32U)GuiLib_DisplayBuf[Y][X+1]<<8;
+        Pixel |= (GuiConst_INT32U)GuiLib_DisplayBuf[Y][X+2]<<16;
+        *framePtr++ = Pixel;
+      }
+#else
+#ifdef GuiConst_COLOR_DEPTH_16
+      for (X = GuiLib_DisplayRepaint[Y].ByteBegin; X <= LastByte; X++)
+      {
+        *framePtr++ = GuiLib_DisplayBuf.Words[Y][X];
+      }
+#else
+      // Valid also for monochrome STN display
+      for (X = GuiLib_DisplayRepaint[Y].ByteBegin; X <= LastByte; X++)
+        *framePtr++ = GuiLib_DisplayBuf[Y][X];
+#endif
+#endif
+      // Reset repaint parameters
+      GuiLib_DisplayRepaint[Y].ByteEnd = -1;
+    }
+  }
+  GuiDisplay_Unlock ();
+}
+
+#else // WANT_DOUBLE_BUFFERING
+
+// We are already writing direct to the display - 
+// GuiDisplay_Refresh does not need to do anything
+// (but other code still expects it to exist)
+void GuiDisplay_Refresh (void)
+{
+}
+
+#endif // WANT_DOUBLE_BUFFERING
+
+#endif // LCD_CONTROLLER_TYPE_LPC408X
+
+// ============================================================================
+//
+// DISPLAY DRIVER PART ENDS
+//
+// ============================================================================
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiDisplay.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,33 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2014 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                       easyGUI display driver unit                        */
+/*                               v6.0.23.002                                */
+/*                                                                          */
+/* ************************************************************************ */
+
+#ifndef __GUIDISPLAY_H
+#define __GUIDISPLAY_H
+
+#ifdef __cplusplus /* If this is a C++ compiler, use C linkage */
+extern "C" {
+#endif
+
+#include "GuiConst.h"
+#ifndef GuiConst_CODEVISION_COMPILER
+#include "GuiLib.h"
+#endif
+
+extern void GuiDisplay_Lock (void);
+extern void GuiDisplay_Unlock (void);
+extern void GuiDisplay_Init (void);
+extern void GuiDisplay_Refresh (void);
+
+#ifdef __cplusplus /* If this is a C++ compiler, end C linkage */
+}
+#endif
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiGraph.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,1750 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2015 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                         Graphics include library                         */
+/*                               v6.0.9.005                                 */
+/*                                                                          */
+/*     GuiLib.c include file - do NOT reference it in your linker setup     */
+/*                                                                          */
+/* ************************************************************************ */
+
+//==============================================================================
+#define GuiLib_DEG              10
+#define GuiLib_DEG360           360 * GuiLib_DEG
+
+#define GuiLib_RAD              4096
+#define GuiLib_RAD_QUARTER_PI   3217
+#define GuiLib_RAD_HALF_PI      6434
+#define GuiLib_RAD_PI           12868
+#define GuiLib_RAD_2_PI         25736
+#define GuiLib_RAD_TO_DEG       573
+
+//==============================================================================
+
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_DegToRad(
+   GuiConst_INT32S Angle)
+{
+  return ((GuiLib_RAD * Angle) / GuiLib_RAD_TO_DEG);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_RadToDeg(
+   GuiConst_INT32S Angle)
+{
+  return ((GuiLib_RAD_TO_DEG * Angle) / GuiLib_RAD);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_SinRad(
+   GuiConst_INT32S Angle)
+{
+  GuiConst_INT32S A, B, X2;
+
+  Angle %= GuiLib_RAD_2_PI;
+
+  if (Angle > GuiLib_RAD_PI)
+    X2 = GuiLib_RAD_2_PI - Angle;
+  else
+    X2 = Angle;
+  if (X2 > GuiLib_RAD_HALF_PI)
+    X2 = GuiLib_RAD_PI - X2;
+
+  A = ((((X2 * X2) >> 12) * X2) / 6) >> 12;
+  B = ((((A * X2) >> 12) * X2) / 20) >> 12;
+  B = X2 - A + B - ((((B * X2) / 42) * X2) >> 24);
+
+  if (Angle > GuiLib_RAD_PI)
+    return (-B);
+  else
+    return (B);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_SinDeg(
+   GuiConst_INT32S Angle)
+{
+  return (GuiLib_SinRad(GuiLib_DegToRad(Angle)));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_CosRad(
+   GuiConst_INT32S Angle)
+{
+  GuiConst_INT32S A, B, C, X2;
+
+  Angle %= GuiLib_RAD_2_PI;
+
+  if (Angle > GuiLib_RAD_PI)
+    Angle = GuiLib_RAD_2_PI - Angle;
+  if (Angle > GuiLib_RAD_HALF_PI)
+    X2 = GuiLib_RAD_PI - Angle;
+  else
+    X2 = Angle;
+
+  A = (X2 * X2) >> 13;
+  B = ((((A * X2) >> 12) * X2) / 12) >> 12;
+  C = (((B * X2) / 30) * X2) >> 24;
+  C = GuiLib_RAD - A + B - C + (((((C * X2) / 8) * X2) / 7) >> 24);
+  if (Angle > GuiLib_RAD_HALF_PI)
+    return (-C);
+  else
+    return (C);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32S GuiLib_CosDeg(
+   GuiConst_INT32S Angle)
+{
+  return (GuiLib_CosRad(GuiLib_DegToRad(Angle)));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_Sqrt(
+   GuiConst_INT32U X)
+{
+  GuiConst_INT32U X1, X2;
+
+  if (X == 0)
+    return (0);
+
+  X1 = (X / 2) + 1;
+  X2 = (X1 + (X / X1)) / 2;
+  while (X2 < X1)
+  {
+    X1 = X2;
+    X2 = (X1 + (X / X1)) / 2;
+  }
+  return (X1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_GetRedRgbColor(
+   GuiConst_INT32U RgbColor)
+{
+  return (RgbColor & 0x000000FF);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_SetRedRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT8U RedColor)
+{
+  return ((RgbColor & 0x00FFFF00) | RedColor);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_GetGreenRgbColor(
+   GuiConst_INT32U RgbColor)
+{
+  return (GuiConst_INT8U)((RgbColor & 0x0000FF00) >> 8);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_SetGreenRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT8U GreenColor)
+{
+  return ((RgbColor & 0x00FF00FF) | ((GuiConst_INT32U)GreenColor << 8));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_GetBlueRgbColor(
+   GuiConst_INT32U RgbColor)
+{
+  return (GuiConst_INT8U)((RgbColor & 0x00FF0000) >> 16);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_SetBlueRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT8U BlueColor)
+{
+  return ((RgbColor & 0xFF00FFFF) | ((GuiConst_INT32U)BlueColor << 16));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_RgbToPixelColor(
+   GuiConst_INT32U RgbColor)
+{
+#ifdef GuiConst_COLOR_MODE_GRAY
+  return ((GuiConst_COLOR_MAX *
+     (GuiConst_INT16U)GuiLib_RgbColorToGrayScale(RgbColor)) / 255);
+#else
+#ifdef GuiConst_COLOR_MODE_PALETTE
+  GuiConst_INT16U ColorR, ColorG, ColorB;
+  GuiConst_INT16U I, I2, byte, shift;
+  GuiConst_INT16U Rating, NewRating;
+  GuiConst_INT32U PColor;
+
+  ColorR = RgbColor & 0x000000FF;
+  ColorG = (RgbColor & 0x0000FF00) >> 8;
+  ColorB = (RgbColor & 0x00FF0000) >> 16;
+#ifndef GuiConst_COLOR_RGB_STANDARD
+  ColorR = (GuiConst_COLORCODING_R_MAX * ColorR) / 255;
+  ColorG = (GuiConst_COLORCODING_G_MAX * ColorG) / 255;
+  ColorB = (GuiConst_COLORCODING_B_MAX * ColorB) / 255;
+#endif
+  Rating = 0xFFFF;
+  for (I = 0; I < GuiConst_PALETTE_SIZE; I++)
+  {
+    PColor = 0;
+    for (byte=0,shift=0;byte < GuiConst_COLOR_BYTE_SIZE; byte++, shift +=8)
+      PColor |= ((GuiConst_INT32U)GuiStruct_Palette[I][byte] << shift);
+
+    NewRating =
+       abs(ColorR - ((PColor & GuiConst_COLORCODING_R_MASK) >>
+       GuiConst_COLORCODING_R_START)) +
+       abs(ColorG - ((PColor & GuiConst_COLORCODING_G_MASK) >>
+       GuiConst_COLORCODING_G_START)) +
+       abs(ColorB - ((PColor & GuiConst_COLORCODING_B_MASK) >>
+       GuiConst_COLORCODING_B_START));
+    if (NewRating < Rating)
+    {
+      Rating = NewRating;
+      I2 = I;
+    }
+  }
+  return (I2);
+#else
+#ifdef GuiConst_COLOR_RGB_STANDARD
+  return (RgbColor);
+#else
+  return ((((GuiConst_COLORCODING_R_MAX *
+     (RgbColor & 0x000000FF)) / 255) << GuiConst_COLORCODING_R_START) |
+     (((GuiConst_COLORCODING_G_MAX *
+     ((RgbColor & 0x0000FF00) >> 8)) / 255) << GuiConst_COLORCODING_G_START) |
+     (((GuiConst_COLORCODING_B_MAX *
+     ((RgbColor & 0x00FF0000) >> 16)) / 255) << GuiConst_COLORCODING_B_START));
+#endif
+#endif
+#endif
+}
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_Rgb888ToPixelColor(
+   GuiConst_INT8U Red, GuiConst_INT8U Green, GuiConst_INT8U Blue)
+{
+#ifdef GuiConst_COLOR_MODE_GRAY
+  return ((GuiConst_COLOR_MAX *
+     (GuiConst_INT16U)GuiLib_Rgb888ColorToGrayScale(Red, Green, Blue)) / 255);
+#else
+#ifdef GuiConst_COLOR_MODE_PALETTE
+  GuiConst_INT16U ColorR, ColorG, ColorB;
+  GuiConst_INT16U I, I2, byte, shift;
+  GuiConst_INT16U Rating, NewRating;
+  GuiConst_INT32U PColor;
+
+  ColorR = Red;
+  ColorG = Green;
+  ColorB = Blue;
+#ifndef GuiConst_COLOR_RGB_STANDARD
+  ColorR = (GuiConst_COLORCODING_R_MAX * ColorR) / 255;
+  ColorG = (GuiConst_COLORCODING_G_MAX * ColorG) / 255;
+  ColorB = (GuiConst_COLORCODING_B_MAX * ColorB) / 255;
+#endif
+  Rating = 0xFFFF;
+  for (I = 0; I < GuiConst_PALETTE_SIZE; I++)
+  {
+    PColor = 0;
+    for (byte=0,shift=0;byte < GuiConst_COLOR_BYTE_SIZE; byte++, shift +=8)
+      PColor |= ((GuiConst_INT32U)GuiStruct_Palette[I][byte] << shift);
+
+    NewRating =
+       abs(ColorR - ((PColor & GuiConst_COLORCODING_R_MASK) >>
+       GuiConst_COLORCODING_R_START)) +
+       abs(ColorG - ((PColor & GuiConst_COLORCODING_G_MASK) >>
+       GuiConst_COLORCODING_G_START)) +
+       abs(ColorB - ((PColor & GuiConst_COLORCODING_B_MASK) >>
+       GuiConst_COLORCODING_B_START));
+    if (NewRating < Rating)
+    {
+      Rating = NewRating;
+      I2 = I;
+    }
+  }
+  return (I2);
+#else
+#ifdef GuiConst_COLOR_RGB_STANDARD
+  return (Red | (Green << 8) | (Blue << 16));
+#else
+  return ((((GuiConst_COLORCODING_R_MAX * Red) / 255)
+              << GuiConst_COLORCODING_R_START) |
+          (((GuiConst_COLORCODING_G_MAX * Green) / 255)
+              << GuiConst_COLORCODING_G_START) |
+          (((GuiConst_COLORCODING_B_MAX * Blue) / 255)
+              << GuiConst_COLORCODING_B_START));
+#endif
+#endif
+#endif
+}
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_PixelToRgbColor(
+   GuiConst_INTCOLOR PixelColor)
+{
+#ifdef GuiConst_COLOR_MODE_GRAY
+  GuiConst_INT16U GrayValue;
+
+  GrayValue = (255 * PixelColor) / GuiConst_COLOR_MAX;
+  return (GuiLib_GrayScaleToRgbColor((GuiConst_INT8U)GrayValue));
+#else
+  GuiConst_INT32U PColor;
+#ifdef GuiConst_COLOR_MODE_PALETTE
+  GuiConst_INT16U byte, shift;
+#endif
+#ifndef GuiConst_COLOR_RGB_STANDARD
+  GuiConst_INT32U ColorR, ColorG, ColorB;
+#endif
+
+#ifdef GuiConst_COLOR_MODE_PALETTE
+  PColor = 0;
+  for (byte=0,shift=0;byte < GuiConst_COLOR_BYTE_SIZE; byte++, shift +=8)
+    PColor |= ((GuiConst_INT32U)GuiStruct_Palette[PixelColor][byte] << shift);
+#else
+  PColor = PixelColor;
+#endif
+
+#ifdef GuiConst_COLOR_RGB_STANDARD
+  return (PColor);
+#else
+  ColorR =
+     (PColor & GuiConst_COLORCODING_R_MASK) >> GuiConst_COLORCODING_R_START;
+  ColorG =
+     (PColor & GuiConst_COLORCODING_G_MASK) >> GuiConst_COLORCODING_G_START;
+  ColorB =
+     (PColor & GuiConst_COLORCODING_B_MASK) >> GuiConst_COLORCODING_B_START;
+  ColorR = (255 * ColorR) / GuiConst_COLORCODING_R_MAX;
+  ColorG = (255 * ColorG) / GuiConst_COLORCODING_G_MAX;
+  ColorB = (255 * ColorB) / GuiConst_COLORCODING_B_MAX;
+  return (ColorR | (ColorG << 8) | (ColorB << 16));
+#endif
+#endif
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_RgbColorToGrayScale(
+   GuiConst_INT32U RgbColor)
+{
+  return (((RgbColor & 0x000000FF) +
+     ((RgbColor & 0x0000FF00) >> 8) +
+     ((RgbColor & 0x00FF0000) >> 16)) / 3);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_Rgb888ColorToGrayScale(
+   GuiConst_INT8U Red, GuiConst_INT8U Green, GuiConst_INT8U Blue)
+{
+  return ((Red + Green + Blue) / 3);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_GrayScaleToRgbColor(
+   GuiConst_INT8U GrayValue)
+{
+  return ((GuiConst_INT32U)GrayValue |
+         ((GuiConst_INT32U)GrayValue << 8) |
+         ((GuiConst_INT32U)GrayValue << 16));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_PixelColorToGrayScale(
+   GuiConst_INTCOLOR PixelColor)
+{
+  return (GuiLib_RgbColorToGrayScale(GuiLib_PixelToRgbColor(PixelColor)));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_GrayScaleToPixelColor(
+   GuiConst_INT8U GrayValue)
+{
+  return (GuiLib_RgbToPixelColor(GuiLib_GrayScaleToRgbColor(GrayValue)));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_BrightenRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount)
+{
+  GuiConst_INT32U ColorR, ColorG, ColorB;
+
+  if (Amount == 0)
+    return (RgbColor);
+  else
+  {
+    ColorR = 255 - ((GuiConst_INT32U)(255 - GuiLib_GetRedRgbColor(RgbColor)) *
+       (1000 - Amount) / 1000);
+    ColorG = 255 - ((GuiConst_INT32U)(255 - GuiLib_GetGreenRgbColor(RgbColor)) *
+       (1000 - Amount) / 1000);
+    ColorB = 255 - ((GuiConst_INT32U)(255 - GuiLib_GetBlueRgbColor(RgbColor)) *
+       (1000 - Amount) / 1000);
+    return (ColorR | (ColorG << 8) | (ColorB << 16));
+  }
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_BrightenPixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount)
+{
+  return (GuiLib_RgbToPixelColor(
+     GuiLib_BrightenRgbColor(GuiLib_PixelToRgbColor(PixelColor), Amount)));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_DarkenRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount)
+{
+  GuiConst_INT32U ColorR, ColorG, ColorB;
+
+  if (Amount == 0)
+    return (RgbColor);
+  else
+  {
+    ColorR = (GuiConst_INT32U)GuiLib_GetRedRgbColor(RgbColor) *
+       (1000 - Amount) / 1000;
+    ColorG = (GuiConst_INT32U)GuiLib_GetGreenRgbColor(RgbColor) *
+       (1000 - Amount) / 1000;
+    ColorB = (GuiConst_INT32U)GuiLib_GetBlueRgbColor(RgbColor) *
+       (1000 - Amount) / 1000;
+    return (ColorR | (ColorG << 8) | (ColorB << 16));
+  }
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_DarkenPixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount)
+{
+  return (GuiLib_RgbToPixelColor(
+     GuiLib_DarkenRgbColor(GuiLib_PixelToRgbColor(PixelColor), Amount)));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_MiddleRgbColor(
+   GuiConst_INT32U RgbColor1,
+   GuiConst_INT32U RgbColor2,
+   GuiConst_INT16U Amount)
+{
+  GuiConst_INT32S ColorR, ColorG, ColorB;
+
+  if (Amount == 0)
+    return (RgbColor1);
+  else if (Amount >= 1000)
+    return (RgbColor2);
+  else
+  {
+    ColorR = (GuiConst_INT32U)GuiLib_GetRedRgbColor(RgbColor1);
+    ColorR = ColorR + (((GuiConst_INT32S)Amount *
+       ((GuiConst_INT32S)GuiLib_GetRedRgbColor(RgbColor2) - ColorR)) / 1000);
+    ColorG = (GuiConst_INT32U)GuiLib_GetGreenRgbColor(RgbColor1);
+    ColorG = ColorG + (((GuiConst_INT32S)Amount *
+       ((GuiConst_INT32S)GuiLib_GetGreenRgbColor(RgbColor2) - ColorG)) / 1000);
+    ColorB = (GuiConst_INT32U)GuiLib_GetBlueRgbColor(RgbColor1);
+    ColorB = ColorB + (((GuiConst_INT32S)Amount *
+       ((GuiConst_INT32S)GuiLib_GetBlueRgbColor(RgbColor2) - ColorB)) / 1000);
+    return (ColorR | (ColorG << 8) | (ColorB << 16));
+  }
+}
+
+// -----------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_MiddlePixelColor(
+   GuiConst_INTCOLOR PixelColor1,
+   GuiConst_INTCOLOR PixelColor2,
+   GuiConst_INT16U Amount)
+{
+  return (GuiLib_RgbToPixelColor(
+     GuiLib_MiddleRgbColor(GuiLib_PixelToRgbColor(PixelColor1),
+                           GuiLib_PixelToRgbColor(PixelColor2),
+                           Amount)));
+}
+
+// -----------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_DesaturateRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount)
+{
+  GuiConst_INT32U GrayValue;
+  GuiConst_INT32U ColorDesat;
+
+  GrayValue = (GuiConst_INT32U)GuiLib_RgbColorToGrayScale(RgbColor);
+  ColorDesat = GrayValue | (GrayValue << 8) | (GrayValue << 16);
+  return (GuiLib_MiddleRgbColor(RgbColor, ColorDesat, Amount));
+}
+
+// -----------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_DesaturatePixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount)
+{
+  return (GuiLib_RgbToPixelColor(
+     GuiLib_DesaturateRgbColor(GuiLib_PixelToRgbColor(PixelColor), Amount)));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT32U GuiLib_AccentuateRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount)
+{
+  if (Amount == 0)
+    return (RgbColor);
+  else if (GuiLib_RgbColorToGrayScale(RgbColor) <= 127)
+    return (GuiLib_BrightenRgbColor(RgbColor, Amount));
+  else
+    return (GuiLib_DarkenRgbColor(RgbColor, Amount));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_AccentuatePixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount)
+{
+  return (GuiLib_RgbToPixelColor(
+     GuiLib_AccentuateRgbColor(GuiLib_PixelToRgbColor(PixelColor), Amount)));
+}
+
+//------------------------------------------------------------------------------
+void Ellipse(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U Radius1,
+   GuiConst_INT16U Radius2,
+   GuiConst_INT32S BorderColor,
+   GuiConst_INT32S FillColor,
+   GuiConst_INT8U Q1,
+   GuiConst_INT8U Q2,
+   GuiConst_INT8U Q3,
+   GuiConst_INT8U Q4)
+{
+  GuiConst_INT16S PX, PY;
+  GuiConst_INT16S L1, L2, LP1, LP2, LX, LY;
+  GuiConst_INT16S PX2, PY2;
+  GuiConst_INTCOLOR BColor;
+  GuiConst_INT8U Filling, LFilling, First;
+  GuiConst_INT16S R1, R2;
+  GuiConst_INT32S R22;
+  GuiConst_INT8U Q12, Q34, Q14, Q23, Qfull;
+
+  Filling = (FillColor != GuiLib_NO_COLOR);
+  if (BorderColor == GuiLib_NO_COLOR)
+  {
+    if (!Filling)
+      return;
+    else
+      BColor = (GuiConst_INTCOLOR)FillColor;
+  }
+  else
+    BColor = (GuiConst_INTCOLOR)BorderColor;
+
+  Q12 = (Q1 || Q2);
+  Q34 = (Q3 || Q4);
+  Q14 = (Q1 || Q4);
+  Q23 = (Q2 || Q3);
+  Qfull = Q1 & Q2 & Q3 & Q4;
+  if (!(Q12 || Q34))
+    return;
+
+  if (Radius1 == 0)
+  {
+    if (Qfull)
+      GuiLib_VLine(X, Y - Radius2, Y + Radius2, BColor);
+    else if (Q12)
+      GuiLib_VLine(X, Y, Y + Radius2, BColor);
+    else
+      GuiLib_VLine(X, Y - Radius2, Y, BColor);
+  }
+  else if (Radius2 == 0)
+  {
+    if (Qfull)
+      GuiLib_HLine(X - Radius1, X + Radius1, Y, BColor);
+    else if (Q14)
+      GuiLib_HLine(X, X + Radius1, Y, BColor);
+    else
+      GuiLib_HLine(X - Radius1, X, Y, BColor);
+  }
+  else if (Radius1 == 1)
+  {
+    PY = Radius2 / 2;
+    if (Q23)
+    {
+      if (Q2 && Q3)
+        GuiLib_VLine(X - 1, Y - PY, Y + PY, BColor);
+      else if (Q2)
+        GuiLib_VLine(X - 1, Y, Y + PY, BColor);
+      else
+        GuiLib_VLine(X - 1, Y - PY, Y, BColor);
+    }
+    if (Q34)
+      GuiLib_VLine(X, Y - Radius2, Y - PY - 1, BColor);
+    if (Filling)
+    {
+      if (Q12 && Q34)
+        GuiLib_VLine(X, Y - PY, Y + PY, (GuiConst_INTCOLOR)FillColor);
+      else if (Q12)
+        GuiLib_VLine(X, Y, Y + PY, (GuiConst_INTCOLOR)FillColor);
+      else
+        GuiLib_VLine(X, Y - PY, Y, (GuiConst_INTCOLOR)FillColor);
+    }
+    if (Q12)
+      GuiLib_VLine(X, Y + PY + 1, Y + Radius2, BColor);
+    if (Q14)
+    {
+      if (Q1 && Q4)
+        GuiLib_VLine(X + 1, Y - PY, Y + PY, BColor);
+      else if (Q1)
+        GuiLib_VLine(X + 1, Y, Y + PY, BColor);
+      else
+        GuiLib_VLine(X + 1, Y - PY, Y, BColor);
+    }
+  }
+  else if (Radius2 == 1)
+  {
+    PX = Radius1 / 2;
+    if (Q34)
+    {
+      if (Q3 && Q4)
+        GuiLib_HLine(X - PX, X + PX, Y - 1, BColor);
+      else if (Q4)
+        GuiLib_HLine(X, X + PX, Y - 1, BColor);
+      else
+        GuiLib_HLine(X - PX, X, Y - 1, BColor);
+    }
+    if (Q23)
+      GuiLib_HLine(X - Radius1, X - PX - 1, Y, BColor);
+    if (Filling)
+    {
+      if (Q14 && Q23)
+        GuiLib_HLine(X - PX, X + PX, Y, (GuiConst_INTCOLOR)FillColor);
+      else if (Q14)
+        GuiLib_HLine(X, X + PX, Y, (GuiConst_INTCOLOR)FillColor);
+      else
+        GuiLib_HLine(X - PX, X, Y, (GuiConst_INTCOLOR)FillColor);
+    }
+    if (Q14)
+      GuiLib_HLine(X + PX + 1, X + Radius1, Y, BColor);
+    if (Q12)
+    {
+      if (Q1 && Q2)
+        GuiLib_HLine(X - PX, X + PX, Y + 1, BColor);
+      else if (Q1)
+        GuiLib_HLine(X, X + PX, Y + 1, BColor);
+      else
+        GuiLib_HLine(X - PX, X, Y + 1, BColor);
+    }
+  }
+  else
+  {
+    R1 = Radius1 << 3;
+    R2 = Radius2 << 3;
+
+    if (Radius1 >= Radius2)
+    {
+      R22 = (GuiConst_INT32S)R2 * R2;
+
+      PX = 0;
+      First = 1;
+      for (PY = R2 - 4; PY >= 4; PY -= 8)
+      {
+        PX2 = PX + 8;
+        PX = (GuiConst_INT16S)((R1 * GuiLib_Sqrt((0x00000400 -
+           ((((GuiConst_INT32S)PY * (PY + 3)) << 10) / R22)) << 8)) >> 9) + 1;
+        LY = (PY + 4) >> 3;
+        if (First)
+        {
+          L1 = X - (PX >> 3);
+          L2 = X + (PX >> 3);
+          if (Q12)
+          {
+            if (Q1 && Q2)
+              GuiLib_HLine(L1, L2, Y + LY, BColor);
+            else if (Q1)
+              GuiLib_HLine(X, L2, Y + LY, BColor);
+            else
+              GuiLib_HLine(L1, X, Y + LY, BColor);
+          }
+          if (Q34)
+          {
+            if (Q3 && Q4)
+              GuiLib_HLine(L1, L2, Y - LY, BColor);
+            else if (Q4)
+              GuiLib_HLine(X, L2, Y - LY, BColor);
+            else
+              GuiLib_HLine(L1, X, Y - LY, BColor);
+          }
+          First = 0;
+        }
+        else
+        {
+          LP1 = X - (PX2 >> 3);
+          LP2 = X + (PX2 >> 3);
+          L1 = X - (PX >> 3);
+          L2 = X + (PX >> 3);
+          if (LP1 < L1)
+          {
+            LP1 = L1;
+            LP2 = L2;
+          }
+          LFilling = Filling & (LP2 - LP1 >= 2);
+
+          if (Q12)
+          {
+            if (Q2)
+              GuiLib_HLine(L1, LP1, Y + LY, BColor);
+            if (LFilling)
+            {
+              if (Q1 && Q2)
+                GuiLib_HLine(LP1 + 1, LP2 - 1, Y + LY,
+                   (GuiConst_INTCOLOR)FillColor);
+              else if (Q1)
+                GuiLib_HLine(X, LP2 - 1, Y + LY, (GuiConst_INTCOLOR)FillColor);
+              else
+                GuiLib_HLine(LP1 + 1, X, Y + LY, (GuiConst_INTCOLOR)FillColor);
+            }
+            if (Q1)
+              GuiLib_HLine(LP2, L2, Y + LY, BColor);
+          }
+          if (Q34)
+          {
+            if (Q3)
+              GuiLib_HLine(L1, LP1, Y - LY, BColor);
+            if (LFilling)
+            {
+              if (Q3 && Q4)
+                GuiLib_HLine(LP1 + 1, LP2 - 1, Y - LY,
+                   (GuiConst_INTCOLOR)FillColor);
+              else if (Q4)
+                GuiLib_HLine(X, LP2 - 1, Y - LY, (GuiConst_INTCOLOR)FillColor);
+              else
+                GuiLib_HLine(LP1 + 1, X, Y - LY, (GuiConst_INTCOLOR)FillColor);
+            }
+            if (Q4)
+              GuiLib_HLine(LP2, L2, Y - LY, BColor);
+          }
+        }
+      }
+      L1 = (PX + 8) >> 3;
+      if (L1 > Radius1)
+        L1 = Radius1;
+
+      if (Q23)
+        GuiLib_HLine(X - Radius1, X - L1, Y, BColor);
+      if (Filling & (L1 >= 1))
+      {
+        if (Q14 && Q23)
+          GuiLib_HLine(X - L1 + 1, X + L1 - 1, Y, (GuiConst_INTCOLOR)FillColor);
+        else if (Q14)
+          GuiLib_HLine(X, X + L1 - 1, Y, (GuiConst_INTCOLOR)FillColor);
+        else
+          GuiLib_HLine(X - L1 + 1, X, Y, (GuiConst_INTCOLOR)FillColor);
+      }
+      if (Q14)
+        GuiLib_HLine(X + L1, X + Radius1, Y, BColor);
+    }
+    else
+    {
+      R22 = (GuiConst_INT32S)R1 * R1;
+
+      PY = 0;
+      First = 1;
+      for (PX = R1 - 4; PX >= 4; PX -= 8)
+      {
+        PY2 = PY + 8;
+        PY = (GuiConst_INT16S)((R2 * GuiLib_Sqrt((0x00000400 -
+           ((((GuiConst_INT32S)PX * (PX + 3)) << 10) / R22)) << 8)) >> 9) + 1;
+        LX = (PX + 4) >> 3;
+        if (First)
+        {
+          L1 = Y - (PY >> 3);
+          L2 = Y + (PY >> 3);
+          if (Q14)
+          {
+            if (Q1 && Q4)
+              GuiLib_VLine(X + LX, L1, L2, BColor);
+            else if (Q1)
+              GuiLib_VLine(X + LX, Y, L2, BColor);
+            else
+              GuiLib_VLine(X + LX, L1, Y, BColor);
+          }
+          if (Q23)
+          {
+            if (Q2 && Q3)
+              GuiLib_VLine(X - LX, L1, L2, BColor);
+            else if (Q2)
+              GuiLib_VLine(X - LX, Y, L2, BColor);
+            else
+              GuiLib_VLine(X - LX, L1, Y, BColor);
+          }
+          First = 0;
+        }
+        else
+        {
+          LP1 = Y - (PY2 >> 3);
+          LP2 = Y + (PY2 >> 3);
+          L1 = Y - (PY >> 3);
+          L2 = Y + (PY >> 3);
+          if (LP1 < L1)
+          {
+            LP1 = L1;
+            LP2 = L2;
+          }
+          LFilling = Filling & (LP2 - LP1 >= 2);
+
+          if (Q14)
+          {
+            if (Q4)
+              GuiLib_VLine(X + LX, L1, LP1, BColor);
+            if (LFilling)
+            {
+              if (Q1 && Q4)
+                GuiLib_VLine(X + LX, LP1 + 1, LP2 - 1,
+                   (GuiConst_INTCOLOR)FillColor);
+              else if (Q1)
+                GuiLib_VLine(X + LX, Y, LP2 - 1, (GuiConst_INTCOLOR)FillColor);
+              else
+                GuiLib_VLine(X + LX, LP1 + 1, Y, (GuiConst_INTCOLOR)FillColor);
+            }
+            if (Q1)
+              GuiLib_VLine(X + LX, LP2, L2, BColor);
+          }
+          if (Q23)
+          {
+            if (Q3)
+              GuiLib_VLine(X - LX, L1, LP1, BColor);
+            if (LFilling)
+            {
+              if (Q2 && Q3)
+                GuiLib_VLine(X - LX, LP1 + 1, LP2 - 1,
+                   (GuiConst_INTCOLOR)FillColor);
+              else if (Q2)
+                GuiLib_VLine(X - LX, Y, LP2 - 1, (GuiConst_INTCOLOR)FillColor);
+              else
+                GuiLib_VLine(X - LX, LP1 + 1, Y, (GuiConst_INTCOLOR)FillColor);
+            }
+            if (Q2)
+              GuiLib_VLine(X - LX, LP2, L2, BColor);
+          }
+        }
+      }
+      L1 = (PY + 8) >> 3;
+      if (L1 > Radius2)
+        L1 = Radius2;
+
+      if (Q34)
+        GuiLib_VLine(X, Y - Radius2, Y - L1, BColor);
+      if (Filling & (L1 >= 1))
+      {
+        if (Q12 && Q34)
+          GuiLib_VLine(X, Y - L1 + 1, Y + L1 - 1, (GuiConst_INTCOLOR)FillColor);
+        else if (Q12)
+          GuiLib_VLine(X, Y, Y + L1 - 1, (GuiConst_INTCOLOR)FillColor);
+        else
+          GuiLib_VLine(X, Y - L1 + 1, Y, (GuiConst_INTCOLOR)FillColor);
+      }
+      if (Q12)
+        GuiLib_VLine(X, Y + L1, Y + Radius2, BColor);
+    }
+  }
+}
+
+//------------------------------------------------------------------------------
+void Circle(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U Radius,
+   GuiConst_INTCOLOR Color,
+   GuiConst_INT8U S0,
+   GuiConst_INT8U S1,
+   GuiConst_INT8U S2,
+   GuiConst_INT8U S3,
+   GuiConst_INT8U S4,
+   GuiConst_INT8U S5,
+   GuiConst_INT8U S6,
+   GuiConst_INT8U S7,
+   GuiConst_INT8U IF)
+{
+  GuiConst_INT16S PX, PY, PX2;
+  GuiConst_INT16S L1, L2, LP1, LP2, LX, LY, LX2;
+  GuiConst_INT8U First;
+  GuiConst_INT16S R;
+  GuiConst_INT32S R2;
+
+  if (!(S0 || S1 || S2 || S3 || S4 || S5 || S6 || S7))
+    return;
+  if (Radius == 0)
+    return;
+
+  if (Radius == 1)
+  {
+    if (S7 || S0)
+      GuiLib_Dot(X + 1, Y, Color);
+    if (S1 || S2)
+      GuiLib_Dot(X, Y + 1, Color);
+    if (S3 || S4)
+      GuiLib_Dot(X - 1, Y, Color);
+    if (S5 || S6)
+      GuiLib_Dot(X, Y - 1, Color);
+  }
+  else
+  {
+    R = Radius << 3;
+    R2 = (GuiConst_INT32S)R * R;
+    First = 1;
+    PX = 0;
+
+    for (PY = R - 4; PY >= R / 2; PY -= 8)
+    {
+      PX2 = PX + 8;
+      PX = (GuiConst_INT16S)((R * GuiLib_Sqrt((0x00000400 -
+         ((((GuiConst_INT32S)PY * (PY + 3)) << 10) / R2)) << 8)) >> 9) + 1;
+      LX2 = (PX2 + 4) >> 3;
+      LX = (PX + 4) >> 3;
+      LY = (PY + 4) >> 3;
+      if (First)
+      {
+        if (S1 || S2)
+        {
+          if (S1)
+            L2 = X + LX;
+          else
+            L2 = X;
+          if (S2)
+            L1 = X - LX;
+          else
+            L1 = X;
+          GuiLib_HLine(L1, L2, Y + LY, Color);
+          if (IF)
+            GuiLib_HLine(L1, L2, Y + LY - 1, Color);
+        }
+        if (S5 || S6)
+        {
+          if (S5)
+            L1 = X - LX;
+          else
+            L1 = X;
+          if (S6)
+            L2 = X + LX;
+          else
+            L2 = X;
+          GuiLib_HLine(L1, L2, Y - LY, Color);
+          if (IF)
+            GuiLib_HLine(L1, L2, Y - LY +1, Color);
+        }
+
+        if (S3 || S4)
+        {
+          if (S3)
+            L2 = Y + LX;
+          else
+            L2 = Y;
+          if (S4)
+            L1 = Y - LX;
+          else
+            L1 = Y;
+          GuiLib_VLine(X - LY, L1, L2, Color);
+          if (IF)
+            GuiLib_VLine(X - LY + 1, L1, L2, Color);
+        }
+        if (S7 || S0)
+        {
+          if (S7)
+            L1 = Y - LX;
+          else
+            L1 = Y;
+          if (S0)
+            L2 = Y + LX;
+          else
+            L2 = Y;
+          GuiLib_VLine(X + LY, L1, L2, Color);
+          if (IF)
+            GuiLib_VLine(X + LY - 1, L1, L2, Color);
+        }
+
+        First = 0;
+      }
+      else if (LX < LY)
+      {
+        LP1 = X - LX2;
+        LP2 = X + LX2;
+        L1 = X - LX;
+        L2 = X + LX;
+
+        if (S1)
+        {
+          GuiLib_HLine(LP2, L2, Y + LY, Color);
+          if (IF)
+            GuiLib_HLine(LP2, L2, Y + LY - 1, Color);
+        }
+        if (S2)
+        {
+          GuiLib_HLine(L1, LP1, Y + LY, Color);
+          if (IF)
+            GuiLib_HLine(L1, LP1, Y + LY - 1, Color);
+        }
+
+        if (S5)
+        {
+          GuiLib_HLine(L1, LP1, Y - LY, Color);
+          if (IF)
+            GuiLib_HLine(L1, LP1, Y - LY + 1, Color);
+        }
+        if (S6)
+        {
+          GuiLib_HLine(LP2, L2, Y - LY, Color);
+          if (IF)
+            GuiLib_HLine(LP2, L2, Y - LY + 1, Color);
+        }
+
+        LP1 = Y - LX2;
+        LP2 = Y + LX2;
+        L1 = Y - LX;
+        L2 = Y + LX;
+
+        if (S7)
+        {
+          GuiLib_VLine(X + LY, L1, LP1, Color);
+          if (IF)
+            GuiLib_VLine(X + LY - 1, L1, LP1, Color);
+        }
+        if (S0)
+        {
+          GuiLib_VLine(X + LY, LP2, L2, Color);
+          if (IF)
+            GuiLib_VLine(X + LY - 1, LP2, L2, Color);
+        }
+
+        if (S3)
+        {
+          GuiLib_VLine(X - LY, LP2, L2, Color);
+          if (IF)
+            GuiLib_VLine(X - LY + 1, LP2, L2, Color);
+        }
+        if (S4)
+        {
+          GuiLib_VLine(X - LY, L1, LP1, Color);
+          if (IF)
+            GuiLib_VLine(X - LY + 1, L1, LP1, Color);
+        }
+      }
+      else
+      {
+        if (S0)
+        {
+          GuiLib_Dot(X + LY, Y + LX2, Color);
+          if (IF)
+            GuiLib_Dot(X + LY - 1, Y + LX2, Color);
+        }
+        if (S1)
+        {
+          GuiLib_Dot(X + LX2, Y + LY, Color);
+          if (IF)
+            GuiLib_Dot(X + LX2, Y + LY - 1, Color);
+        }
+        if (S2)
+        {
+          GuiLib_Dot(X - LX2, Y + LY, Color);
+          if (IF)
+            GuiLib_Dot(X - LX2, Y + LY - 1, Color);
+        }
+        if (S3)
+        {
+          GuiLib_Dot(X - LY, Y + LX2, Color);
+          if (IF)
+            GuiLib_Dot(X - LY + 1, Y + LX2, Color);
+        }
+        if (S4)
+        {
+          GuiLib_Dot(X - LY, Y - LX2, Color);
+          if (IF)
+            GuiLib_Dot(X - LY + 1, Y - LX2, Color);
+        }
+        if (S5)
+        {
+          GuiLib_Dot(X - LX2, Y - LY, Color);
+          if (IF)
+            GuiLib_Dot(X - LX2, Y - LY + 1, Color);
+        }
+        if (S6)
+        {
+          GuiLib_Dot(X + LX2, Y - LY, Color);
+          if (IF)
+            GuiLib_Dot(X + LX2, Y - LY + 1, Color);
+        }
+        if (S7)
+        {
+          GuiLib_Dot(X + LY, Y - LX2, Color);
+          if (IF)
+            GuiLib_Dot(X + LY - 1, Y - LX2, Color);
+        }
+
+        break;
+      }
+    }
+
+    if (S7 || S0)
+      GuiLib_Dot(X + Radius, Y, Color);
+    if (S3 || S4)
+      GuiLib_Dot(X - Radius, Y, Color);
+  }
+}
+
+//------------------------------------------------------------------------------
+void FilledCircle(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U Radius,
+   GuiConst_INTCOLOR Color)
+{
+  GuiConst_INT16S PX, PY, PX2;
+  GuiConst_INT16S LX, LY, LXY, LX2;
+  GuiConst_INT16S R;
+  GuiConst_INT32S R2;
+
+  if (Radius == 0)
+    return;
+
+  if (Radius == 1)
+  {
+    GuiLib_Dot(X, Y - 1, Color);
+    GuiLib_HLine(X - 1, X + 1, Y, Color);
+    GuiLib_Dot(X, Y + 1, Color);
+  }
+  else
+  {
+    R = Radius << 3;
+    R2 = (GuiConst_INT32S)R * R;
+    LXY = (707 * (GuiConst_INT32S)Radius) / 1000;
+    PX = 0;
+    LY = 0;
+
+    for (PY = R - 4; PY >= R / 2; PY -= 8)
+    {
+      PX2 = PX + 8;
+      PX = (GuiConst_INT16S)((R * GuiLib_Sqrt((0x00000400 -
+         ((((GuiConst_INT32S)PY * (PY + 3)) << 10) / R2)) << 8)) >> 9) + 1;
+      LX2 = (PX2 + 4) >> 3;
+      LX = (PX + 4) >> 3;
+      LY = (PY + 4) >> 3;
+
+      if (LX < LY)
+      {
+        GuiLib_HLine(X - LX, X + LX, Y + LY, Color);
+        GuiLib_HLine(X - LX, X + LX, Y - LY, Color);
+
+        if (LX > LXY)
+          LX = LXY;
+        GuiLib_VLine(X - LY, Y - LX, Y + LX, Color);
+        GuiLib_VLine(X + LY, Y - LX, Y + LX, Color);
+      }
+      else
+      {
+        GuiLib_HLine(X - LX2, X + LX2, Y - LY, Color);
+        GuiLib_HLine(X - LX2, X + LX2, Y + LY, Color);
+        GuiLib_VLine(X - LY, Y - LX2, Y + LX2, Color);
+        GuiLib_VLine(X + LY, Y - LX2, Y + LX2, Color);
+
+        break;
+      }
+    }
+    GuiLib_FillBox(X - LY + 1, Y - LY + 1, X + LY - 1, Y + LY - 1, Color);
+  }
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Circle(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U Radius,
+   GuiConst_INT32S BorderColor,
+   GuiConst_INT32S FillColor)
+{
+  Ellipse(X, Y, Radius, Radius, BorderColor, FillColor, 1, 1, 1, 1);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Ellipse(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U Radius1,
+   GuiConst_INT16U Radius2,
+   GuiConst_INT32S BorderColor,
+   GuiConst_INT32S FillColor)
+{
+  Ellipse(X, Y, Radius1, Radius2, BorderColor, FillColor, 1, 1, 1, 1);
+}
+
+//==============================================================================
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+//------------------------------------------------------------------------------
+void GuiLib_ResetClipping(void)
+{
+  sgl.ClippingTotal = 0;
+  SetClipping(
+     0, 0, GuiConst_DISPLAY_WIDTH_HW - 1, GuiConst_DISPLAY_HEIGHT_HW - 1);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_SetClipping(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  sgl.ClippingTotal = ((X1 > X2) || (Y1 > Y2));
+
+  GuiLib_COORD_ADJUST(X1, Y1);
+  GuiLib_COORD_ADJUST(X2, Y2);
+  OrderCoord(&X1, &X2);
+  OrderCoord(&Y1, &Y2);
+
+  SetClipping(X1, Y1, X2, Y2);
+}
+#endif
+
+//------------------------------------------------------------------------------
+void GuiLib_ResetDisplayRepaint(void)
+{
+  GuiConst_INT16S LineNo;
+
+  if (!sgl.BaseLayerDrawing)
+    return;
+
+  for (LineNo = 0; LineNo < GuiConst_BYTE_LINES; LineNo++)
+  {
+    GuiLib_DisplayRepaint[LineNo].ByteEnd = -1;
+    #ifdef GuiConst_VNC_REMOTE_SUPPORT_ON
+    GuiLib_VncRepaint[LineNo].ByteEnd = -1;
+    #endif
+  }
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_MarkDisplayBoxRepaint(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  if (!sgl.BaseLayerDrawing)
+    return;
+
+  GuiLib_COORD_ADJUST(X1, Y1);
+  GuiLib_COORD_ADJUST(X2, Y2);
+  OrderCoord(&X1, &X2);
+  OrderCoord(&Y1, &Y2);
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (CheckRect (&X1, &Y1, &X2, &Y2))
+#endif
+    MarkDisplayBoxRepaint(X1, Y1, X2, Y2);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_ClearDisplay(void)
+{
+  ClearDisplay();
+  MarkDisplayBoxRepaint(
+     0, 0, GuiConst_DISPLAY_WIDTH_HW - 1, GuiConst_DISPLAY_HEIGHT_HW - 1);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Dot(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INTCOLOR Color)
+{
+  GuiLib_COORD_ADJUST(X, Y);
+  GuiLib_COLOR_ADJUST(Color);
+
+  MakeDot(X, Y, Color);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INTCOLOR GuiLib_GetDot(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y)
+{
+  GuiLib_COORD_ADJUST(X, Y);
+
+  return (ReadDot(X, Y));
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Line(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color)
+{
+  GuiConst_INT16S X, Y;
+  GuiConst_INT16S PX1, PY1, PX2, PY2;
+  GuiConst_INT16S RemCoord;
+  GuiConst_INT32S Slope;
+  GuiConst_INT16S Offset, NewOffset;
+  GuiConst_INT16U OffsetCnt;
+  GuiConst_INT16S OffsetDir;
+
+  GuiLib_COORD_ADJUST(X1, Y1);
+  GuiLib_COORD_ADJUST(X2, Y2);
+  GuiLib_COLOR_ADJUST(Color);
+
+  if (X1 == X2)
+  {
+    OrderCoord(&Y1, &Y2);
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    if (CheckRect (&X1, &Y1, &X2, &Y2))
+#endif
+    {
+      VertLine(X1, Y1, Y2, Color);
+      MarkDisplayBoxRepaint(X1, Y1, X1, Y2);
+    }
+  }
+  else if (Y1 == Y2)
+  {
+    OrderCoord(&X1, &X2);
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    if (CheckRect (&X1, &Y1, &X2, &Y2))
+#endif
+    {
+      HorzLine(X1, X2, Y1, Color);
+      MarkDisplayBoxRepaint(X1, Y1, X2, Y1);
+    }
+  }
+  else
+  {
+    Slope = labs ((10000 * (GuiConst_INT32S) (Y2 - Y1))) /
+       labs ((GuiConst_INT32S) (X2 - X1));
+
+    if (Slope <= 10000)
+    {
+      if (OrderCoord(&X1, &X2))
+        SwapCoord(&Y1, &Y2);
+
+      X = 0;
+      Offset = 0;
+      RemCoord = 0;
+      OffsetCnt = 0;
+      if (Y1 < Y2)
+        OffsetDir = 1;
+      else
+        OffsetDir = -1;
+      do
+      {
+        NewOffset = (((GuiConst_INT32S) X * Slope) + 5000) / 10000;
+        if (((X > 0) && (NewOffset != Offset)) || (X > X2 - X1))
+        {
+          PX1 = X1 + RemCoord;
+          PY1 = Y1 + OffsetDir * Offset;
+          PX2 = PX1 + OffsetCnt - 1;
+          if (OffsetCnt == 1)
+            MakeDot(PX1, PY1, Color);
+          else
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+               if (CheckRect (&PX1, &PY1, &PX2, &PY1))
+#endif
+          {
+            HorzLine(PX1, PX2, PY1, Color);
+            MarkDisplayBoxRepaint(PX1, PY1, PX2, PY1);
+          }
+          OffsetCnt = 1;
+          RemCoord = X;
+
+          if (X > X2 - X1)
+            return;
+        }
+        else
+          OffsetCnt++;
+
+        Offset = NewOffset;
+        X++;
+      }
+      while (1);
+    }
+    else
+    {
+      if (OrderCoord(&Y1, &Y2))
+        SwapCoord(&X1, &X2);
+
+      Y = 0;
+      Offset = 0;
+      RemCoord = 0;
+      OffsetCnt = 0;
+      if (X1 < X2)
+        OffsetDir = 1;
+      else
+        OffsetDir = -1;
+      do
+      {
+        NewOffset = (((GuiConst_INT32S) Y * 10000) + (Slope / 2)) / Slope;
+        if (((Y > 0) && (NewOffset != Offset)) || (Y > Y2 - Y1))
+        {
+          PX1 = X1 + OffsetDir * Offset;
+          PY1 = Y1 + RemCoord;
+          PY2 = PY1 + OffsetCnt - 1;
+          if (OffsetCnt == 1)
+            MakeDot(PX1, PY1, Color);
+          else
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+               if (CheckRect (&PX1, &PY1, &PX1, &PY2))
+#endif
+          {
+            VertLine(PX1, PY1, PY2, Color);
+            MarkDisplayBoxRepaint(PX1, PY1, PX1, PY2);
+          }
+          OffsetCnt = 1;
+          RemCoord = Y;
+
+          if (Y > Y2 - Y1)
+            return;
+        }
+        else
+          OffsetCnt++;
+
+        Offset = NewOffset;
+        Y++;
+      }
+      while (1);
+    }
+  }
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_LinePattern(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INT8U LinePattern,
+   GuiConst_INTCOLOR Color)
+{
+  GuiConst_INT16S X,Y;
+  GuiConst_INT32S Slope;
+  GuiConst_INT16S Offset;
+  GuiConst_INT8U MaskTemp;
+  GuiConst_INT8U MaskCtr = 0;
+  GuiConst_INT8U Vertical;
+
+  GuiLib_COORD_ADJUST(X1, Y1);
+  GuiLib_COORD_ADJUST(X2, Y2);
+  GuiLib_COLOR_ADJUST(Color);
+
+  Vertical = (X1 == X2);
+  if (Vertical)
+    Offset = 0;
+  else
+    Slope = labs ((10000 * (GuiConst_INT32S)(Y2 - Y1))) /
+            labs ((GuiConst_INT32S)(X2 - X1));
+
+  if (Vertical || (Slope > 10000))
+  {
+    if (OrderCoord(&Y1, &Y2))
+      SwapCoord(&X1, &X2);
+
+    for (Y = 0; Y <= Y2 - Y1; Y++)
+    {
+      if (MaskCtr == 0 )
+      {
+        MaskCtr = 8;
+        MaskTemp = LinePattern;
+      }
+      if (MaskTemp & 0x01)
+      {
+        if (!Vertical)
+          Offset = (((GuiConst_INT32S) Y * 10000) + (Slope / 2)) / Slope;
+        if (X1 < X2)
+          MakeDot(X1 + Offset, Y1 + Y, Color);
+        else
+          MakeDot(X1 - Offset, Y1 + Y, Color);
+      }
+      MaskTemp >>= 1;
+      MaskCtr--;
+    }
+  }
+  else
+  {
+    if (OrderCoord(&X1, &X2))
+      SwapCoord(&Y1, &Y2);
+
+    for (X = 0; X <= X2 - X1; X++)
+    {
+      if (MaskCtr == 0 )
+      {
+        MaskCtr = 8;
+        MaskTemp = LinePattern;
+      }
+
+      if (MaskTemp & 0x01)
+      {
+        Offset = (((GuiConst_INT32S) X * Slope) + 5000) / 10000;
+        if (Y1 < Y2)
+          MakeDot(X1 + X, Y1 + Offset, Color);
+        else
+          MakeDot(X1 + X, Y1 - Offset, Color);
+      }
+      MaskTemp >>= 1;
+      MaskCtr--;
+    }
+  }
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_HLine(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y,
+   GuiConst_INTCOLOR Color)
+{
+  GuiLib_Line(X1, Y, X2, Y, Color);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_VLine(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color)
+{
+  GuiLib_Line(X, Y1, X, Y2, Color);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Box(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color)
+{
+  GuiConst_INT16S X1C;
+  GuiConst_INT16S Y1C;
+  GuiConst_INT16S X2C;
+  GuiConst_INT16S Y2C;
+
+  GuiLib_COORD_ADJUST(X1, Y1);
+  GuiLib_COORD_ADJUST(X2, Y2);
+  GuiLib_COLOR_ADJUST(Color);
+
+  OrderCoord(&X1, &X2);
+  OrderCoord(&Y1, &Y2);
+
+  X1C = X1;
+  Y1C = Y1;
+  X2C = X2;
+  Y2C = Y2;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (CheckRect(&X1C, &Y1C, &X2C, &Y2C))
+#endif
+  {
+    MarkDisplayBoxRepaint(X1C, Y1C, X2C, Y2C);
+    X1C = X1;
+    Y1C = Y1;
+    X2C = X1;
+    Y2C = Y2;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    if (CheckRect(&X1C, &Y1C, &X1C, &Y2C))
+#endif
+      VertLine(X1C, Y1C, Y2C, Color);
+    X1C = X2;
+    Y1C = Y1;
+    X2C = X2;
+    Y2C = Y2;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    if (CheckRect(&X2C, &Y1C, &X2C, &Y2C))
+#endif
+      VertLine(X2C, Y1C, Y2C, Color);
+    if (X2 - X1 > 1)
+    {
+      X1C = X1 + 1;
+      Y1C = Y1;
+      X2C = X2 - 1;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      if (CheckRect(&X1C, &Y1C, &X2C, &Y1C))
+#endif
+        HorzLine(X1C, X2C, Y1C, Color);
+      X1C = X1 + 1;
+      Y1C = Y2;
+      X2C = X2 - 1;
+      Y2C = Y2;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      if (CheckRect(&X1C, &Y2C, &X2C, &Y2C))
+#endif
+        HorzLine(X1C, X2C, Y2C, Color);
+    }
+  }
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_FillBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color)
+{
+  GuiLib_COORD_ADJUST(X1, Y1);
+  GuiLib_COORD_ADJUST(X2, Y2);
+  GuiLib_COLOR_ADJUST(Color);
+
+  OrderCoord(&X1, &X2);
+  OrderCoord(&Y1, &Y2);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (CheckRect (&X1, &Y1, &X2, &Y2))
+#endif
+  {
+    MarkDisplayBoxRepaint(X1, Y1, X2, Y2);
+#ifdef GuiConst_BYTE_HORIZONTAL
+    while (Y1 <= Y2)
+    {
+      HorzLine(X1, X2, Y1, Color);
+      Y1++;
+    }
+#else
+    while (X1 <= X2)
+    {
+      VertLine(X1, Y1, Y2, Color);
+      X1++;
+    }
+#endif
+  }
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_BorderBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR BorderColor,
+   GuiConst_INTCOLOR FillColor)
+{
+  GuiLib_Box(X1, Y1, X2, Y2, BorderColor);
+  OrderCoord(&X1, &X2);
+  OrderCoord(&Y1, &Y2);
+  if (((X2 - X1) >= 2) && ((Y2 - Y1) >= 2))
+    GuiLib_FillBox(X1+1, Y1+1, X2-1, Y2-1, FillColor);
+}
+
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+//------------------------------------------------------------------------------
+static void ReadBitmapSizes(
+   GuiConst_INT16U BitmapIndex)
+{
+#ifndef GuiConst_REMOTE_BITMAP_DATA
+   GuiConst_INT8U PrefixRom * PixelDataPtr;
+#endif
+
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+  if (BitmapIndex != sgl.CurRemoteBitmap)
+  {
+    GuiLib_RemoteDataReadBlock(
+       (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex],
+       (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex + 1] -
+       (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex],
+       sgl.GuiLib_RemoteBitmapBuffer);
+    sgl.CurRemoteBitmap = BitmapIndex;
+  }
+  sgl.BitmapSizeX = (GuiConst_INT16S)sgl.GuiLib_RemoteBitmapBuffer[0] +
+                    256*(GuiConst_INT16S)sgl.GuiLib_RemoteBitmapBuffer[1];
+  sgl.BitmapSizeY = (GuiConst_INT16S)sgl.GuiLib_RemoteBitmapBuffer[2] +
+                    256*(GuiConst_INT16S)sgl.GuiLib_RemoteBitmapBuffer[3];
+#else
+  PixelDataPtr =
+     (GuiConst_INT8U PrefixRom *)ReadWord(GuiStruct_BitmapPtrList[BitmapIndex]);
+
+  sgl.BitmapSizeX = (GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+  sgl.BitmapSizeX += 256*(GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+  sgl.BitmapSizeY = (GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+  sgl.BitmapSizeY += 256*(GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+#endif
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_ShowBitmap(
+   GuiConst_INT16U BitmapIndex,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT32S TranspColor)
+{
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+  if (BitmapIndex != sgl.CurRemoteBitmap)
+  {
+    GuiLib_RemoteDataReadBlock(
+       (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex],
+       (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex + 1] -
+       (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex],
+       sgl.GuiLib_RemoteBitmapBuffer);
+    sgl.CurRemoteBitmap = BitmapIndex;
+  }
+  ShowBitmapArea(&sgl.GuiLib_RemoteBitmapBuffer[0],
+     X, Y, 0, 0, 0, 0, TranspColor, GuiLib_FULL_BITMAP);
+#else
+  ShowBitmapArea(
+     (GuiConst_INT8U PrefixRom *)ReadWord(GuiStruct_BitmapPtrList[BitmapIndex]),
+      X, Y, 0, 0, 0, 0, TranspColor, GuiLib_FULL_BITMAP);
+#endif
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_ShowBitmapAt(
+   GuiConst_INT8U * BitmapPtr,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT32S TranspColor)
+{
+  ShowBitmapArea(
+     BitmapPtr, X, Y, 0, 0, 0, 0, TranspColor, GuiLib_FULL_BITMAP);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_ShowBitmapArea(
+   GuiConst_INT16U BitmapIndex,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S AX1,
+   GuiConst_INT16S AY1,
+   GuiConst_INT16S AX2,
+   GuiConst_INT16S AY2,
+   GuiConst_INT32S TranspColor)
+{
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+  if (BitmapIndex != sgl.CurRemoteBitmap)
+  {
+    GuiLib_RemoteDataReadBlock(
+     (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex],
+     (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex + 1] -
+     (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[BitmapIndex],
+     sgl.GuiLib_RemoteBitmapBuffer);
+  sgl.CurRemoteBitmap = BitmapIndex;
+  }
+  ShowBitmapArea(&sgl.GuiLib_RemoteBitmapBuffer[0],
+   X, Y, AX1, AY1, AX2, AY2, TranspColor, GuiLib_AREA_BITMAP);
+#else
+  ShowBitmapArea(
+     (GuiConst_INT8U PrefixRom *)ReadWord(GuiStruct_BitmapPtrList[BitmapIndex]),
+      X, Y, AX1, AY1, AX2, AY2, TranspColor, GuiLib_AREA_BITMAP);
+#endif
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_ShowBitmapAreaAt(
+   GuiConst_INT8U * BitmapPtr,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S AX1,
+   GuiConst_INT16S AY1,
+   GuiConst_INT16S AX2,
+   GuiConst_INT16S AY2,
+   GuiConst_INT32S TranspColor)
+{
+  ShowBitmapArea(
+     BitmapPtr, X, Y, AX1, AY1, AX2, AY2, TranspColor, GuiLib_AREA_BITMAP);
+}
+#endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiGraph16.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,972 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2015 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*        12/15/16 bit (4096/32K/64K color) graphics primitives library     */
+/*                               v6.0.9.005                                 */
+/*                                                                          */
+/*     GuiLib.c include file - do NOT reference it in your linker setup     */
+/*                                                                          */
+/* ************************************************************************ */
+
+//------------------------------------------------------------------------------
+#define WANT_DOUBLE_BUFFERING // Also in GuiDisplay.c, GuiLib.c - *** all three must match ***
+#ifdef WANT_DOUBLE_BUFFERING
+//DisplayBufUnion GuiLib_DisplayBuf;
+// Experiment - what if we put GuiLib_DisplayBuf at a specific location - but not the display?
+//DisplayBufUnion GuiLib_DisplayBuf __attribute__((at(0xA00BB810))); // Result of second DMBoard->display->allocateFramebuffer() call
+DisplayBufUnion GuiLib_DisplayBuf __attribute__((at(0xA00BCFE0))); // Result of second DMBoard->display->allocateFramebuffer() call (as of 26 Oct 2016)
+#else // Want to write direct to the display
+//DisplayBufUnion GuiLib_DisplayBuf __attribute__((at(0xA0000008))); // Result of first DMBoard->display->allocateFramebuffer() call
+DisplayBufUnion GuiLib_DisplayBuf __attribute__((at(0xA00017D8))); // Result of first DMBoard->display->allocateFramebuffer() call (as of 26 Oct 2016)
+                                                                   // Must be same as FRAME_ADDRESS in GuiDisplay.h
+#endif
+
+//==============================================================================
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+//------------------------------------------------------------------------------
+static void SetClipping(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  if (X1 < 0)
+    X1 = 0;
+  if (Y1 < 0)
+    Y1 = 0;
+  if (X2 > (GuiConst_INT16S)sgl.CurLayerWidth - 1)
+    X2 = (GuiConst_INT16S)sgl.CurLayerWidth - 1;
+  if (Y2 > (GuiConst_INT16S)sgl.CurLayerHeight - 1)
+    Y2 = (GuiConst_INT16S)sgl.CurLayerHeight - 1;
+
+  sgl.ClippingX1 = X1;
+  sgl.ClippingY1 = Y1;
+  sgl.ClippingX2 = X2;
+  sgl.ClippingY2 = Y2;
+}
+#endif
+
+//------------------------------------------------------------------------------
+static void MarkDisplayBoxRepaint(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  if (!sgl.BaseLayerDrawing)
+    return;
+
+  while (Y1 <= Y2)
+  {
+    if ((GuiLib_DisplayRepaint[Y1].ByteEnd == -1) ||
+        (X1 < GuiLib_DisplayRepaint[Y1].ByteBegin))
+      GuiLib_DisplayRepaint[Y1].ByteBegin = X1;
+    if (X2 > GuiLib_DisplayRepaint[Y1].ByteEnd)
+      GuiLib_DisplayRepaint[Y1].ByteEnd = X2;
+    #ifdef GuiConst_VNC_REMOTE_SUPPORT_ON
+    if ((GuiLib_VncRepaint[Y1].ByteEnd == -1) ||
+        (X1 < GuiLib_VncRepaint[Y1].ByteBegin))
+      GuiLib_VncRepaint[Y1].ByteBegin = X1;
+    if (X2 > GuiLib_VncRepaint[Y1].ByteEnd)
+      GuiLib_VncRepaint[Y1].ByteEnd = X2;
+    #endif
+
+    Y1++;
+  }
+}
+
+//------------------------------------------------------------------------------
+static void ClearDisplay(void)
+{
+  int X,Y;
+  GuiConst_INT16U *PixelPtr;
+
+  PixelPtr = (GuiConst_INT16U*)sgl.CurLayerBufPtr;
+  for (Y = 0; Y < (GuiConst_INT16S)sgl.CurLayerHeight; Y++)
+    for (X = 0; X < (GuiConst_INT16S)sgl.CurLayerWidth; X++)
+    {
+      *PixelPtr = GuiConst_PIXEL_OFF;
+      PixelPtr++;
+    }
+}
+
+//------------------------------------------------------------------------------
+static void MakeDot(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INTCOLOR Color)
+{
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (CheckRect (&X, &Y, &X, &Y))
+#endif
+  {
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+    *((GuiConst_INT16U*)sgl.CurLayerBufPtr +
+      (GuiConst_INT32U)Y * sgl.CurLayerWidth + (GuiConst_INT32U)X) =
+       (Color << 8 ) | (Color >> 8);
+#else
+    *((GuiConst_INT16U*)sgl.CurLayerBufPtr +
+      (GuiConst_INT32U)Y * sgl.CurLayerWidth + (GuiConst_INT32U)X) = Color;
+#endif
+    MarkDisplayBoxRepaint(X, Y, X, Y);
+  }
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INTCOLOR ReadDot(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y)
+{
+  GuiConst_INT16U *PixelPtr;
+
+  if ((X < 0) || (X >= (GuiConst_INT16S)sgl.CurLayerWidth) ||
+      (Y < 0) || (Y >= (GuiConst_INT16S)sgl.CurLayerHeight))
+    return (0);
+  else
+  {
+    PixelPtr = (GuiConst_INT16U*)sgl.CurLayerBufPtr +
+               (GuiConst_INT32U)Y * sgl.CurLayerWidth + (GuiConst_INT32U)X;
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+    return ((*PixelPtr << 8) | (*PixelPtr >> 8));
+#else
+    return (*PixelPtr);
+#endif
+  }
+}
+
+//------------------------------------------------------------------------------
+static void HorzLine(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y,
+   GuiConst_INTCOLOR Color)
+{
+  GuiConst_INT16U *PixelPtr;
+
+  PixelPtr = (GuiConst_INT16U*)sgl.CurLayerBufPtr +
+             (GuiConst_INT32U)Y * sgl.CurLayerWidth + (GuiConst_INT32U)X1;
+  while (X1 <= X2)
+  {
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+    *PixelPtr = (Color << 8) | (Color >> 8);
+#else
+    *PixelPtr = Color;
+#endif
+    PixelPtr++;
+    X1++;
+  }
+}
+
+//------------------------------------------------------------------------------
+static void VertLine(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color)
+{
+  GuiConst_INT16U *PixelPtr;
+
+  PixelPtr = (GuiConst_INT16U*)sgl.CurLayerBufPtr +
+             (GuiConst_INT32U)Y1 * sgl.CurLayerWidth + (GuiConst_INT32U)X;
+  while (Y1 <= Y2)
+  {
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+    *PixelPtr = (Color << 8) | (Color >> 8);
+#else
+    *PixelPtr = Color;
+#endif
+    Y1++;
+    PixelPtr += sgl.CurLayerWidth;
+  }
+}
+
+//------------------------------------------------------------------------------
+static void DrawChar(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiLib_FontRecPtr Font,
+#ifdef GuiConst_REMOTE_FONT_DATA
+   GuiConst_INT32S CharNdx,
+#else
+   GuiConst_INT8U PrefixRom * CharPtr,
+#endif
+   GuiConst_INTCOLOR Color,
+   GuiConst_INT8U FullPixelFill)
+{
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U *PixelData;
+  GuiConst_INT8U * CharPtr;
+#else
+  GuiConst_INT8U PrefixRom *PixelData;
+#endif
+  GuiConst_INT8U PixelPattern;
+  GuiConst_INT16S N;
+  GuiConst_INT8U YHeight;
+  GuiConst_INT8U PixN;
+  GuiConst_INT16S Bx;
+  GuiConst_INT16S PY, Y2;
+  GuiConst_INT8U PixelLineSize;
+#ifndef GuiConst_FONT_UNCOMPRESSED
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U *LineCtrl;
+#else
+  GuiConst_INT8U PrefixRom *LineCtrl;
+#endif
+  GuiConst_INT8U LineCtrlByte;
+  GuiConst_INT16S LineRepeat;
+  GuiConst_INT16S M;
+  GuiConst_INT8U Finished;
+  GuiConst_INT16U *PixelPtr;
+#endif
+#ifdef GuiConst_ADV_FONTS_ON
+  GuiConst_INT8U PixelShade, PixelShadeInv;
+  GuiConst_INTCOLOR PixelColor;
+  GuiConst_INT8U PixelR, PixelG, PixelB;
+  GuiConst_INT8U ColorR, ColorG, ColorB;
+#endif
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (sgl.ClippingTotal)
+    return;
+#endif
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+  if (CharNdx != sgl.CurRemoteFont)
+  {
+    GuiLib_RemoteDataReadBlock(
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[CharNdx],
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[CharNdx + 1] -
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[CharNdx],
+       sgl.GuiLib_RemoteFontBuffer);
+    sgl.CurRemoteFont = CharNdx;
+  }
+  CharPtr = &sgl.GuiLib_RemoteFontBuffer[0];
+#endif
+
+  if ((*(CharPtr + GuiLib_CHR_XWIDTH_OFS) == 0) ||
+      (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) == 0))
+    return;
+
+  GuiLib_COORD_ADJUST(X, Y);
+  GuiLib_COLOR_ADJUST(Color);
+
+  gl.Dummy1_8U = Font->LineSize;   // To avoid compiler warning
+#ifdef GuiConst_FONT_UNCOMPRESSED
+  PixelLineSize = Font->LineSize;
+  #ifdef GuiConst_ROTATED_90DEGREE
+  YHeight = Font->XSize;
+  #else
+  YHeight = Font->YSize;
+  #endif
+  PixelData = CharPtr + GuiLib_CHR_LINECTRL_OFS + 1;
+#else
+  #ifdef GuiConst_ROTATED_90DEGREE
+  PixelLineSize = *(CharPtr + GuiLib_CHR_YHEIGHT_OFS);
+  YHeight = *(CharPtr + GuiLib_CHR_XWIDTH_OFS);
+  #else
+  PixelLineSize = *(CharPtr + GuiLib_CHR_XWIDTH_OFS);
+  YHeight = *(CharPtr + GuiLib_CHR_YHEIGHT_OFS);
+  #endif
+  LineCtrl = CharPtr + GuiLib_CHR_LINECTRL_OFS;
+  N = (YHeight + 7) / 8;
+  if (N == 0)
+    N++;
+  PixelData = LineCtrl + N;
+#ifdef GuiConst_ADV_FONTS_ON
+  if (Font->ColorDepth == 4)
+    PixelLineSize = (PixelLineSize + 1) / 2;
+  else
+#endif
+    PixelLineSize = (PixelLineSize + 7) / 8;
+#endif
+
+#ifdef GuiConst_FONT_UNCOMPRESSED
+
+#ifdef GuiConst_ROTATED_OFF
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= Font->XSize - 1;
+  Y -= Font->YSize - 1;
+    #else
+  X -= Font->XSize - 1;
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  Y -= Font->YSize - 1;
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_90DEGREE_RIGHT
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= Font->YSize - 1;
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= Font->YSize - 1;
+  Y -= Font->XSize - 1;
+    #else
+  Y -= Font->XSize - 1;
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_UPSIDEDOWN
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifndef GuiConst_MIRRORED_VERTICALLY
+  Y -= Font->YSize - 1;
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= Font->XSize - 1;
+    #else
+  X -= Font->XSize - 1;
+  Y -= Font->YSize - 1;
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_90DEGREE_LEFT
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  Y -= Font->XSize - 1;
+    #else
+  X -= Font->YSize - 1;
+  Y -= Font->XSize - 1;
+    #endif
+  #else
+    #ifndef GuiConst_MIRRORED_VERTICALLY
+  X -= Font->YSize - 1;
+    #endif
+  #endif
+#endif
+
+#else
+
+#ifdef GuiConst_ROTATED_OFF
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+  Y -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+    #else
+  X -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+  Y += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+  Y -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+    #else
+  X += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+  Y += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_90DEGREE_RIGHT
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+  Y += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+    #else
+  X += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+  Y += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+  Y -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+    #else
+  X += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+  Y -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_UPSIDEDOWN
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+  Y += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+    #else
+  X += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+  Y -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+  Y += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+    #else
+  X -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+  Y -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_90DEGREE_LEFT
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+  Y -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+    #else
+  X -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+  Y -= (*(CharPtr + GuiLib_CHR_XWIDTH_OFS) +
+        *(CharPtr + GuiLib_CHR_XLEFT_OFS) - 1);
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X += *(CharPtr + GuiLib_CHR_YTOP_OFS);
+  Y += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+    #else
+  X -= (*(CharPtr + GuiLib_CHR_YHEIGHT_OFS) +
+        *(CharPtr + GuiLib_CHR_YTOP_OFS) - 1);
+  Y += *(CharPtr + GuiLib_CHR_XLEFT_OFS);
+    #endif
+  #endif
+#endif
+
+#endif
+
+#ifdef GuiConst_ADV_FONTS_ON
+  ColorR = (Color & GuiConst_COLORCODING_R_MASK) >>
+     GuiConst_COLORCODING_R_START;
+  ColorG = (Color & GuiConst_COLORCODING_G_MASK) >>
+     GuiConst_COLORCODING_G_START;
+  ColorB = (Color & GuiConst_COLORCODING_B_MASK) >>
+     GuiConst_COLORCODING_B_START;
+#endif
+
+  PY = 0;
+#ifndef GuiConst_FONT_UNCOMPRESSED
+  LineCtrlByte = *LineCtrl;
+  LineCtrlByte >>= 1;
+  LineCtrl++;
+#endif
+  while (PY < YHeight)
+  {
+#ifndef GuiConst_FONT_UNCOMPRESSED
+    LineRepeat = 0;
+    do
+    {
+      LineRepeat++;
+      Finished = (((LineCtrlByte & 0x01) == 0) || (PY >= YHeight - 1));
+
+      PY++;
+      if (PY % 8 == 7)
+      {
+        LineCtrlByte = *LineCtrl;
+        LineCtrl++;
+      }
+      else
+        LineCtrlByte >>= 1;
+    }
+    while (!Finished);
+#endif
+
+#ifdef GuiConst_ADV_FONTS_ON
+    if (Font->ColorDepth == 4)
+      Bx = X;
+    else
+#endif
+      Bx = X;
+
+    for (N = 0; N < PixelLineSize; N++)
+    {
+      PixelPattern = *PixelData;
+
+      if (PixelPattern != 0)
+      {
+#ifdef GuiConst_ADV_FONTS_ON
+        if (Font->ColorDepth == 4)
+        {
+          for (PixN = 0; PixN < 2; PixN++)
+          {
+            if (PixN == 0)
+              PixelShade = PixelPattern & 0x0F;
+            else
+              PixelShade = (PixelPattern & 0xF0) >> 4;
+            if (FullPixelFill && (PixelShade > 0))
+              PixelShade = 0x0F;
+            if (
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+                (Bx + PixN >= sgl.ClippingX1) && (Bx + PixN <= sgl.ClippingX2) &&
+#endif
+               (PixelShade > 0))
+            {
+              PixelShadeInv = 15 - PixelShade;
+              Y2 = Y;
+              PixelPtr = (GuiConst_INT16U*)sgl.CurLayerBufPtr +
+                         (GuiConst_INT32U)Y2 * sgl.CurLayerWidth +
+                         (GuiConst_INT32U)(Bx + PixN);
+#ifndef GuiConst_FONT_UNCOMPRESSED
+              for (M = 0; M < LineRepeat; M++)
+#endif
+              {
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+                if ((Y2 >= sgl.ClippingY1) && (Y2 <= sgl.ClippingY2))
+#endif
+                {
+                  if (PixelShade == 0x0F)
+                  {
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+                    *PixelPtr = (Color << 8) | (Color >> 8);
+#else
+                    *PixelPtr = Color;
+#endif
+                  }
+                  else
+                  {
+                    PixelColor = *PixelPtr;
+                    PixelR = (PixelColor & GuiConst_COLORCODING_R_MASK) >>
+                       GuiConst_COLORCODING_R_START;
+                    PixelG = (PixelColor & GuiConst_COLORCODING_G_MASK) >>
+                       GuiConst_COLORCODING_G_START;
+                    PixelB = (PixelColor & GuiConst_COLORCODING_B_MASK) >>
+                       GuiConst_COLORCODING_B_START;
+                    PixelR = (PixelShade * ColorR + PixelShadeInv * PixelR) / 15;
+                    PixelG = (PixelShade * ColorG + PixelShadeInv * PixelG) / 15;
+                    PixelB = (PixelShade * ColorB + PixelShadeInv * PixelB) / 15;
+                    PixelColor = (PixelR << GuiConst_COLORCODING_R_START) |
+                                (PixelG << GuiConst_COLORCODING_G_START) |
+                                (PixelB << GuiConst_COLORCODING_B_START);
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+                    *PixelPtr = ((PixelColor>>8)&0xFF) | ((PixelColor<<8)&0xFF00);
+#else
+                    *PixelPtr = PixelColor;
+#endif
+                  }
+                }
+                Y2++;
+                PixelPtr += sgl.CurLayerWidth;
+              }
+            }
+          }
+        }
+        else
+  #endif
+        {
+          for (PixN = 0; PixN < 8; PixN++)
+          {
+            if (
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+                (Bx + PixN >= sgl.ClippingX1) && (Bx + PixN <= sgl.ClippingX2) &&
+#endif
+               ((PixelPattern >> (7-PixN)) & 0x01))
+            {
+              Y2 = Y;
+              PixelPtr = (GuiConst_INT16U*)sgl.CurLayerBufPtr +
+                         (GuiConst_INT32U)Y2 * sgl.CurLayerWidth +
+                         (GuiConst_INT32U)(Bx + PixN);
+#ifndef GuiConst_FONT_UNCOMPRESSED
+              for (M = 0; M < LineRepeat; M++)
+#endif
+              {
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+                if ((Y2 >= sgl.ClippingY1) && (Y2 <= sgl.ClippingY2))
+#endif
+                {
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+                  *PixelPtr = (Color << 8) | (Color >> 8);
+#else
+                  *PixelPtr = Color;
+#endif
+                }
+                Y2++;
+                PixelPtr += sgl.CurLayerWidth;
+              }
+            }
+          }
+        }
+      }
+
+      PixelData++;
+#ifdef GuiConst_ADV_FONTS_ON
+      if (Font->ColorDepth == 4)
+        Bx+=2;
+      else
+#endif
+        Bx+=8;
+    }
+
+#ifdef GuiConst_FONT_UNCOMPRESSED
+    PY++;
+    Y++;
+#else
+    Y += LineRepeat;
+#endif
+  }
+}
+
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+
+#define RenderPix                                                              \
+{                                                                              \
+  *PixelPtr2 = *PixelDataPtr2;                                                 \
+  PixelPtr2++;                                                                 \
+  *PixelPtr2 = *(PixelDataPtr2 + 1);                                           \
+  PixelPtr2++;                                                                 \
+}
+
+//------------------------------------------------------------------------------
+static void ShowBitmapArea(
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+   GuiConst_INT8U * PixelDataPtr,
+#else
+   GuiConst_INT8U PrefixRom * PixelDataPtr,
+#endif
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INT32S TranspColor,
+   GuiConst_INT8U BitmapType)
+{
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+   GuiConst_INT8U * PixelDataPtr2;
+#else
+   GuiConst_INT8U PrefixRom * PixelDataPtr2;
+#endif
+  GuiConst_INT16S SizeX;
+  GuiConst_INT16S SizeY;
+  GuiConst_INT8U *PixelPtr1, *PixelPtr2;
+  GuiConst_INT16S I;
+  GuiConst_INT16U Cnt, CntPix;
+  GuiConst_INT8U Diff;
+#ifdef GuiConst_BITMAP_COMPRESSED
+  GuiConst_INT16U Offset;
+  GuiConst_INT16S DX;
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+   GuiConst_INT8U * RemPixelDataPtr;
+   GuiConst_INT8U * LinePixelDataPtr;
+#else
+   GuiConst_INT8U PrefixRom * RemPixelDataPtr;
+   GuiConst_INT8U PrefixRom * LinePixelDataPtr;
+#endif
+#endif
+
+#ifdef GuiConst_DISPLAY_BIG_ENDIAN
+  TranspColor = ((TranspColor&0xFF)<<8)|((TranspColor&0xFF00)>>8);
+#endif
+
+  SizeX = (GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+  SizeX += 256*(GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+  SizeY = (GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+  SizeY += 256*(GuiConst_INT16S)*PixelDataPtr;
+  PixelDataPtr++;
+
+#ifdef GuiConst_ROTATED_90DEGREE
+  sgl.BitmapWriteX2 = X + SizeY - 1;
+  sgl.BitmapWriteY2 = Y + SizeX - 1;
+#else
+  sgl.BitmapWriteX2 = X + SizeX - 1;
+  sgl.BitmapWriteY2 = Y + SizeY - 1;
+#endif
+
+  GuiLib_COORD_ADJUST(X, Y);
+  GuiLib_COLOR_ADJUST_TRANSP(TranspColor);
+
+  if (BitmapType == GuiLib_AREA_BITMAP)
+  {
+    GuiLib_COORD_ADJUST(X1, Y1);
+    GuiLib_COORD_ADJUST(X2, Y2);
+    OrderCoord(&X1, &X2);
+    OrderCoord(&Y1, &Y2);
+  }
+
+#ifdef GuiConst_ROTATED_OFF
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= SizeX - 1;
+  Y -= SizeY - 1;
+    #else
+  X -= SizeX - 1;
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  Y -= SizeY - 1;
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_90DEGREE_RIGHT
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= SizeX - 1;
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= SizeX - 1;
+  Y -= SizeY - 1;
+    #else
+  Y -= SizeY - 1;
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_UPSIDEDOWN
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifndef GuiConst_MIRRORED_VERTICALLY
+  Y -= SizeY - 1;
+    #endif
+  #else
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  X -= SizeX - 1;
+    #else
+  X -= SizeX - 1;
+  Y -= SizeY - 1;
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_ROTATED_90DEGREE_LEFT
+  #ifdef GuiConst_MIRRORED_HORIZONTALLY
+    #ifdef GuiConst_MIRRORED_VERTICALLY
+  Y -= SizeY - 1;
+    #else
+  X -= SizeX - 1;
+  Y -= SizeY - 1;
+    #endif
+  #else
+    #ifndef GuiConst_MIRRORED_VERTICALLY
+  X -= SizeX - 1;
+    #endif
+  #endif
+#endif
+
+  if (BitmapType == GuiLib_AREA_BITMAP)
+  {
+    if ((X1 > X + SizeX - 1) || (X2 < X) || (Y1 > Y + SizeY - 1) || (Y2 < Y))
+      return;
+    if (X1 < X)
+      X1 = X;
+    if (X2 > X + SizeX - 1)
+      X2 = X + SizeX - 1;
+    if (Y1 < Y)
+      Y1 = Y;
+    if (Y2 > Y + SizeY - 1)
+      Y2 = Y + SizeY - 1;
+  }
+  else
+  {
+    X2 = X + SizeX - 1;
+    Y2 = Y + SizeY - 1;
+
+    OrderCoord(&X, &X2);
+    OrderCoord(&Y, &Y2);
+
+    X1 = X;
+    Y1 = Y;
+  }
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (!CheckRect(&X1, &Y1, &X2, &Y2))
+    return;
+#endif
+
+  MarkDisplayBoxRepaint(X1, Y1, X2, Y2);   // Before changing Y1
+
+#ifdef GuiConst_BITMAP_COMPRESSED
+  while (Y < Y1)
+  {
+    Offset = (GuiConst_INT16U)*PixelDataPtr;
+    PixelDataPtr++;
+    Offset += 256 * (GuiConst_INT16U)*PixelDataPtr;
+    PixelDataPtr++;
+    if (Offset != 0)
+    {
+      LinePixelDataPtr = PixelDataPtr;
+      PixelDataPtr += Offset - 2;
+    }
+
+    Y++;
+  }
+  DX = X1 - X;
+#else
+  PixelDataPtr += 2 * (SizeX * (Y1 - Y) + (X1 - X));
+  Diff = 1;
+#endif
+  PixelPtr1 = sgl.CurLayerBufPtr +
+              (GuiConst_INT32U)Y1 * sgl.CurLayerLineSize + (GuiConst_INT32U)(2 * X1);
+  while (Y1 <= Y2)
+  {
+    PixelPtr2 = PixelPtr1;
+
+#ifdef GuiConst_BITMAP_COMPRESSED
+    Offset = (GuiConst_INT16U)*PixelDataPtr;
+    PixelDataPtr++;
+    Offset += 256 * (GuiConst_INT16U)*PixelDataPtr;
+    PixelDataPtr++;
+    if (Offset == 0)
+    {
+      RemPixelDataPtr = PixelDataPtr;
+      PixelDataPtr = LinePixelDataPtr;
+    }
+    else
+      LinePixelDataPtr = PixelDataPtr;
+
+    Cnt = 0;
+    X = DX;
+    while (X > 0)
+    {
+      Diff = *PixelDataPtr;
+      Cnt = Diff & 0x7F;
+      Diff >>= 7;
+      PixelDataPtr++;
+
+      if (X >= Cnt)
+      {
+        if (Diff)
+          PixelDataPtr += 2 * Cnt;
+        else
+          PixelDataPtr += 2;
+        X -= Cnt;
+        Cnt = 0;
+      }
+      else
+      {
+        if (Diff)
+          PixelDataPtr += 2 * X;
+        Cnt -= X;
+        X = 0;
+      }
+    }
+#endif
+
+    PixelDataPtr2 = PixelDataPtr;
+    for (X = X1; X <= X2; X++)
+    {
+#ifdef GuiConst_BITMAP_COMPRESSED
+      if (Cnt == 0)
+      {
+        Diff = *PixelDataPtr2;
+        Cnt = Diff & 0x7F;
+        Diff >>= 7;
+        PixelDataPtr2++;
+      }
+      CntPix = GuiLib_GET_MIN(Cnt, X2 - X + 1);
+      Cnt -= CntPix;
+#else
+      CntPix = X2 - X + 1;
+#endif
+      X += CntPix - 1;
+
+      if (Diff)
+      {
+        if (TranspColor == -1)
+        {
+          CopyBytes(PixelPtr2, PixelDataPtr2, 2 * CntPix);
+          PixelPtr2 += 2 * CntPix;
+          PixelDataPtr2 += 2 * CntPix;
+        }
+        else
+        {
+          while (CntPix > 0)
+          {
+            if (*(GuiConst_INT16U*)PixelDataPtr2 ==
+               (GuiConst_INT16U)TranspColor)
+              PixelPtr2 += 2;
+            else
+            {
+              RenderPix;
+            }
+
+            CntPix--;
+            PixelDataPtr2 += 2;
+          }
+        }
+      }
+#ifdef GuiConst_BITMAP_COMPRESSED
+      else
+      {
+        if ((TranspColor == -1) ||
+           (*(GuiConst_INT16U*)PixelDataPtr2 != (GuiConst_INT16U)TranspColor))
+        {
+          while (CntPix > 0)
+          {
+            RenderPix;
+            CntPix--;
+          }
+        }
+        else
+          PixelPtr2 += 2 * CntPix;
+
+        PixelDataPtr2 += 2;
+      }
+
+      if ((X > X2) && Diff)
+        PixelDataPtr2 += 2 * (X - X2);
+      Cnt = 0;
+#endif
+    }
+
+#ifdef GuiConst_BITMAP_COMPRESSED
+    if (Offset == 0)
+      PixelDataPtr = RemPixelDataPtr;
+    else
+      PixelDataPtr = LinePixelDataPtr + Offset - 2;
+#else
+    PixelDataPtr += 2 * SizeX;
+#endif
+
+    Y1++;
+    PixelPtr1 += sgl.CurLayerLineSize;
+  }
+}
+#endif
+
+//==============================================================================
+
+//------------------------------------------------------------------------------
+void GuiLib_InvertBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  GuiConst_INT16S X;
+  GuiConst_INT16U *PixelPtr;
+  GuiConst_INT32U DeltaLineSize;
+
+  GuiLib_COORD_ADJUST(X1, Y1);
+  GuiLib_COORD_ADJUST(X2, Y2);
+
+  OrderCoord(&X1, &X2);
+  OrderCoord(&Y1, &Y2);
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (CheckRect (&X1, &Y1, &X2, &Y2))
+#endif
+  {
+    MarkDisplayBoxRepaint(X1, Y1, X2, Y2);
+
+    PixelPtr = (GuiConst_INT16U*)sgl.CurLayerBufPtr +
+               (GuiConst_INT32U)Y1 * sgl.CurLayerWidth + (GuiConst_INT32U)X1;
+    DeltaLineSize = sgl.CurLayerWidth - (GuiConst_INT32U)(X2 - X1 + 1);
+    while (Y1 <= Y2)
+    {
+      for (X = X1; X <= X2; X++)
+      {
+        *PixelPtr = ~*PixelPtr;
+        PixelPtr++;
+      }
+      Y1++;
+      PixelPtr += DeltaLineSize;
+    }
+  }
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiItems.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,5704 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2015 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                               v6.0.9.005                                 */
+/*                                                                          */
+/*     GuiLib.c include file - do NOT reference it in your linker setup     */
+/*                                                                          */
+/* ************************************************************************ */
+
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+static GuiConst_INT8U GetItemByte(
+   GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr)
+{
+  GuiConst_INT8U D;
+#ifdef GuiConst_AVRGCC_COMPILER
+  D = ReadBytePtr(*ItemDataPtrPtr);
+#else
+#ifdef GuiConst_AVR_COMPILER_FLASH_RAM
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+#else
+#ifdef GuiConst_ICC_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr;
+  ItemFlashPtr = (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+#else
+  D = **ItemDataPtrPtr;
+#endif
+#endif
+#endif
+#endif
+  (*ItemDataPtrPtr)++;
+  return (D);
+}
+//------------------------------------------------------------------------------
+static GuiConst_INT16S GetItemWord(
+   GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr)
+{
+  GuiConst_INT16U D;
+
+#ifdef GuiConst_AVRGCC_COMPILER
+  D = ReadBytePtr(*ItemDataPtrPtr);
+  (*ItemDataPtrPtr)++;
+  D += 0x0100 * (GuiConst_INT16U)ReadBytePtr(*ItemDataPtrPtr);
+#else
+#ifdef GuiConst_AVR_COMPILER_FLASH_RAM
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x0100 * (*ItemFlashPtr);
+#else
+#ifdef GuiConst_ICC_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x0100 * (*ItemFlashPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr;
+  ItemFlashPtr = (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x0100 * (*ItemFlashPtr);
+#else
+  D = **ItemDataPtrPtr;
+  (*ItemDataPtrPtr)++;
+  D += 0x0100 * (GuiConst_INT16U)**ItemDataPtrPtr;
+#endif
+#endif
+#endif
+#endif
+  (*ItemDataPtrPtr)++;
+  return ((GuiConst_INT16S) D);
+}
+//------------------------------------------------------------------------------
+#ifdef GuiLib_COLOR_BYTESIZE_3
+static GuiConst_INT32S GetItemTriple(
+   GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr)
+{
+  GuiConst_INT32U D;
+
+#ifdef GuiConst_AVRGCC_COMPILER
+  D = ReadBytePtr(*ItemDataPtrPtr);
+  (*ItemDataPtrPtr)++;
+  D += 0x00000100 * (GuiConst_INT32U)ReadBytePtr(*ItemDataPtrPtr);
+  (*ItemDataPtrPtr)++;
+  D += 0x00010000 * (GuiConst_INT32U)ReadBytePtr(*ItemDataPtrPtr);
+#else
+#ifdef GuiConst_AVR_COMPILER_FLASH_RAM
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00000100 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00010000 * (*ItemFlashPtr);
+#else
+#ifdef GuiConst_ICC_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00000100 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00010000 * (*ItemFlashPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr;
+  ItemFlashPtr = (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00000100 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00010000 * (*ItemFlashPtr);
+#else
+  D = **ItemDataPtrPtr;
+  (*ItemDataPtrPtr)++;
+  D += 0x00000100 * (GuiConst_INT32U)**ItemDataPtrPtr;
+  (*ItemDataPtrPtr)++;
+  D += 0x00010000 * (GuiConst_INT32U)**ItemDataPtrPtr;
+#endif
+#endif
+#endif
+#endif
+  (*ItemDataPtrPtr)++;
+  return ((GuiConst_INT32S) D);
+}
+#endif
+
+#ifdef GuiLib_GETITEMLONG
+//------------------------------------------------------------------------------
+static GuiConst_INT32S GetItemLong(
+   GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr)
+{
+  GuiConst_INT32U D;
+
+#ifdef GuiConst_AVRGCC_COMPILER
+  D = ReadBytePtr(*ItemDataPtrPtr);
+  (*ItemDataPtrPtr)++;
+  D += 0x00000100 * (GuiConst_INT32U)ReadBytePtr(*ItemDataPtrPtr);
+  (*ItemDataPtrPtr)++;
+  D += 0x00010000 * (GuiConst_INT32U)ReadBytePtr(*ItemDataPtrPtr);
+  (*ItemDataPtrPtr)++;
+  D += 0x01000000 * (GuiConst_INT32U)ReadBytePtr(*ItemDataPtrPtr);
+#else
+#ifdef GuiConst_AVR_COMPILER_FLASH_RAM
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00000100 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00010000 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x01000000 * (*ItemFlashPtr);
+#else
+#ifdef GuiConst_ICC_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr =
+     (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00000100 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00010000 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x01000000 * (*ItemFlashPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+  GuiConst_INT8U PrefixRom * ItemFlashPtr;
+  ItemFlashPtr = (GuiConst_INT8U PrefixRom *)*ItemDataPtrPtr;
+  D = *ItemFlashPtr;
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00000100 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x00010000 * (*ItemFlashPtr);
+  (*ItemDataPtrPtr)++;
+  ItemFlashPtr++;
+  D += 0x01000000 * (*ItemFlashPtr);
+#else
+  D = **ItemDataPtrPtr;
+  (*ItemDataPtrPtr)++;
+  D += 0x00000100 * (GuiConst_INT32U)**ItemDataPtrPtr;
+  (*ItemDataPtrPtr)++;
+  D += 0x00010000 * (GuiConst_INT32U)**ItemDataPtrPtr;
+  (*ItemDataPtrPtr)++;
+  D += 0x01000000 * (GuiConst_INT32U)**ItemDataPtrPtr;
+#endif
+#endif
+#endif
+#endif
+  (*ItemDataPtrPtr)++;
+  return ((GuiConst_INT32S) D);
+}
+#endif
+
+//------------------------------------------------------------------------------
+#ifdef GuiLib_COLOR_BYTESIZE_1
+#define GetItemColor GetItemByte
+#endif
+#ifdef GuiLib_COLOR_BYTESIZE_2
+#define GetItemColor GetItemWord
+#endif
+#ifdef GuiLib_COLOR_BYTESIZE_3
+#define GetItemColor GetItemTriple
+#endif
+
+//------------------------------------------------------------------------------
+GuiConst_TEXT PrefixGeneric *GetItemTextPtr(GuiConst_INT8U index)
+{
+#ifndef GuiConst_REMOTE_TEXT_DATA
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  GuiConst_INT16U TxtReadSize;
+#endif
+#endif
+
+  if (index > 2)
+    return NULL;
+
+#ifdef GuiConst_REMOTE_TEXT_DATA
+  sgl.CurItem.TextLength[index] = GetRemoteText(sgl.CurItem.TextIndex[index]);
+  sgl.CurItem.TextPtr[index] = &sgl.GuiLib_RemoteTextBuffer[0];
+
+#else
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+
+  TxtReadSize = sgl.CurItem.TextLength[index] + 1;
+#ifndef GuiConst_CHARMODE_ANSI
+  TxtReadSize *= 2;
+#endif
+
+  GuiLib_RemoteDataReadBlock(sgl.CurItem.TextOffset[index],
+                             TxtReadSize,
+                             (GuiConst_INT8U PrefixGeneric*)&sgl.GuiLib_RemoteStructText);
+  sgl.CurItem.TextPtr[index] = (GuiConst_TEXT PrefixGeneric*)&sgl.GuiLib_RemoteStructText;
+#endif
+#endif // GuiConst_REMOTE_TEXT_DATA
+
+  return sgl.CurItem.TextPtr[index];
+
+
+}
+
+//------------------------------------------------------------------------------
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+#define GuiItem_TEMP_PTR_NEEDED
+#endif
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+#ifndef GuiItem_TEMP_PTR_NEEDED
+#define GuiItem_TEMP_PTR_NEEDED
+#endif
+#endif
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+#ifndef GuiItem_TEMP_PTR_NEEDED
+#define GuiItem_TEMP_PTR_NEEDED
+#endif
+#endif
+
+static void DrawItem(
+   GuiConst_INT8U ColorInvert)
+{
+  GuiConst_INT16U StructToCallIndex;
+  GuiConst_INT32S VarValue;
+  GuiConst_INT16S I, N;
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+  GuiConst_INT8U CheckmarkMode;
+#endif
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+  GuiConst_INT16S RemYMemory;
+#endif
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+  GuiConst_INT8U DisabledGlyphColorInUse;
+  GuiConst_INT8U DisabledTextColorInUse;
+  GuiConst_INT16S CX, CY;
+  GuiConst_INT16S RemX1, RemY1;
+  GuiConst_INT16S GX1, GX2, GY1, GY2;
+  GuiConst_INTCOLOR ButtonColor;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiConst_INT16S RemClippingX1, RemClippingY1, RemClippingX2, RemClippingY2;
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+#endif
+  GuiConst_INT16U StrLen;
+#ifdef GuiItem_TEMP_PTR_NEEDED
+  TextParRec TempTextPar;
+#endif
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  GuiConst_INT8U IsCursorField;
+  GuiConst_INT8U FoundActiveCursorField;
+#endif
+  GuiConst_INTCOLOR ForeColor;
+  GuiConst_INTCOLOR BackColor;
+  GuiConst_INT8U BackColorTransp;
+  GuiConst_INT32S BackColor2;
+#ifndef GuiConst_CHARMODE_ANSI
+  GuiConst_INT16U P;
+#endif
+  GuiConst_TEXT PrefixGeneric *CharPtr;
+  GuiConst_INT16S X1, X2, Y1, Y2;
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  GuiConst_INT16S CX1, CX2, CY1, CY2;
+  GuiConst_INT16S Y;
+  GuiConst_INT16S SourceLayerIndexNo;
+  GuiConst_INT16S DestLayerIndexNo;
+  GuiConst_INT8U PrefixLocate *DestAddress;
+  GuiConst_INT16U DestLineSize;
+  GuiConst_INT16S DestX;
+  GuiConst_INT16S DestY;
+  GuiConst_INT16U DestWidth;
+  GuiConst_INT16U DestHeight;
+  GuiConst_INT8U PrefixLocate *SourceAddress;
+  GuiConst_INT16U SourceLineSize;
+  GuiConst_INT16S SourceX;
+  GuiConst_INT16S SourceY;
+  GuiConst_INT16U SourceWidth;
+  GuiConst_INT16U SourceHeight;
+  GuiConst_INT32S FilterPars[10];
+#endif
+#ifdef GuiConst_ITEM_STRUCTCOND_INUSE
+  GuiConst_INT8U FirstRound;
+#endif
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+  GuiConst_INT32S TouchSearch;
+  GuiConst_INT32S TouchIndex;
+#endif
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  GuiConst_INT16S found;
+  GuiConst_INT16S PrefixLocate *ScrollPos;
+#endif
+
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+  if (!sgl.InitialDrawing)
+  {
+    sgl.CoordOrigoX = sgl.CurItem.CoordOrigoX;
+    sgl.CoordOrigoY = sgl.CurItem.CoordOrigoY;
+  }
+#endif
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (!sgl.InitialDrawing && sgl.DisplayWriting)
+    GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                       sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif
+
+  SetCurFont(sgl.CurItem.TextPar[0].FontIndex);
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  IsCursorField = (sgl.CursorInUse && (sgl.CurItem.CursorFieldNo >= 0));
+  FoundActiveCursorField =
+     (IsCursorField && (GuiLib_ActiveCursorFieldNo == sgl.CurItem.CursorFieldNo));
+  if (FoundActiveCursorField)
+    sgl.CursorActiveFieldFound = 1;
+#endif
+
+  sgl.AutoRedrawSaveIndex = -1;
+
+  if ((sgl.InitialDrawing) || (sgl.AutoRedrawUpdate == GuiLib_TRUE))
+  {
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+    if ((sgl.CurItem.CursorFieldNo >= 0) && (sgl.CursorFieldFound == -1))
+      sgl.CursorFieldFound = sgl.CurItem.CursorFieldNo;
+
+    if (IsCursorField)
+    {
+      sgl.CurItem.CursorFieldLevel++;
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+      if (sgl.NextScrollLineReading)
+      {
+        sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FIELDSCROLLBOX;
+        sgl.CurItem.CursorScrollBoxIndex = sgl.GlobalScrollBoxIndex;
+      }
+      else
+#endif
+        sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_FIELDSCROLLBOX;
+
+#ifndef GuiConst_CURSOR_FIELDS_OFF
+      if (!(sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_AUTOREDRAWFIELD))
+        sgl.AutoRedrawSaveIndex = AutoRedraw_InsertCursor(&sgl.CurItem, 0, sgl.DisplayLevel);
+#endif
+    }
+#endif // GuiConst_CURSOR_SUPPORT_ON
+
+    if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_AUTOREDRAWFIELD)
+    {
+      sgl.AutoRedrawSaveIndex = AutoRedraw_Insert(&sgl.CurItem, 0, sgl.DisplayLevel);
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+      if (IsCursorField)
+        AutoRedraw_SetAsCursor(sgl.AutoRedrawSaveIndex);
+#endif // GuiConst_CURSOR_SUPPORT_ON
+    }
+  }
+
+  switch (ColorInvert)
+  {
+    case GuiLib_COL_INVERT_OFF:
+      sgl.SwapColors = 0;
+      break;
+
+    case GuiLib_COL_INVERT_ON:
+      sgl.SwapColors = 1;
+      break;
+
+    case GuiLib_COL_INVERT_IF_CURSOR:
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+      if (FoundActiveCursorField)
+        sgl.SwapColors = 1;
+#else
+      sgl.SwapColors = 0;
+#endif
+      break;
+  }
+  if (sgl.SwapColors)
+  {
+    ForeColor = sgl.CurItem.BarForeColor;
+    BackColor = sgl.CurItem.BarBackColor;
+    BackColorTransp =
+       ((sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_BARTRANSPARENT) > 0);
+  }
+  else
+  {
+    ForeColor = sgl.CurItem.ForeColor;
+    BackColor = sgl.CurItem.BackColor;
+    BackColorTransp =
+       ((sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_TRANSPARENT) > 0);
+  }
+
+  sgl.CurItem.Drawn = 0;
+  switch (sgl.CurItem.ItemType)
+  {
+    case GuiLib_ITEM_CLEARAREA:
+      if (sgl.DisplayWriting)
+      {
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        X2 = sgl.CurItem.X2;
+        Y2 = sgl.CurItem.Y2;
+        OrderCoord(&X1, &X2);
+        OrderCoord(&Y1, &Y2);
+        if (!BackColorTransp)
+          GuiLib_FillBox(X1, Y1, X2, Y2, BackColor);
+        UpdateDrawLimits(X1, Y1, X2, Y2);
+      }
+
+      break;
+
+    case GuiLib_ITEM_TEXT:
+      if (sgl.DisplayWriting)
+      {
+        if (sgl.CurItem.TextPar[0].BackBoxSizeX > 0)
+        {
+          DrawBackBox(BackColor, BackColorTransp, 0);
+          UpdateDrawLimits(sgl.BbX1, sgl.BbY1, sgl.BbX2, sgl.BbY2);
+        }
+
+        DRAW_ROM_TEXT(GetItemTextPtr(0),
+                      sgl.CurItem.TextLength[0],
+                      0,
+                      ForeColor,
+                      BackColor,
+                      BackColorTransp);
+
+        UpdateDrawLimits(sgl.FontWriteX1, sgl.FontWriteY1, sgl.FontWriteX2, sgl.FontWriteY2);
+      }
+
+      break;
+
+    case GuiLib_ITEM_TEXTBLOCK:
+      if (sgl.DisplayWriting)
+      {
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+        ScrollPos = TextBox_Scroll_GetPosRec(
+            sgl.CurItem.CompPars.CompTextBox.ScrollIndex);
+
+        if (ScrollPos != NULL)
+          sgl.CurItem.CompPars.CompTextBox.ScrollPos = *ScrollPos;
+#endif
+        DRAW_ROM_TEXTBLOCK(GetItemTextPtr(0),
+                           sgl.CurItem.TextLength[0],
+                           0,
+                           ForeColor,
+                           BackColor,
+                           BackColorTransp);
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+        if (ScrollPos != NULL)
+          *ScrollPos = sgl.CurItem.CompPars.CompTextBox.ScrollPos;
+#endif
+
+        UpdateDrawLimits(sgl.CurItem.X1, sgl.CurItem.Y1, sgl.CurItem.X2, sgl.CurItem.Y2);
+#endif
+      }
+
+      break;
+
+    case GuiLib_ITEM_VAR:
+      if (sgl.DisplayWriting)
+      {
+#ifdef GuiConst_DISP_VAR_NOW
+        displayVarNow = 1;
+#endif
+
+        if (sgl.CurItem.TextPar[0].BackBoxSizeX > 0)
+        {
+          DrawBackBox(BackColor, BackColorTransp, 0);
+          UpdateDrawLimits(sgl.BbX1, sgl.BbY1, sgl.BbX2, sgl.BbY2);
+        }
+
+        if (sgl.CurItem.VarPtr != 0)
+        {
+          if (sgl.CurItem.VarType == GuiLib_VAR_STRING)
+          {
+            CharPtr = (GuiConst_TEXT PrefixGeneric *)sgl.CurItem.VarPtr;
+#ifdef GuiConst_CHARMODE_ANSI
+            StrLen = strlen(CharPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+            StrLen = GuiLib_UnicodeStrLen((GuiConst_TEXT*)CharPtr);
+#else
+            StrLen = GuiLib_UnicodeStrLen(CharPtr);
+#endif
+#endif
+          }
+          else
+          {
+            VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+            StrLen = DataNumStr(VarValue, sgl.CurItem.VarType, 0);
+#ifdef GuiConst_CHARMODE_ANSI
+            CharPtr = (GuiConst_TEXT PrefixGeneric *) sgl.VarNumTextStr;
+#else
+            for (P = 0; P <= StrLen; P++)
+              sgl.VarNumUnicodeTextStr[P] = sgl.VarNumTextStr[P];
+            CharPtr = (GuiConst_TEXT PrefixGeneric *) sgl.VarNumUnicodeTextStr;
+#endif
+          }
+
+#ifdef GuiConst_CHARMODE_ANSI
+          strcpy(sgl.AnsiTextBuf, CharPtr);
+          DrawText(sgl.AnsiTextBuf,
+                   StrLen,
+                   0,
+                   ForeColor,
+                   BackColor,
+                   BackColorTransp);
+#else
+          GuiLib_UnicodeStrCpy(sgl.UnicodeTextBuf, CharPtr);
+          DrawText(sgl.UnicodeTextBuf,
+                   StrLen,
+                   0,
+                   ForeColor,
+                   BackColor,
+                   BackColorTransp);
+#endif
+        }
+
+#ifdef GuiConst_DISP_VAR_NOW
+        displayVarNow = 0;
+#endif
+
+        UpdateDrawLimits(sgl.FontWriteX1, sgl.FontWriteY1, sgl.FontWriteX2, sgl.FontWriteY2);
+      }
+
+      break;
+
+    case GuiLib_ITEM_VARBLOCK:
+      if (sgl.DisplayWriting)
+      {
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+#ifdef GuiConst_DISP_VAR_NOW
+        displayVarNow = 1;
+#endif
+
+        if (sgl.CurItem.VarPtr != 0)
+        {
+          if (sgl.CurItem.VarType == GuiLib_VAR_STRING)
+          {
+            CharPtr = (GuiConst_TEXT PrefixGeneric *)sgl.CurItem.VarPtr;
+#ifdef GuiConst_CHARMODE_ANSI
+            StrLen = strlen(CharPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+            StrLen = GuiLib_UnicodeStrLen((GuiConst_TEXT*)CharPtr);
+#else
+            StrLen = GuiLib_UnicodeStrLen(CharPtr);
+#endif
+#endif
+          }
+          else
+          {
+            VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+            StrLen = DataNumStr(VarValue, sgl.CurItem.VarType, 0);
+#ifdef GuiConst_CHARMODE_ANSI
+            CharPtr = (GuiConst_TEXT PrefixGeneric *) sgl.VarNumTextStr;
+#else
+            for (P = 0; P <= StrLen; P++)
+              sgl.VarNumUnicodeTextStr[P] = sgl.VarNumTextStr[P];
+            CharPtr = (GuiConst_TEXT PrefixGeneric *) sgl.VarNumUnicodeTextStr;
+#endif
+          }
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+        ScrollPos = TextBox_Scroll_GetPosRec(
+            sgl.CurItem.CompPars.CompTextBox.ScrollIndex);
+
+        if (ScrollPos != NULL)
+          sgl.CurItem.CompPars.CompTextBox.ScrollPos = *ScrollPos;
+#endif
+
+#ifdef GuiConst_CHARMODE_ANSI
+          strcpy(sgl.AnsiTextBuf, CharPtr);
+          DrawTextBlock(sgl.AnsiTextBuf,
+                        StrLen,
+                        0,
+                        ForeColor,
+                        BackColor,
+                        BackColorTransp);
+#else
+          GuiLib_UnicodeStrCpy(sgl.UnicodeTextBuf, CharPtr);
+          DrawTextBlock(sgl.UnicodeTextBuf,
+                        StrLen,
+                        0,
+                        ForeColor,
+                        BackColor,
+                        BackColorTransp);
+#endif
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+        if (ScrollPos != NULL)
+          *ScrollPos = sgl.CurItem.CompPars.CompTextBox.ScrollPos;
+#endif
+
+        }
+
+#ifdef GuiConst_DISP_VAR_NOW
+        displayVarNow = 0;
+#endif
+
+        UpdateDrawLimits(sgl.CurItem.X1, sgl.CurItem.Y1, sgl.CurItem.X2, sgl.CurItem.Y2);
+#endif
+      }
+
+      break;
+
+    case GuiLib_ITEM_DOT:
+      if (sgl.DisplayWriting)
+      {
+        GuiLib_Dot(sgl.CurItem.X1, sgl.CurItem.Y1, ForeColor);
+        UpdateDrawLimits(sgl.CurItem.X1, sgl.CurItem.Y1, sgl.CurItem.X1, sgl.CurItem.Y1);
+      }
+
+      break;
+
+    case GuiLib_ITEM_LINE:
+      if (sgl.DisplayWriting)
+      {
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        X2 = sgl.CurItem.X2;
+        Y2 = sgl.CurItem.Y2;
+        if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_PATTERNEDLINE)
+          GuiLib_LinePattern(X1, Y1, X2, Y2, sgl.CurItem.LinePattern, ForeColor);
+        else
+          GuiLib_Line(X1, Y1, X2, Y2, ForeColor);
+        UpdateDrawLimits(X1, Y1, X2, Y2);
+      }
+      break;
+
+    case GuiLib_ITEM_FRAME:
+      if (sgl.DisplayWriting)
+      {
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        X2 = sgl.CurItem.X2;
+        Y2 = sgl.CurItem.Y2;
+        OrderCoord(&X1, &X2);
+        OrderCoord(&Y1, &Y2);
+        if (sgl.CurItem.FrameThickness == 0)
+          N = sgl.ThicknessMemory;
+        else
+          N = sgl.CurItem.FrameThickness;
+        DrawBorderBox(X1, Y1, X2, Y2, ForeColor, BackColor, BackColorTransp, N);
+        UpdateDrawLimits(X1, Y1, X2, Y2);
+      }
+
+      break;
+
+    case GuiLib_ITEM_ROUNDEDFRAME:
+      if (sgl.DisplayWriting)
+      {
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        X2 = sgl.CurItem.X2;
+        Y2 = sgl.CurItem.Y2;
+        OrderCoord(&X1, &X2);
+        OrderCoord(&Y1, &Y2);
+
+        if (BackColorTransp)
+          BackColor2 = GuiLib_NO_COLOR;
+        else
+          BackColor2 = BackColor;
+
+        if (sgl.CurItem.R1 <= 0)
+          DrawBorderBox(
+             X1, Y1, X2, Y2,
+             ForeColor, BackColor, BackColorTransp, 1);
+        else
+        {
+          Ellipse(
+             X1 + sgl.CurItem.R1, Y1 + sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, BackColor2, 0, 0, 1, 0);
+          if (X2 - X1 + 1 - 2 * sgl.CurItem.R1 > 0)
+          {
+            GuiLib_HLine(X1 + sgl.CurItem.R1, X2 - sgl.CurItem.R1, Y1, ForeColor);
+            if (!BackColorTransp)
+              GuiLib_FillBox(
+                 X1 + sgl.CurItem.R1, Y1 + 1, X2 - sgl.CurItem.R1, Y1 + sgl.CurItem.R1,
+                 BackColor);
+          }
+          Ellipse(
+             X2 - sgl.CurItem.R1, Y1 + sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, BackColor2, 0, 0, 0, 1);
+          if (Y2 - Y1 + 1 - 2 * sgl.CurItem.R1 > 0)
+          {
+            GuiLib_VLine(X1, Y1 + sgl.CurItem.R1, Y2 - sgl.CurItem.R1, ForeColor);
+            if (!BackColorTransp)
+              GuiLib_FillBox(
+                 X1 + 1, Y1 + sgl.CurItem.R1, X2 - 1, Y2 - sgl.CurItem.R1, BackColor);
+            GuiLib_VLine(X2 , Y1 + sgl.CurItem.R1, Y2 - sgl.CurItem.R1, ForeColor);
+          }
+          Ellipse(
+             X1 + sgl.CurItem.R1, Y2 - sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, BackColor2, 0, 1, 0, 0);
+          if (X2 - X1 + 1 - 2 * sgl.CurItem.R1 > 0)
+          {
+            if (!BackColorTransp)
+              GuiLib_FillBox(
+                 X1 + sgl.CurItem.R1, Y2 - sgl.CurItem.R1, X2 - sgl.CurItem.R1, Y2 - 1,
+                 BackColor);
+            GuiLib_HLine(X1 + sgl.CurItem.R1, X2 - sgl.CurItem.R1, Y2, ForeColor);
+          }
+          Ellipse(
+             X2 - sgl.CurItem.R1, Y2 - sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, BackColor2, 1, 0, 0, 0);
+        }
+      }
+      break;
+
+    case GuiLib_ITEM_BLOCK:
+      if (sgl.DisplayWriting)
+      {
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        X2 = sgl.CurItem.X2;
+        Y2 = sgl.CurItem.Y2;
+        OrderCoord(&X1, &X2);
+        OrderCoord(&Y1, &Y2);
+        GuiLib_FillBox(X1, Y1, X2, Y2, ForeColor);
+        UpdateDrawLimits(X1, Y1, X2, Y2);
+      }
+
+      break;
+
+    case GuiLib_ITEM_ROUNDEDBLOCK:
+      if (sgl.DisplayWriting)
+      {
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        X2 = sgl.CurItem.X2;
+        Y2 = sgl.CurItem.Y2;
+        OrderCoord(&X1, &X2);
+        OrderCoord(&Y1, &Y2);
+
+        if (sgl.CurItem.R1 <= 0)
+          GuiLib_FillBox(X1, Y1, X2, Y2, ForeColor);
+        else
+        {
+          Ellipse(
+             X1 + sgl.CurItem.R1, Y1 + sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, ForeColor, 0, 0, 1, 0);
+          if (X2 - X1 + 1 - 2 * sgl.CurItem.R1 > 0)
+            GuiLib_FillBox(
+               X1 + sgl.CurItem.R1, Y1, X2 - sgl.CurItem.R1, Y1 + sgl.CurItem.R1,
+               ForeColor);
+          Ellipse(
+             X2 - sgl.CurItem.R1, Y1 + sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, ForeColor, 0, 0, 0, 1);
+          if (Y2 - Y1 + 1 - 2 * sgl.CurItem.R1 > 0)
+            GuiLib_FillBox(X1, Y1 + sgl.CurItem.R1, X2, Y2 - sgl.CurItem.R1, ForeColor);
+          Ellipse(
+             X1 + sgl.CurItem.R1, Y2 - sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, ForeColor, 0, 1, 0, 0);
+          if (X2 - X1 + 1 - 2 * sgl.CurItem.R1 > 0)
+            GuiLib_FillBox(
+               X1 + sgl.CurItem.R1, Y2 - sgl.CurItem.R1, X2 - sgl.CurItem.R1, Y2,
+               ForeColor);
+          Ellipse(
+             X2 - sgl.CurItem.R1, Y2 - sgl.CurItem.R1, sgl.CurItem.R1, sgl.CurItem.R1,
+             ForeColor, ForeColor, 1, 0, 0, 0);
+        }
+      }
+      break;
+
+    case GuiLib_ITEM_CIRCLE:
+      if (sgl.DisplayWriting && (sgl.CurItem.R1 >= 0))
+      {
+        if (BackColorTransp)
+          BackColor2 = GuiLib_NO_COLOR;
+        else
+          BackColor2 = BackColor;
+        if ((sgl.CurItem.FrameThickness == 0xFF) &&
+           !(sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_CIRCLE_IF))
+        {
+          Ellipse(sgl.CurItem.X1 + sgl.CurItem.R1,
+                  sgl.CurItem.Y1,
+                  sgl.CurItem.R1,
+                  sgl.CurItem.R1,
+                  ForeColor, BackColor2,
+                  1, 1, 1, 1);
+          UpdateDrawLimits(sgl.CurItem.X1,
+                           sgl.CurItem.Y1 - sgl.CurItem.R1,
+                           sgl.CurItem.X1 + 2 * sgl.CurItem.R1,
+                           sgl.CurItem.Y1 + sgl.CurItem.R1);
+        }
+        else
+        {
+          Circle(sgl.CurItem.X1 + sgl.CurItem.R1,
+                 sgl.CurItem.Y1,
+                 sgl.CurItem.R1,
+                 ForeColor,
+                 sgl.CurItem.FrameThickness & 0x01,
+                 sgl.CurItem.FrameThickness & 0x02,
+                 sgl.CurItem.FrameThickness & 0x04,
+                 sgl.CurItem.FrameThickness & 0x08,
+                 sgl.CurItem.FrameThickness & 0x10,
+                 sgl.CurItem.FrameThickness & 0x20,
+                 sgl.CurItem.FrameThickness & 0x40,
+                 sgl.CurItem.FrameThickness & 0x80,
+                 sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_CIRCLE_IF);
+          X1 = sgl.CurItem.X1 + sgl.CurItem.R1;
+          Y1 = sgl.CurItem.Y1;
+          X2 = sgl.CurItem.X1 + sgl.CurItem.R1;
+          Y2 = sgl.CurItem.Y1;
+          if (sgl.CurItem.FrameThickness & 0xC3)
+            X2 += sgl.CurItem.R1;
+          if (sgl.CurItem.FrameThickness & 0x3C)
+            X1 -= sgl.CurItem.R1;
+          if (sgl.CurItem.FrameThickness & 0xF0)
+            Y1 -= sgl.CurItem.R1;
+          if (sgl.CurItem.FrameThickness & 0x0F)
+            Y2 += sgl.CurItem.R1;
+          UpdateDrawLimits(X1, Y1, X2, Y2);
+        }
+      }
+      break;
+
+    case GuiLib_ITEM_QUARTERCIRCLE:
+      if (sgl.DisplayWriting && (sgl.CurItem.R1 >= 0))
+      {
+        if (BackColorTransp)
+          BackColor2 = GuiLib_NO_COLOR;
+        else
+          BackColor2 = BackColor;
+
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        Ellipse(X1 + sgl.CurItem.R1,
+                Y1,
+                sgl.CurItem.R1,
+                sgl.CurItem.R1,
+                ForeColor, BackColor2,
+                (sgl.CurItem.FrameThickness == 0),
+                (sgl.CurItem.FrameThickness == 1),
+                (sgl.CurItem.FrameThickness == 2),
+                (sgl.CurItem.FrameThickness == 3));
+
+        switch (sgl.CurItem.FrameThickness)
+        {
+          case 1:
+            X1 += sgl.CurItem.R1;
+            break;
+          case 2:
+            X1 += sgl.CurItem.R1;
+            Y1 += sgl.CurItem.R1;
+            break;
+          case 3:
+            Y1 += sgl.CurItem.R1;
+            break;
+        }
+        UpdateDrawLimits(sgl.CurItem.X1,
+                         sgl.CurItem.Y1,
+                         sgl.CurItem.X1 + sgl.CurItem.R1,
+                         sgl.CurItem.Y1 + sgl.CurItem.R1);
+      }
+      break;
+
+    case GuiLib_ITEM_ELLIPSE:
+      if (sgl.DisplayWriting && (sgl.CurItem.R1 >= 0) && (sgl.CurItem.R2 >= 0))
+      {
+        if (BackColorTransp)
+          BackColor2 = GuiLib_NO_COLOR;
+        else
+          BackColor2 = BackColor;
+        Ellipse(sgl.CurItem.X1 + sgl.CurItem.R1,
+                sgl.CurItem.Y1,
+                sgl.CurItem.R1,
+                sgl.CurItem.R2,
+                ForeColor, BackColor2, 1, 1, 1, 1);
+
+        UpdateDrawLimits(sgl.CurItem.X1,
+                         sgl.CurItem.Y1 - sgl.CurItem.R2,
+                         sgl.CurItem.X1 + 2 * sgl.CurItem.R1,
+                         sgl.CurItem.Y1 + sgl.CurItem.R2);
+      }
+      break;
+
+    case GuiLib_ITEM_QUARTERELLIPSE:
+      if (sgl.DisplayWriting && (sgl.CurItem.R1 >= 0) && (sgl.CurItem.R2 >= 0))
+      {
+        if (BackColorTransp)
+          BackColor2 = GuiLib_NO_COLOR;
+        else
+          BackColor2 = BackColor;
+
+        X1 = sgl.CurItem.X1;
+        Y1 = sgl.CurItem.Y1;
+        Ellipse(X1 + sgl.CurItem.R1,
+                Y1,
+                sgl.CurItem.R1,
+                sgl.CurItem.R2,
+                ForeColor, BackColor2,
+                (sgl.CurItem.FrameThickness == 0),
+                (sgl.CurItem.FrameThickness == 1),
+                (sgl.CurItem.FrameThickness == 2),
+                (sgl.CurItem.FrameThickness == 3));
+
+        switch (sgl.CurItem.FrameThickness)
+        {
+          case 1:
+            X1 += sgl.CurItem.R1;
+            break;
+          case 2:
+            X1 += sgl.CurItem.R1;
+            Y1 += sgl.CurItem.R2;
+            break;
+          case 3:
+            Y1 += sgl.CurItem.R2;
+            break;
+        }
+        UpdateDrawLimits(sgl.CurItem.X1,
+                         sgl.CurItem.Y1,
+                         sgl.CurItem.X1 + sgl.CurItem.R1,
+                         sgl.CurItem.Y1 + sgl.CurItem.R2);
+      }
+      break;
+
+    case GuiLib_ITEM_BITMAP:
+    case GuiLib_ITEM_BACKGROUND:
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+      if (sgl.DisplayWriting)
+      {
+        if (sgl.CommonByte6 & 0x02)
+          BackColor2 = sgl.CurItem.CompPars.CompBitmap.TranspColor;
+        else
+          BackColor2 = -1;
+        GuiLib_ShowBitmap(sgl.CurItem.StructToCallIndex,
+                          sgl.CurItem.X1,
+                          sgl.CurItem.Y1,
+                          BackColor2);
+        UpdateDrawLimits(sgl.CurItem.X1, sgl.CurItem.Y1,
+                         sgl.BitmapWriteX2, sgl.BitmapWriteY2);
+      }
+
+      if (sgl.CurItem.ItemType == GuiLib_ITEM_BACKGROUND)
+      {
+        sgl.BackgrBitmapAry[sgl.GlobalBackgrBitmapIndex].InUse = 1;
+        sgl.BackgrBitmapAry[sgl.GlobalBackgrBitmapIndex].Index =
+           sgl.CurItem.StructToCallIndex;
+        sgl.BackgrBitmapAry[sgl.GlobalBackgrBitmapIndex].X = sgl.CurItem.X1;
+        sgl.BackgrBitmapAry[sgl.GlobalBackgrBitmapIndex].Y = sgl.CurItem.Y1;
+        if (sgl.GlobalBackgrBitmapIndex < GuiConst_MAX_BACKGROUND_BITMAPS - 1)
+          sgl.GlobalBackgrBitmapIndex++;
+      }
+#endif
+
+      break;
+
+    case GuiLib_ITEM_ACTIVEAREA:
+      if (sgl.DisplayWriting)
+      {
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+        if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_CLIPPING)
+        {
+          sgl.CurItem.ClipRectX1 = sgl.CurItem.X1;
+          sgl.CurItem.ClipRectY1 = sgl.CurItem.Y1;
+          sgl.CurItem.ClipRectX2 = sgl.CurItem.X2;
+          sgl.CurItem.ClipRectY2 = sgl.CurItem.Y2;
+          sgl.ActiveAreaX1 = sgl.CurItem.X1;
+          sgl.ActiveAreaY1 = sgl.CurItem.Y1;
+          sgl.ActiveAreaX2 = sgl.CurItem.X2;
+          sgl.ActiveAreaY2 = sgl.CurItem.Y2;
+          OrderCoord(&sgl.ActiveAreaX1, &sgl.ActiveAreaX2);
+          OrderCoord(&sgl.ActiveAreaY1, &sgl.ActiveAreaY2);
+#ifdef GuiConst_DISPLAY_ACTIVE_AREA_CLIPPING
+          if (sgl.ActiveAreaX1 < sgl.DisplayActiveAreaX1)
+            sgl.ActiveAreaX1 = sgl.DisplayActiveAreaX1;
+          if (sgl.ActiveAreaY1 < sgl.DisplayActiveAreaY1)
+            sgl.ActiveAreaY1 = sgl.DisplayActiveAreaY1;
+          if (sgl.ActiveAreaX2 > sgl.DisplayActiveAreaX2)
+            sgl.ActiveAreaX2 = sgl.DisplayActiveAreaX2;
+          if (sgl.ActiveAreaY2 > sgl.DisplayActiveAreaY2)
+            sgl.ActiveAreaY2 = sgl.DisplayActiveAreaY2;
+#endif
+          GuiLib_SetClipping(sgl.ActiveAreaX1, sgl.ActiveAreaY1,
+                             sgl.ActiveAreaX2, sgl.ActiveAreaY2);
+        }
+#endif
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+        if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_ACTIVEAREARELCOORD)
+        {
+          sgl.CurItem.ClipRectX1 += sgl.CoordOrigoX;
+          sgl.CurItem.ClipRectY1 += sgl.CoordOrigoY;
+          sgl.CurItem.ClipRectX2 += sgl.CoordOrigoX;
+          sgl.CurItem.ClipRectY2 += sgl.CoordOrigoY;
+        }
+#endif
+#endif
+
+        sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+        sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+        if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_ACTIVEAREARELCOORD)
+        {
+          sgl.CoordOrigoX += sgl.CurItem.X1;
+          sgl.CoordOrigoY += sgl.CurItem.Y1;
+        }
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+        sgl.CurItem.CoordOrigoX = sgl.CoordOrigoX;
+        sgl.CurItem.CoordOrigoY = sgl.CoordOrigoY;
+#endif
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+        sgl.CurItem.ClipRectX1 -= sgl.CoordOrigoX;
+        sgl.CurItem.ClipRectY1 -= sgl.CoordOrigoY;
+        sgl.CurItem.ClipRectX2 -= sgl.CoordOrigoX;
+        sgl.CurItem.ClipRectY2 -= sgl.CoordOrigoY;
+#endif
+#endif
+      }
+      break;
+
+    case GuiLib_ITEM_CLIPRECT:
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      if (sgl.DisplayWriting)
+      {
+        if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_CLIPPING)
+        {
+          sgl.CurItem.ClipRectX1 = sgl.CurItem.X1;
+          sgl.CurItem.ClipRectY1 = sgl.CurItem.Y1;
+          sgl.CurItem.ClipRectX2 = sgl.CurItem.X2;
+          sgl.CurItem.ClipRectY2 = sgl.CurItem.Y2;
+        }
+        StartClipping(
+           (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_CLIPPING) != 0);
+      }
+#endif
+      break;
+
+    case GuiLib_ITEM_STRUCTURE:
+    case GuiLib_ITEM_STRUCTARRAY:
+    case GuiLib_ITEM_STRUCTCOND:
+      if (sgl.DisplayWriting && (sgl.CurItem.TextPar[0].BackBoxSizeX > 0))
+      {
+        DrawBackBox(BackColor, BackColorTransp, 0);
+        UpdateDrawLimits(sgl.BbX1, sgl.BbY1, sgl.BbX2, sgl.BbY2);
+      }
+
+      StructToCallIndex = sgl.CurItem.StructToCallIndex;
+      if (sgl.CurItem.ItemType == GuiLib_ITEM_STRUCTARRAY)
+      {
+        if (StructToCallIndex != 0xFFFF)
+        {
+          VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+
+          I = sgl.CurItem.CompPars.StructCall.IndexCount;
+          while (I > 0)
+          {
+            if (ReadWord(GuiStruct_StructNdxList[StructToCallIndex]) ==
+                VarValue)
+              break;
+
+            StructToCallIndex++;
+            I--;
+          }
+          if (I == 0)
+          {
+            if (ReadWord(GuiStruct_StructNdxList[sgl.CurItem.StructToCallIndex]) == 0xFFFF)
+              StructToCallIndex = sgl.CurItem.StructToCallIndex;
+            else
+              StructToCallIndex = 0xFFFF;
+          }
+        }
+      }
+#ifdef GuiConst_ITEM_STRUCTCOND_INUSE
+      else if (sgl.CurItem.ItemType == GuiLib_ITEM_STRUCTCOND)
+      {
+        VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+
+        I = sgl.CurItem.CompPars.StructCall.IndexCount - 1;
+        FirstRound = 1;
+        while (I >= 0)
+        {
+          if ((VarValue >= sgl.CurItem.CompPars.StructCall.IndexFirst[I]) &&
+              (VarValue <= sgl.CurItem.CompPars.StructCall.IndexLast[I]) &&
+              ((sgl.CurItem.CompPars.StructCall.IndexFirst[I] ==
+                sgl.CurItem.CompPars.StructCall.IndexLast[I]) ||
+              !FirstRound))
+          {
+            StructToCallIndex = sgl.CurItem.CompPars.StructCall.CallIndex[I];
+            break;
+          }
+
+          I--;
+
+          if ((I == -1) && FirstRound)
+          {
+            FirstRound = 0;
+            I = sgl.CurItem.CompPars.StructCall.IndexCount - 1;
+          }
+        }
+      }
+#endif
+      DrawSubStruct(StructToCallIndex, ColorInvert, 0);
+      break;
+
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+    case GuiLib_ITEM_TOUCHAREA:
+      TouchIndex = -1;
+      for (TouchSearch = 0; TouchSearch < sgl.TouchAreaCnt; TouchSearch++)
+        if (sgl.TouchAreas[TouchSearch].IndexNo ==
+            sgl.CurItem.CompPars.CompTouch.AreaNo)
+        {
+          TouchIndex = TouchSearch;
+          break;
+        }
+      if (TouchIndex == -1)
+      {
+        TouchIndex = sgl.TouchAreaCnt;
+        sgl.TouchAreaCnt++;
+      }
+      sgl.TouchAreas[TouchIndex].IndexNo = sgl.CurItem.CompPars.CompTouch.AreaNo;
+      sgl.TouchAreas[TouchIndex].X1 = sgl.CurItem.X1;
+      sgl.TouchAreas[TouchIndex].Y1 = sgl.CurItem.Y1;
+      sgl.TouchAreas[TouchIndex].X2 = sgl.CurItem.X2;
+      sgl.TouchAreas[TouchIndex].Y2 = sgl.CurItem.Y2;
+      OrderCoord(&sgl.TouchAreas[TouchIndex].X1, &sgl.TouchAreas[TouchIndex].X2);
+      OrderCoord(&sgl.TouchAreas[TouchIndex].Y1, &sgl.TouchAreas[TouchIndex].Y2);
+
+      break;
+#endif
+
+    case GuiLib_ITEM_POSCALLBACK:
+      for (I = 0; I < GuiConst_POSCALLBACK_CNT; I++)
+        if (sgl.PosCallbacks[I].InUse &&
+           (sgl.PosCallbacks[I].IndexNo == sgl.CurItem.PosCallbackNo) &&
+           (sgl.PosCallbacks[I].PosCallbackFunc != 0))
+        {
+          (*sgl.PosCallbacks[I].PosCallbackFunc)(sgl.CurItem.PosCallbackNo,
+                                                 sgl.CurItem.X1,
+                                                 sgl.CurItem.Y1);
+          break;
+        }
+      break;
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+    case GuiLib_ITEM_SCROLLBOX:
+      break;
+#endif
+
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+    case GuiLib_ITEM_CHECKBOX:
+      PrepareInternalStruct();
+
+      GuiVarCompInt1 = sgl.CurItem.CompPars.CompCheckBox.Size;
+      sgl.Memory.C[0] = ForeColor;
+
+      Y2 = sgl.CurItem.Y1 + sgl.CurItem.CompPars.CompCheckBox.Size - 1;
+      switch (sgl.CurItem.CompPars.CompCheckBox.Style)
+      {
+        case GuiLib_CHECKBOX_FLAT:
+          if (BackColorTransp)
+            DrawSubStruct(GuiStructCOMP_CBFLATTRANSP, 0, 1);
+          else
+            DrawSubStruct(GuiStructCOMP_CBFLAT, 0, 1);
+          break;
+        case GuiLib_CHECKBOX_3D:
+          DrawSubStruct(GuiStructCOMP_CB3D, 0, 1);
+          if (!BackColorTransp)
+            DrawSubStruct(GuiStructCOMP_CB3DINNER, 0, 1);
+          break;
+        case GuiLib_CHECKBOX_ICON:
+          TempTextPar = sgl.CurItem.TextPar[0];
+          SetCurFont(sgl.CurItem.CompPars.CompCheckBox.IconFont);
+          sgl.CurItem.X1 = sgl.CurItem.X1 + sgl.CurItem.CompPars.CompCheckBox.IconOffsetX;
+          sgl.CurItem.Y1 = sgl.CurItem.Y1 + sgl.CurItem.CompPars.CompCheckBox.IconOffsetY;
+          sgl.CurItem.TextPar[0].Alignment = GuiLib_ALIGN_LEFT;
+          sgl.CurItem.TextPar[0].Ps = GuiLib_PS_OFF;
+          sgl.CurItem.TextPar[0].BitFlags = 0;
+          sgl.CurItem.TextPar[0].BackBoxSizeX = 0;
+          sgl.CurItem.TextPar[0].BackBorderPixels = 0;
+          DrawText(sgl.CurItem.CompPars.CompCheckBox.IconPtr,
+                   1,
+                   0,
+                   ForeColor,
+                   BackColor,
+                   BackColorTransp);
+          Y2 = sgl.FontWriteY2;
+          sgl.CurItem.TextPar[0] = TempTextPar;
+          break;
+        case GuiLib_CHECKBOX_BITMAP:
+          if (sgl.CurItem.CompPars.CompCheckBox.BitmapIsTransparent)
+            BackColor2 = sgl.CurItem.CompPars.CompCheckBox.BitmapTranspColor;
+          else
+            BackColor2 = -1;
+          GuiLib_ShowBitmap(sgl.CurItem.CompPars.CompCheckBox.BitmapIndex,
+                            sgl.CurItem.X1, sgl.CurItem.Y1,
+                            BackColor2);
+          break;
+      }
+
+      if ((sgl.CurItem.VarPtr != 0) && (sgl.CurItem.VarType != GuiLib_VAR_STRING))
+      {
+        VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+
+        if (VarValue != 0)
+          CheckmarkMode = 1;
+        else if ((sgl.CurItem.CompPars.CompCheckBox.Style == GuiLib_CHECKBOX_NONE) &&
+                 (!BackColorTransp))
+          CheckmarkMode = 2;
+        else
+          CheckmarkMode = 0;
+
+        if (CheckmarkMode > 0)
+        {
+          GuiVarCompInt1 = sgl.CurItem.CompPars.CompCheckBox.Size;
+          if (CheckmarkMode == 1)
+            sgl.Memory.C[0] = sgl.CurItem.CompPars.CompCheckBox.MarkColor;
+          else
+            sgl.Memory.C[0] = BackColor;
+
+          switch (sgl.CurItem.CompPars.CompCheckBox.MarkStyle)
+          {
+            case GuiLib_CHECKBOX_MARK_CHECKED:
+              GuiVarCompInt1 =
+                     (sgl.CurItem.CompPars.CompCheckBox.Size / 2) -
+                     ((sgl.CurItem.CompPars.CompCheckBox.Size - 6) / 6);
+              GuiVarCompInt2 =
+                     (sgl.CurItem.CompPars.CompCheckBox.Size /
+                      2) +
+                     ((sgl.CurItem.CompPars.CompCheckBox.Size - 8) / 6);
+              GuiVarCompInt3 = GuiVarCompInt2 -
+                     ((sgl.CurItem.CompPars.CompCheckBox.Size - 1) / 5);
+              GuiVarCompInt4 = -GuiVarCompInt3;
+              GuiVarCompInt5 = -((GuiVarCompInt3 - 1) / 2);
+              if (((sgl.CurItem.CompPars.CompCheckBox.Style ==
+                    GuiLib_CHECKBOX_FLAT) ||
+                   (sgl.CurItem.CompPars.CompCheckBox.Style ==
+                    GuiLib_CHECKBOX_3D) ||
+                   (sgl.CurItem.CompPars.CompCheckBox.Style ==
+                    GuiLib_CHECKBOX_NONE)) &&
+                   (sgl.CurItem.CompPars.CompCheckBox.Size <= 10))
+                DrawSubStruct(GuiStructCOMP_CBMCHSMALL, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_CBMCHBIG, 0, 1);
+              break;
+            case GuiLib_CHECKBOX_MARK_CROSSED:
+              if ((sgl.CurItem.CompPars.CompCheckBox.Style ==
+                   GuiLib_CHECKBOX_FLAT) &&
+                  (sgl.CurItem.CompPars.CompCheckBox.Size <= 8))
+                DrawSubStruct(GuiStructCOMP_CBMCRFLSMALL, 0, 1);
+              else if (((sgl.CurItem.CompPars.CompCheckBox.Style ==
+                         GuiLib_CHECKBOX_3D) ||
+                        (sgl.CurItem.CompPars.CompCheckBox.Style ==
+                         GuiLib_CHECKBOX_NONE)) &&
+                       (sgl.CurItem.CompPars.CompCheckBox.Size <= 8))
+                DrawSubStruct(GuiStructCOMP_CBMCR3DSMALL, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_CBMCRBIG, 0, 1);
+              break;
+            case GuiLib_CHECKBOX_MARK_FILLED:
+              if (sgl.CurItem.CompPars.CompCheckBox.Style == GuiLib_CHECKBOX_FLAT)
+                DrawSubStruct(GuiStructCOMP_CBMFIFLAT, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_CBMFI3D, 0, 1);
+              break;
+            case GuiLib_CHECKBOX_MARK_ICON:
+              TempTextPar = sgl.CurItem.TextPar[0];
+              SetCurFont(sgl.CurItem.CompPars.CompCheckBox.MarkIconFont);
+              sgl.CurItem.X1 = sgl.CurItem.X1 +
+                               sgl.CurItem.CompPars.CompCheckBox.MarkOffsetX;
+              sgl.CurItem.Y1 = Y2 +
+                               sgl.CurItem.CompPars.CompCheckBox.MarkOffsetY;
+              sgl.CurItem.TextPar[0].Alignment = GuiLib_ALIGN_LEFT;
+              sgl.CurItem.TextPar[0].Ps = GuiLib_PS_OFF;
+              sgl.CurItem.TextPar[0].BitFlags = 0;
+              sgl.CurItem.TextPar[0].BackBoxSizeX = 0;
+              sgl.CurItem.TextPar[0].BackBorderPixels = 0;
+              if (CheckmarkMode == 1)
+                DrawText(sgl.CurItem.CompPars.CompCheckBox.MarkIconPtr,
+                         1,
+                         0,
+                         sgl.CurItem.CompPars.CompCheckBox.MarkColor,
+                         0,
+                         1);
+              else
+                DrawText(sgl.CurItem.CompPars.CompCheckBox.MarkIconPtr,
+                         1,
+                         0,
+                         BackColor,
+                         0,
+                         2);
+              sgl.CurItem.TextPar[0] = TempTextPar;
+              break;
+            case GuiLib_CHECKBOX_MARK_BITMAP:
+              if (CheckmarkMode == 1)
+              {
+                if (sgl.CurItem.CompPars.CompCheckBox.MarkBitmapIsTransparent)
+                  BackColor2 = sgl.CurItem.CompPars.CompCheckBox.MarkBitmapTranspColor;
+                else
+                  BackColor2 = -1;
+                GuiLib_ShowBitmap(sgl.CurItem.CompPars.CompCheckBox.MarkBitmapIndex,
+                                  sgl.CurItem.X1 +
+                                  sgl.CurItem.CompPars.CompCheckBox.MarkOffsetX,
+                                  sgl.CurItem.Y1 +
+                                  sgl.CurItem.CompPars.CompCheckBox.MarkOffsetY,
+                                  BackColor2);
+              }
+              else
+              {
+                ReadBitmapSizes(sgl.CurItem.CompPars.CompCheckBox.MarkBitmapIndex);
+                GuiLib_FillBox(sgl.CurItem.X1, sgl.CurItem.Y1,
+                               sgl.CurItem.X1 + sgl.BitmapSizeX -1, sgl.CurItem.Y1 + sgl.BitmapSizeY - 1,
+                               BackColor);
+              }
+              break;
+          }
+        }
+      }
+      break;
+#endif
+
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+    case GuiLib_ITEM_RADIOBUTTON:
+      PrepareInternalStruct();
+
+      X1 = sgl.CurItem.X1;
+      Y1 = sgl.CurItem.Y1;
+      RemYMemory = sgl.Memory.Y[GuiLib_MEMORY_CNT];
+
+      if ((sgl.CurItem.VarPtr != 0) &&
+          (sgl.CurItem.VarType != GuiLib_VAR_STRING))
+        VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+      else
+        VarValue = -1;
+
+      for (N = 0; N < sgl.CurItem.CompPars.CompRadioButton.Count; N++)
+      {
+        GuiVarCompInt1 = sgl.CurItem.CompPars.CompRadioButton.Size;
+        sgl.Memory.C[0] = ForeColor;
+        switch (sgl.CurItem.CompPars.CompRadioButton.Style)
+        {
+          case GuiLib_RADIOBUTTON_FLAT:
+            if (BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_RBFLATTRANSP, 0, 1);
+            else
+              DrawSubStruct(GuiStructCOMP_RBFLAT, 0, 1);
+            break;
+          case GuiLib_RADIOBUTTON_3D:
+            if (!BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_RB3DINNER, 0, 1);
+            DrawSubStruct(GuiStructCOMP_RB3D, 0, 1);
+            break;
+          case GuiLib_RADIOBUTTON_ICON:
+            TempTextPar = sgl.CurItem.TextPar[0];
+            SetCurFont(sgl.CurItem.CompPars.CompRadioButton.IconFont);
+            sgl.CurItem.X1 = X1 + sgl.CurItem.CompPars.CompRadioButton.IconOffsetX;
+            sgl.CurItem.Y1 = Y1 + sgl.CurItem.CompPars.CompRadioButton.IconOffsetY +
+                         sgl.CurFont->BaseLine;
+            sgl.CurItem.TextPar[0].Alignment = GuiLib_ALIGN_LEFT;
+            sgl.CurItem.TextPar[0].Ps = GuiLib_PS_OFF;
+            sgl.CurItem.TextPar[0].BitFlags = 0;
+            sgl.CurItem.TextPar[0].BackBoxSizeX = 0;
+            sgl.CurItem.TextPar[0].BackBorderPixels = 0;
+            DrawText(sgl.CurItem.CompPars.CompRadioButton.IconPtr,
+                     1,
+                     0,
+                     ForeColor,
+                     BackColor,
+                     BackColorTransp);
+            sgl.CurItem.TextPar[0] = TempTextPar;
+            break;
+          case GuiLib_RADIOBUTTON_BITMAP:
+            if (sgl.CurItem.CompPars.CompRadioButton.BitmapIsTransparent)
+              BackColor2 = sgl.CurItem.CompPars.CompRadioButton.BitmapTranspColor;
+            else
+              BackColor2 = -1;
+            GuiLib_ShowBitmap(sgl.CurItem.CompPars.CompRadioButton.BitmapIndex,
+                              X1, Y1,
+                              BackColor2);
+            break;
+        }
+
+        if (VarValue == N)
+        {
+          GuiVarCompInt1 = sgl.CurItem.CompPars.CompRadioButton.Size;
+          GuiVarCompInt2 = sgl.CurItem.CompPars.CompRadioButton.Size - 3;
+          if (sgl.CurItem.CompPars.CompRadioButton.Style ==
+              GuiLib_RADIOBUTTON_FLAT)
+            GuiVarCompInt2++;
+          sgl.Memory.C[0] = sgl.CurItem.CompPars.CompRadioButton.MarkColor;
+          switch (sgl.CurItem.CompPars.CompRadioButton.MarkStyle)
+          {
+            case GuiLib_RADIOBUTTON_MARK_STANDARD:
+              if (GuiVarCompInt1 <= 1)
+                DrawSubStruct(GuiStructCOMP_RBMSQUA, 0, 1);
+              else if (sgl.CurItem.CompPars.CompRadioButton.Style ==
+                       GuiLib_RADIOBUTTON_FLAT)
+                DrawSubStruct(GuiStructCOMP_RBMFLAT, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_RBM3D, 0, 1);
+              break;
+            case GuiLib_RADIOBUTTON_MARK_ICON:
+              TempTextPar = sgl.CurItem.TextPar[0];
+              SetCurFont(sgl.CurItem.CompPars.CompRadioButton.MarkIconFont);
+              sgl.CurItem.X1 = X1 + sgl.CurItem.CompPars.CompRadioButton.MarkOffsetX;
+              sgl.CurItem.Y1 = Y1 + sgl.CurItem.CompPars.CompRadioButton.MarkOffsetY +
+                           sgl.CurFont->BaseLine;
+              sgl.CurItem.TextPar[0].Alignment = GuiLib_ALIGN_LEFT;
+              sgl.CurItem.TextPar[0].Ps = GuiLib_PS_OFF;
+              sgl.CurItem.TextPar[0].BitFlags = 0;
+              sgl.CurItem.TextPar[0].BackBoxSizeX = 0;
+              sgl.CurItem.TextPar[0].BackBorderPixels = 0;
+              DrawText(sgl.CurItem.CompPars.CompRadioButton.MarkIconPtr,
+                       1,
+                       0,
+                       ForeColor,
+                       BackColor,
+                       BackColorTransp);
+              sgl.CurItem.TextPar[0] = TempTextPar;
+              break;
+            case GuiLib_RADIOBUTTON_MARK_BITMAP:
+              if (sgl.CurItem.CompPars.CompRadioButton.MarkBitmapIsTransparent)
+                BackColor2 = sgl.CurItem.CompPars.CompRadioButton.MarkBitmapTranspColor;
+              else
+                BackColor2 = -1;
+              GuiLib_ShowBitmap(sgl.CurItem.CompPars.CompRadioButton.MarkBitmapIndex,
+                                X1 +
+                                sgl.CurItem.CompPars.CompRadioButton.MarkOffsetX,
+                                Y1 +
+                                sgl.CurItem.CompPars.CompRadioButton.MarkOffsetY,
+                                BackColor2);
+              break;
+          }
+        }
+
+        Y1 += sgl.CurItem.CompPars.CompRadioButton.InterDistance;
+        sgl.Memory.Y[GuiLib_MEMORY_CNT] +=
+           sgl.CurItem.CompPars.CompRadioButton.InterDistance;
+      }
+
+      sgl.Memory.Y[GuiLib_MEMORY_CNT] = RemYMemory;
+      break;
+#endif
+
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+    case GuiLib_ITEM_BUTTON:
+      PrepareInternalStruct();
+
+      X1 = sgl.CurItem.X1;
+      Y1 = sgl.CurItem.Y1;
+      X2 = sgl.CurItem.X2;
+      Y2 = sgl.CurItem.Y2;
+      RemX1 = sgl.CurItem.X1;
+      RemY1 = sgl.CurItem.Y1;
+
+      GuiVarCompInt1 = X2 - X1 + 1;
+      GuiVarCompInt2 = Y2 - Y1 + 1;
+      GuiVarCompInt3 = sgl.CurItem.R1;
+      GuiVarCompInt4 = GuiVarCompInt1 - sgl.CurItem.R1;
+      GuiVarCompInt5 = GuiVarCompInt2 - sgl.CurItem.R1;
+
+      sgl.Memory.C[0] = ForeColor;
+      sgl.Memory.C[1] = BackColor;
+
+      if (sgl.ButtonColorOverride == GuiLib_TRUE)
+        sgl.Memory.C[2] = sgl.DisabledButtonColor;
+      else
+        sgl.Memory.C[2] = GuiLib_DesaturatePixelColor(BackColor,800);
+
+      if ((sgl.CurItem.VarPtr != 0) &&
+          (sgl.CurItem.VarType != GuiLib_VAR_STRING))
+      {
+        VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+        if ((VarValue < GuiLib_BUTTON_STATE_UP) ||
+            (VarValue > GuiLib_BUTTON_STATE_DISABLED))
+          VarValue = GuiLib_BUTTON_STATE_UP;
+      }
+      else
+        VarValue = GuiLib_BUTTON_STATE_UP;
+
+      DisabledGlyphColorInUse = 0;
+      DisabledTextColorInUse = 0;
+      switch (sgl.CurItem.CompPars.CompButton.BodyStyle)
+      {
+        case GuiLib_BUTTON_BODY_FLAT:
+          switch (VarValue)
+          {
+            case 0 :
+              if (sgl.CurItem.R1 == 0)
+                DrawSubStruct(GuiStructCOMP_BUFLAT0, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_BUFLATR0, 0, 1);
+              break;
+            case 1 :
+              if (sgl.CurItem.R1 == 0)
+                DrawSubStruct(GuiStructCOMP_BUFLAT1, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_BUFLATR1, 0, 1);
+              break;
+            case 2 :
+              if (sgl.CurItem.R1 == 0)
+                DrawSubStruct(GuiStructCOMP_BUFLAT2, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_BUFLATR2, 0, 1);
+              DisabledGlyphColorInUse =
+                 (sgl.CurItem.CompPars.CompButton.GlyphLikeUp & 0x02);
+              DisabledTextColorInUse =
+                 (sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x08);
+              break;
+          }
+          break;
+        case GuiLib_BUTTON_BODY_3D:
+          switch (VarValue)
+          {
+            case 0 :
+              if (sgl.CurItem.R1 == 0)
+                DrawSubStruct(GuiStructCOMP_BU3D0, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_BU3DR0, 0, 1);
+              break;
+            case 1 :
+              if (sgl.CurItem.R1 == 0)
+                DrawSubStruct(GuiStructCOMP_BU3D1, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_BU3DR1, 0, 1);
+              break;
+            case 2 :
+              if (sgl.CurItem.R1 == 0)
+                DrawSubStruct(GuiStructCOMP_BU3D2, 0, 1);
+              else
+                DrawSubStruct(GuiStructCOMP_BU3DR2, 0, 1);
+              DisabledGlyphColorInUse =
+                 !(sgl.CurItem.CompPars.CompButton.GlyphLikeUp & 0x02);
+              DisabledTextColorInUse =
+                 !(sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x08);
+              break;
+          }
+          break;
+        case GuiLib_BUTTON_BODY_ICON:
+          TempTextPar = sgl.CurItem.TextPar[VarValue];
+          SetCurFont(sgl.CurItem.CompPars.CompButton.BodyIconFont[VarValue]);
+          sgl.CurItem.X1 =
+             X1 +
+             sgl.CurItem.CompPars.CompButton.BodyIconOffsetX[VarValue];
+          sgl.CurItem.Y1 =
+             Y1 +
+             sgl.CurItem.CompPars.CompButton.BodyIconOffsetY[VarValue] +
+             sgl.CurFont->BaseLine;
+          sgl.CurItem.TextPar[VarValue].Alignment = GuiLib_ALIGN_LEFT;
+          sgl.CurItem.TextPar[VarValue].Ps = GuiLib_PS_OFF;
+          sgl.CurItem.TextPar[VarValue].BitFlags = 0;
+          sgl.CurItem.TextPar[VarValue].BackBoxSizeX = 0;
+          sgl.CurItem.TextPar[VarValue].BackBorderPixels = 0;
+          DrawText(sgl.CurItem.CompPars.CompButton.BodyIconPtr[VarValue],
+                   1,
+                   VarValue,
+                   ForeColor,
+                   BackColor,
+                   BackColorTransp);
+          sgl.CurItem.TextPar[VarValue] = TempTextPar;
+          X1 = sgl.FontWriteX1;
+          Y1 = sgl.FontWriteY1;
+          X2 = sgl.FontWriteX2;
+          Y2 = sgl.FontWriteY2;
+          break;
+        case GuiLib_BUTTON_BODY_BITMAP:
+          if (sgl.CurItem.CompPars.CompButton.BodyBitmapIsTransparent[VarValue])
+            BackColor2 =
+               sgl.CurItem.CompPars.CompButton.BodyBitmapTranspColor[VarValue];
+          else
+            BackColor2 = -1;
+          GuiLib_ShowBitmap(sgl.CurItem.CompPars.CompButton.BodyBitmapIndex[VarValue],
+                            X1, Y1,
+                            BackColor2);
+          X2 = sgl.BitmapWriteX2;
+          Y2 = sgl.BitmapWriteY2;
+          break;
+      }
+
+      CX = (X1 + X2) / 2;
+      CY = (Y1 + Y2) / 2;
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      RemClippingX1 = sgl.CurItem.ClipRectX1;
+      RemClippingY1 = sgl.CurItem.ClipRectY1;
+      RemClippingX2 = sgl.CurItem.ClipRectX2;
+      RemClippingY2 = sgl.CurItem.ClipRectY2;
+      sgl.CurItem.ClipRectX1 = GuiLib_GET_MAX(sgl.CurItem.ClipRectX1, X1);
+      sgl.CurItem.ClipRectY1 = GuiLib_GET_MAX(sgl.CurItem.ClipRectY1, Y1);
+      sgl.CurItem.ClipRectX2 = GuiLib_GET_MIN(sgl.CurItem.ClipRectX2, X2);
+      sgl.CurItem.ClipRectY2 = GuiLib_GET_MIN(sgl.CurItem.ClipRectY2, Y2);
+      GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                         sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+      if (sgl.CurItem.CompPars.CompButton.Layout != GuiLib_BUTTON_LAYOUT_TEXT)
+      {
+        switch (sgl.CurItem.CompPars.CompButton.Layout)
+        {
+          case GuiLib_BUTTON_LAYOUT_GLYPH:
+            GX1 = CX;
+            GY1 = CY;
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHLEFT:
+            GX1 = X1 + GuiLib_GET_MIN((Y2 - Y1) / 2, (X2 - X1) / 4);
+            GY1 = CY;
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHRIGHT:
+            GX1 = X2 - GuiLib_GET_MIN((Y2 - Y1) / 2, (X2 - X1) / 4);
+            GY1 = CY;
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHTOP:
+            GX1 = CX;
+            GY1 = Y1 + ((Y2 - Y1) / 4);
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHBOTTOM:
+            GX1 = CX;
+            GY1 = Y2 - ((Y2 - Y1) / 4);
+            break;
+        }
+        switch (sgl.CurItem.CompPars.CompButton.GlyphStyle)
+        {
+          case GuiLib_BUTTON_GLYPH_ICON:
+            TempTextPar = sgl.CurItem.TextPar[VarValue];
+            SetCurFont(sgl.CurItem.CompPars.CompButton.GlyphIconFont[VarValue]);
+            sgl.CurItem.X1 =
+               GX1 +
+               sgl.CurItem.CompPars.CompButton.GlyphIconOffsetX[VarValue];
+            sgl.CurItem.Y1 =
+               GY1 +
+               sgl.CurItem.CompPars.CompButton.GlyphIconOffsetY[VarValue] +
+               GuiLib_FONT_MID_Y(sgl.CurFont->BaseLine, sgl.CurFont->TopLine);
+            sgl.CurItem.TextPar[VarValue].Alignment = GuiLib_ALIGN_CENTER;
+            sgl.CurItem.TextPar[VarValue].Ps = GuiLib_PS_OFF;
+            sgl.CurItem.TextPar[VarValue].BitFlags = 0;
+            sgl.CurItem.TextPar[VarValue].BackBoxSizeX = 0;
+            sgl.CurItem.TextPar[VarValue].BackBorderPixels = 0;
+            if (DisabledGlyphColorInUse)
+              ButtonColor = GuiLib_MiddlePixelColor(
+                 sgl.CurItem.CompPars.CompButton.GlyphIconColor[VarValue],
+                 sgl.Memory.C[2],
+                 800);
+            else
+              ButtonColor = sgl.CurItem.CompPars.CompButton.GlyphIconColor[VarValue];
+            DrawText(sgl.CurItem.CompPars.CompButton.GlyphIconPtr[VarValue],
+                     1,
+                     VarValue,
+                     ButtonColor,
+                     0,
+                     GuiLib_TRUE);
+            sgl.CurItem.TextPar[VarValue] = TempTextPar;
+            GX1 = sgl.FontWriteX1;
+            GY1 = sgl.FontWriteY1;
+            GX2 = sgl.FontWriteX2;
+            GY2 = sgl.FontWriteY2;
+            break;
+          case GuiLib_BUTTON_GLYPH_BITMAP:
+            ReadBitmapSizes(sgl.CurItem.CompPars.CompButton.GlyphBitmapIndex[VarValue]);
+            GX1 -= sgl.BitmapSizeX / 2;
+            GY1 -= sgl.BitmapSizeY / 2;
+
+            GX1 += sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetX[VarValue];
+            GY1 += sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetY[VarValue];
+            if (sgl.CurItem.CompPars.CompButton.GlyphBitmapIsTransparent[VarValue])
+              BackColor2 = sgl.CurItem.CompPars.CompButton.GlyphBitmapTranspColor[VarValue];
+            else
+              BackColor2 = -1;
+            GuiLib_ShowBitmap(sgl.CurItem.CompPars.CompButton.GlyphBitmapIndex[VarValue],
+                              GX1, GY1,
+                              BackColor2);
+            GX2 = sgl.BitmapWriteX2;
+            GY2 = sgl.BitmapWriteY2;
+            break;
+        }
+      }
+
+      if (sgl.CurItem.CompPars.CompButton.Layout != GuiLib_BUTTON_LAYOUT_GLYPH)
+      {
+        TempTextPar = sgl.CurItem.TextPar[VarValue];
+        SetCurFont(sgl.CurItem.TextPar[VarValue].FontIndex);
+        switch (sgl.CurItem.CompPars.CompButton.Layout)
+        {
+          case GuiLib_BUTTON_LAYOUT_TEXT:
+            sgl.CurItem.X1 = CX;
+            sgl.CurItem.Y1 = CY;
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHLEFT:
+            sgl.CurItem.X1 = X2 - ((X2 - GX2 + 1) / 2);
+            sgl.CurItem.Y1 = CY;
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHRIGHT:
+            sgl.CurItem.X1 = X1 + ((GX1 - X1 + 1) / 2);
+            sgl.CurItem.Y1 = CY;
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHTOP:
+            sgl.CurItem.X1 = CX;
+            sgl.CurItem.Y1 = Y2 - ((Y2 - GY2 + 1) / 2);
+            break;
+          case GuiLib_BUTTON_LAYOUT_GLYPHBOTTOM:
+            sgl.CurItem.X1 = CX;
+            sgl.CurItem.Y1 = Y1 + ((GY1 - Y1 + 1) / 2);
+            break;
+        }
+        sgl.CurItem.Y1 +=
+           GuiLib_FONT_MID_Y(sgl.CurFont->BaseLine, sgl.CurFont->TopLine);
+        sgl.CurItem.TextPar[VarValue].Alignment = GuiLib_ALIGN_CENTER;
+        sgl.CurItem.TextPar[VarValue].BitFlags = 0;
+        sgl.CurItem.TextPar[VarValue].BackBoxSizeX = 0;
+        sgl.CurItem.TextPar[VarValue].BackBorderPixels = 0;
+        if (DisabledTextColorInUse)
+          ButtonColor = GuiLib_MiddlePixelColor(
+             sgl.CurItem.CompPars.CompButton.TextColor[VarValue],
+             sgl.Memory.C[2],
+             800);
+        else
+          ButtonColor = sgl.CurItem.CompPars.CompButton.TextColor[VarValue];
+        DRAW_ROM_TEXT(GetItemTextPtr(VarValue),
+                      sgl.CurItem.TextLength[VarValue],
+                      VarValue,
+                      ButtonColor,
+                      0,
+                      GuiLib_TRUE);
+        sgl.CurItem.TextPar[VarValue] = TempTextPar;
+      }
+
+      sgl.CurItem.X1 = RemX1;
+      sgl.CurItem.Y1 = RemY1;
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      sgl.CurItem.ClipRectX1 = RemClippingX1;
+      sgl.CurItem.ClipRectY1 = RemClippingY1;
+      sgl.CurItem.ClipRectX2 = RemClippingX2;
+      sgl.CurItem.ClipRectY2 = RemClippingY2;
+      GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                         sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+
+      break;
+#endif
+
+#ifdef GuiConst_ITEM_PANEL_INUSE
+    case GuiLib_ITEM_PANEL:
+      PrepareInternalStruct();
+
+      X1 = sgl.CurItem.X1;
+      Y1 = sgl.CurItem.Y1;
+      X2 = sgl.CurItem.X2;
+      Y2 = sgl.CurItem.Y2;
+      OrderCoord(&X1, &X2);
+      OrderCoord(&Y1, &Y2);
+
+      GuiVarCompInt1 = X2 - X1 + 1;
+      GuiVarCompInt2 = Y2 - Y1 + 1;
+      GuiVarCompInt3 = sgl.CurItem.R1;
+      GuiVarCompInt4 = GuiVarCompInt1 - sgl.CurItem.R1;
+      GuiVarCompInt5 = GuiVarCompInt2 - sgl.CurItem.R1;
+
+      sgl.Memory.C[0] = ForeColor;
+      switch (sgl.CurItem.CompPars.CompPanel.Style)
+      {
+        case GuiLib_PANEL_FLAT:
+          if (sgl.CurItem.R1 == 0)
+          {
+            if (BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_PAFLATTRANSP, 0, 1);
+            else
+              DrawSubStruct(GuiStructCOMP_PAFLAT, 0, 1);
+          }
+          else
+          {
+            if (BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_PAFLATTRANSPR, 0, 1);
+            else
+              DrawSubStruct(GuiStructCOMP_PAFLATR, 0, 1);
+          }
+          break;
+
+        case GuiLib_PANEL_3D_RAISED:
+          if (sgl.CurItem.R1 == 0)
+          {
+            if (!BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_PA3DINNER, 0, 1);
+            DrawSubStruct(GuiStructCOMP_PA3DRAIS, 0, 1);
+          }
+          else
+          {
+            if (!BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_PA3DINNERR, 0, 1);
+            DrawSubStruct(GuiStructCOMP_PA3DRAISR, 0, 1);
+          }
+          break;
+
+        case GuiLib_PANEL_3D_LOWERED:
+          if (sgl.CurItem.R1 == 0)
+          {
+            if (!BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_PA3DINNER, 0, 1);
+            DrawSubStruct(GuiStructCOMP_PA3DLOW, 0, 1);
+          }
+          else
+          {
+            if (!BackColorTransp)
+              DrawSubStruct(GuiStructCOMP_PA3DINNERR, 0, 1);
+            DrawSubStruct(GuiStructCOMP_PA3DLOWR, 0, 1);
+          }
+          break;
+
+        case GuiLib_PANEL_EMBOSSED_RAISED:
+          if (!BackColorTransp)
+            DrawSubStruct(GuiStructCOMP_PA3DINNER, 0, 1);
+          DrawSubStruct(GuiStructCOMP_PAEMBRAIS, 0, 1);
+          break;
+
+        case GuiLib_PANEL_EMBOSSED_LOWERED:
+          if (!BackColorTransp)
+            DrawSubStruct(GuiStructCOMP_PA3DINNER, 0, 1);
+          DrawSubStruct(GuiStructCOMP_PAEMBLOW, 0, 1);
+          break;
+      }
+      break;
+#endif
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+    case GuiLib_ITEM_GRAPH:
+      break;
+#endif
+
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+    case GuiLib_ITEM_GRAPHICSLAYER:
+#ifdef GuiLib_LAYERS_SUPPORTED
+      if (sgl.DisplayWriting)
+      {
+        sgl.LayerOrigoX = 0;
+        sgl.LayerOrigoY = 0;
+        sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+        sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+
+        X1 = sgl.CurItem.X1;
+        X2 = sgl.CurItem.X2;
+        Y1 = sgl.CurItem.Y1;
+        Y2 = sgl.CurItem.Y2;
+        GuiLib_COORD_ADJUST(X1, Y1);
+        GuiLib_COORD_ADJUST(X2, Y2);
+        OrderCoord(&X1, &X2);
+        OrderCoord(&Y1, &Y2);
+
+        switch (sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].SizeMode)
+        {
+          case GuiLib_GRAPHICS_LAYER_SIZE_COORD:
+            X1 = GuiLib_GET_MINMAX(X1, 0, GuiConst_DISPLAY_WIDTH_HW - 1);
+            Y1 = GuiLib_GET_MINMAX(Y1, 0, GuiConst_DISPLAY_HEIGHT_HW - 1);
+            X2 = GuiLib_GET_MINMAX(X2, 0, GuiConst_DISPLAY_WIDTH_HW - 1);
+            Y2 = GuiLib_GET_MINMAX(Y2, 0, GuiConst_DISPLAY_HEIGHT_HW - 1);
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].X = GuiLib_GET_MINMAX(
+               X1, 0, GuiConst_DISPLAY_WIDTH_HW);
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Y = GuiLib_GET_MINMAX(
+               Y1, 0, GuiConst_DISPLAY_HEIGHT_HW);
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Width = X2 - X1 + 1;
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Height = Y2 - Y1 + 1;
+            break;
+
+          case GuiLib_GRAPHICS_LAYER_SIZE_SCREEN:
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].X = 0;
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Y = 0;
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Width =
+               GuiConst_DISPLAY_WIDTH_HW;
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Height =
+               GuiConst_DISPLAY_HEIGHT_HW;
+            break;
+
+          case GuiLib_GRAPHICS_LAYER_SIZE_CLIP:
+            CX1 = sgl.CurItem.ClipRectX1;
+            CX2 = sgl.CurItem.ClipRectX2;
+            CY1 = sgl.CurItem.ClipRectY1;
+            CY2 = sgl.CurItem.ClipRectY2;
+            GuiLib_COORD_ADJUST(CX1, CY1);
+            GuiLib_COORD_ADJUST(CX2, CY2);
+            OrderCoord(&CX1, &CX2);
+            OrderCoord(&CY1, &CY2);
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].X = CX1;
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Y = CY1;
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Width = CX2 - CX1 + 1;
+            sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Height = CY2 - CY1 + 1;
+            break;
+        }
+        sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].LineSize =
+             GuiConst_PIXEL_BYTE_SIZE *
+             sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Width;
+        sgl.CurItem.ClipRectX1 = 0;
+        sgl.CurItem.ClipRectY1 = 0;
+        sgl.CurItem.ClipRectX2 =
+           sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Width - 1;
+        sgl.CurItem.ClipRectY2 =
+           sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Height - 1;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+        StartClipping(1);
+#endif
+        sgl.LayerOrigoX = -sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].X;
+        sgl.LayerOrigoY = -sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Y;
+        sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+        sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+
+        if (GraphicsLayer_Push(sgl.GlobalGraphicsLayerIndex))
+        {
+          switch (sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].InitMode)
+          {
+            case GuiLib_GRAPHICS_LAYER_INIT_NONE:
+              break;
+
+            case GuiLib_GRAPHICS_LAYER_INIT_COL:
+              GuiLib_FillBox(
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].X,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Y,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].X +
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Width - 1,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Y +
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Height - 1,
+                 BackColor);
+              break;
+
+            case GuiLib_GRAPHICS_LAYER_INIT_COPY:
+              GraphicsLayer_Copy(
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].BaseAddress,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].LineSize,
+                 0,
+                 0,
+#ifdef GuiConst_DISPLAY_BUFFER_EASYGUI
+#ifdef GuiLib_COLOR_UNIT_16
+                 (GuiConst_INT8U*)GuiLib_DisplayBuf.Bytes,
+#else
+                 (GuiConst_INT8U*)GuiLib_DisplayBuf,
+#endif
+#else // GuiConst_DISPLAY_BUFFER_EASYGUI
+                 0,
+#endif // GuiConst_DISPLAY_BUFFER_EASYGUI
+                 GuiConst_BYTES_PR_LINE,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].X,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Y,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Width,
+                 sgl.GraphicsLayerList[sgl.GlobalGraphicsLayerIndex].Height);
+              break;
+          }
+        }
+      }
+#endif
+      break;
+
+    case GuiLib_ITEM_GRAPHICSFILTER:
+#ifdef GuiLib_LAYERS_SUPPORTED
+      if (sgl.DisplayWriting)
+      {
+        sgl.LayerOrigoX = 0;
+        sgl.LayerOrigoY = 0;
+        sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+        sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+
+        SourceLayerIndexNo = IndexOfGraphicsLayer(
+           sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].SourceLayerIndexNo);
+        DestLayerIndexNo = IndexOfGraphicsLayer(
+           sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].DestLayerIndexNo);
+        if (SourceLayerIndexNo != DestLayerIndexNo)
+        {
+          if (SourceLayerIndexNo == GuiLib_GRAPHICS_LAYER_BASE)
+          {
+#ifdef GuiConst_DISPLAY_BUFFER_EASYGUI
+#ifdef GuiLib_COLOR_UNIT_16
+            SourceAddress = &(GuiLib_DisplayBuf.Bytes[0][0]);
+#else
+  #ifdef GuiConst_COLOR_DEPTH_2
+    #ifdef GuiConst_BYTE_HORIZONTAL
+      #ifdef GuiConst_COLOR_PLANES_2
+            SourceAddress = &(GuiLib_DisplayBuf[0][0][0]);
+      #else
+            SourceAddress = &(GuiLib_DisplayBuf[0][0]);
+      #endif
+    #else
+      #ifdef GuiConst_COLOR_PLANES_2
+            SourceAddress = &(GuiLib_DisplayBuf[0][0][0]);
+      #else
+            SourceAddress = &(GuiLib_DisplayBuf[0][0]);
+      #endif
+    #endif
+  #else
+            SourceAddress = &(GuiLib_DisplayBuf[0][0]);
+  #endif
+#endif // GuiLib_COLOR_UNIT_16
+#else // GuiConst_DISPLAY_BUFFER_EASYGUI
+            SourceAddress = 0;
+#endif // GuiConst_DISPLAY_BUFFER_EASYGUI
+            SourceLineSize = GuiConst_BYTES_PR_LINE;
+            SourceX = 0;
+            SourceY = 0;
+            SourceWidth = GuiConst_DISPLAY_WIDTH_HW;
+            SourceHeight = GuiConst_DISPLAY_HEIGHT_HW;
+          }
+          else
+          {
+            SourceAddress = sgl.GraphicsLayerList[SourceLayerIndexNo].BaseAddress;
+            SourceLineSize = sgl.GraphicsLayerList[SourceLayerIndexNo].LineSize;
+            SourceX = sgl.GraphicsLayerList[SourceLayerIndexNo].X;
+            SourceY = sgl.GraphicsLayerList[SourceLayerIndexNo].Y;
+            SourceWidth = sgl.GraphicsLayerList[SourceLayerIndexNo].Width;
+            SourceHeight = sgl.GraphicsLayerList[SourceLayerIndexNo].Height;
+          }
+          if (DestLayerIndexNo == GuiLib_GRAPHICS_LAYER_BASE)
+          {
+#ifdef GuiConst_DISPLAY_BUFFER_EASYGUI
+#ifdef GuiLib_COLOR_UNIT_16
+            DestAddress = &(GuiLib_DisplayBuf.Bytes[0][0]);
+#else
+  #ifdef GuiConst_COLOR_DEPTH_2
+    #ifdef GuiConst_BYTE_HORIZONTAL
+      #ifdef GuiConst_COLOR_PLANES_2
+            DestAddress = &(GuiLib_DisplayBuf[0][0][0]);
+      #else
+            DestAddress = &(GuiLib_DisplayBuf[0][0]);
+      #endif
+    #else
+      #ifdef GuiConst_COLOR_PLANES_2
+            DestAddress = &(GuiLib_DisplayBuf[0][0][0]);
+      #else
+            DestAddress = &(GuiLib_DisplayBuf[0][0]);
+      #endif
+    #endif
+  #else
+            DestAddress = &(GuiLib_DisplayBuf[0][0]);
+  #endif
+#endif
+#else // GuiConst_DISPLAY_BUFFER_EASYGUI
+            DestAddress = 0;
+#endif // GuiConst_DISPLAY_BUFFER_EASYGUI
+            DestLineSize = GuiConst_BYTES_PR_LINE;
+            DestX = SourceX;
+            DestY = SourceY;
+            DestWidth = SourceWidth;
+            DestHeight = SourceHeight;
+          }
+          else
+          {
+            DestAddress = sgl.GraphicsLayerList[DestLayerIndexNo].BaseAddress;
+            DestLineSize = sgl.GraphicsLayerList[DestLayerIndexNo].LineSize;
+            DestX = sgl.GraphicsLayerList[DestLayerIndexNo].X;
+            DestY = sgl.GraphicsLayerList[DestLayerIndexNo].Y;
+            DestWidth = sgl.GraphicsLayerList[DestLayerIndexNo].Width;
+            DestHeight = sgl.GraphicsLayerList[DestLayerIndexNo].Height;
+          }
+
+          if ((DestX <= SourceX) && (DestY <= SourceY) &&
+              (DestX + DestWidth >= SourceX + SourceWidth) &&
+              (DestY + DestHeight >= SourceY + SourceHeight) &&
+              (sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].
+               GraphicsFilterFunc != 0))
+          {
+            if (DestLayerIndexNo != GuiLib_GRAPHICS_LAYER_BASE)
+            {
+              DestX = SourceX - DestX;
+              DestY = SourceY - DestY;
+            }
+            if (SourceLayerIndexNo != GuiLib_GRAPHICS_LAYER_BASE)
+            {
+              SourceX = 0;
+              SourceY = 0;
+            }
+
+            for (I = 0; I <= 9; I++)
+            {
+              if (sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].ParVarType[I] ==
+                  GuiLib_VAR_NONE)
+                FilterPars[I] =
+                   sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].ParValueNum[I];
+              else
+                FilterPars[I] = ReadVar(
+                   sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].ParVarPtr[I],
+                   sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].ParVarType[I]);
+            }
+            sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].GraphicsFilterFunc(
+               DestAddress + DestY * DestLineSize +
+                  DestX * GuiConst_PIXEL_BYTE_SIZE,
+               DestLineSize,
+               SourceAddress + SourceY * SourceLineSize +
+                  SourceX * GuiConst_PIXEL_BYTE_SIZE,
+               SourceLineSize,
+               sgl.GraphicsLayerList[SourceLayerIndexNo].Width,
+               sgl.GraphicsLayerList[SourceLayerIndexNo].Height,
+               FilterPars);
+          }
+
+          GraphicsLayer_Pop(
+             sgl.GraphicsFilterList[sgl.GlobalGraphicsFilterIndex].ContAtLayerIndexNo);
+          MarkDisplayBoxRepaint(
+             DestX,
+             DestY,
+             DestX + sgl.GraphicsLayerList[SourceLayerIndexNo].Width - 1,
+             DestY + sgl.GraphicsLayerList[SourceLayerIndexNo].Height - 1);
+        }
+        else
+          GraphicsLayer_Pop(GuiLib_GRAPHICS_LAYER_BASE);
+
+        if (sgl.BaseLayerDrawing)
+        {
+          sgl.LayerOrigoX = 0;
+          sgl.LayerOrigoY = 0;
+        }
+        else
+        {
+          I = sgl.GraphicsLayerLifo[sgl.GraphicsLayerLifoCnt - 1];
+          sgl.LayerOrigoX = -sgl.GraphicsLayerList[I].X;
+          sgl.LayerOrigoY = -sgl.GraphicsLayerList[I].Y;
+        }
+        sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+        sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+
+        if (sgl.BaseLayerDrawing)
+        {
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+          StartClipping(0);
+#endif
+        }
+        else
+        {
+          I = sgl.GraphicsLayerLifo[sgl.GraphicsLayerLifoCnt - 1];
+          sgl.CurItem.ClipRectX1 = 0;
+          sgl.CurItem.ClipRectY1 = 0;
+          sgl.CurItem.ClipRectX2 = sgl.GraphicsLayerList[I].Width - 1;
+          sgl.CurItem.ClipRectY2 = sgl.GraphicsLayerList[I].Height - 1;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+          StartClipping(1);
+#endif
+        }
+      }
+#endif
+      break;
+#endif
+  }
+
+  if (sgl.CurItem.UpdateType == GuiLib_UPDATE_ON_CHANGE)
+    if ((sgl.InitialDrawing) || (sgl.AutoRedrawUpdate == GuiLib_TRUE))
+      AutoRedraw_UpdateOnChange(sgl.AutoRedrawSaveIndex);
+
+  if (sgl.AutoRedrawSaveIndex >= 0)
+    AutoRedraw_UpdateDrawn(sgl.AutoRedrawSaveIndex, &sgl.CurItem);
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  if (((sgl.CurItem.ItemType == GuiLib_ITEM_TEXTBLOCK) ||
+       (sgl.CurItem.ItemType == GuiLib_ITEM_VARBLOCK)) &&
+       (sgl.CurItem.CompPars.CompTextBox.ScrollIndex != 0xFF))
+  {
+    found = AutoRedraw_GetTextBox(
+                  sgl.CurItem.CompPars.CompTextBox.ScrollIndex, -1);
+    if (found == -1)
+    {
+      if (sgl.AutoRedrawSaveIndex >= 0)
+        AutoRedraw_SetAsTextBox(sgl.AutoRedrawSaveIndex);
+      else
+        AutoRedraw_InsertTextBox(&sgl.CurItem, 0, sgl.DisplayLevel);
+    }
+
+    found = 0;
+
+    for (N = 0; N < GuiConst_TEXTBOX_FIELDS_MAX; N++)
+    {
+      if (sgl.TextBoxScrollPositions[N].index ==
+          sgl.CurItem.CompPars.CompTextBox.ScrollIndex)
+      {
+        found = 1;
+        break;
+      }
+    }
+
+    if (found == 0)
+    {
+      for (N = 0; N < GuiConst_TEXTBOX_FIELDS_MAX; N++)
+      {
+        if (sgl.TextBoxScrollPositions[N].index == -1)
+        {
+          sgl.TextBoxScrollPositions[N].index =
+            sgl.CurItem.CompPars.CompTextBox.ScrollIndex;
+          sgl.TextBoxScrollPositions[N].pos =
+            sgl.CurItem.CompPars.CompTextBox.ScrollPos;
+            break;
+        }
+      }
+    }
+  }
+#endif
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  if (sgl.InitialDrawing && IsCursorField)
+    sgl.CurItem.CursorFieldLevel--;
+
+  if ((ColorInvert == GuiLib_COL_INVERT_IF_CURSOR) && FoundActiveCursorField)
+    sgl.SwapColors = 0;
+#endif
+
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+  if (!sgl.InitialDrawing)
+  {
+    sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+    sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+  }
+#endif
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  if (!sgl.InitialDrawing && sgl.DisplayWriting)
+    GuiLib_ResetClipping();
+#endif
+}
+//------------------------------------------------------------------------------
+//------------------------------------------------------------------------------
+static void ReadItem(GuiConst_INT16S LanguageIndex)
+{
+  GuiConst_INT16S X;
+  GuiConst_INT16S N;
+  GuiConst_INT16S I,J;
+  GuiConst_INTCOLOR TmpForeColor, TmpBackColor;
+  GuiConst_INTCOLOR PrefixLocate *ColVarPtr;
+  GuiConst_INT16U ColVarPtrIdx, PtrIdx;
+  GuiConst_INT16U TmpColIdx;
+  GuiConst_INT16U TmpForeColIdx;
+#ifdef GuiConst_ADV_CONTROLS
+  GuiConst_INT16U TmpBackColIdx;
+#endif
+  GuiConst_INT8U B1;
+  GuiConst_INT16U W1;
+#ifdef GuiConst_REMOTE_TEXT_DATA
+  GuiConst_INT16U Ti;
+#endif
+  GuiConst_INT16U TxtSize;
+#ifndef GuiConst_REMOTE_TEXT_DATA
+  GuiConst_INT16U TxtSum1, TxtSum2;
+#endif
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  GuiConst_INT16U TxtReadSize;
+#endif
+#ifdef GuiConst_BLINK_SUPPORT_ON
+  GuiConst_INT8S BS2;
+#endif
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+  GuiConst_INT8U ScrollBoxIndex;
+#ifndef GuiConst_SCROLLITEM_BAR_NONE
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+  GuiConst_INT8U * PixelDataPtr;
+  GuiConst_INT8U BitmapHeader[4];
+#else
+  GuiConst_INT8U PrefixRom * PixelDataPtr;
+#endif // GuiConst_REMOTE_BITMAP_DATA
+#endif // GuiConst_SCROLLITEM_BAR_NONE
+#endif // GuiConst_ITEM_SCROLLBOX_INUSE
+#ifdef GuiConst_ADV_COMPONENTS
+  GuiConst_INT8U L;
+#endif
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+  GuiConst_INT8U GraphIndex;
+  GuiConst_INT8U Axis;
+  GuiConst_INT8U B;
+#endif
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  GuiConst_INT8U GraphicsLayerIndex;
+  GuiConst_INT8U GraphicsFilterIndex;
+#endif
+#ifdef GuiConst_ITEM_STRUCTCOND_INUSE
+  GuiConst_INT16U CondI;
+#endif
+  GuiConst_INT8U ColMemoryFore;
+  GuiConst_INT8U ColMemoryBack;
+
+  sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_INUSE;
+
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+  if (sgl.DisplayLevel == 0)
+  {
+    sgl.CurItem.CoordOrigoX = sgl.CoordOrigoX;
+    sgl.CurItem.CoordOrigoY = sgl.CoordOrigoY;
+  }
+#endif
+
+  sgl.CommonByte0 = GetItemByte(&sgl.ItemDataPtr);
+  sgl.CommonByte1 = GetItemByte(&sgl.ItemDataPtr);
+  sgl.CommonByte2 = GetItemByte(&sgl.ItemDataPtr);
+  sgl.CommonByte3 = GetItemByte(&sgl.ItemDataPtr);
+  sgl.CommonByte4 = GetItemByte(&sgl.ItemDataPtr);
+  sgl.CommonByte5 = GetItemByte(&sgl.ItemDataPtr);
+  sgl.CommonByte6 = GetItemByte(&sgl.ItemDataPtr);
+  sgl.CommonByte7 = GetItemByte(&sgl.ItemDataPtr);
+
+  sgl.CurItem.ItemType = sgl.CommonByte0 & 0x3F;
+  if (sgl.CurItem.ItemType < 32)
+    sgl.ItemTypeBit1 = (GuiConst_INT32U)0x00000001 << (sgl.CurItem.ItemType & 0x1F);
+  else
+    sgl.ItemTypeBit1 = 0;
+  if (sgl.CurItem.ItemType >= 32)
+    sgl.ItemTypeBit2 = (GuiConst_INT32U)0x00000001 << (sgl.CurItem.ItemType - 32);
+  else
+    sgl.ItemTypeBit2 = 0;
+
+  if (sgl.CommonByte7 & 0x20)
+  {
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+    if (B1 & 0x01)
+      sgl.CurItem.ForeColorEnhance = GetItemWord(&sgl.ItemDataPtr);
+    if (B1 & 0x02)
+      sgl.CurItem.BackColorEnhance = GetItemWord(&sgl.ItemDataPtr);
+    if (B1 & 0x04)
+      sgl.CurItem.BarForeColorEnhance = GetItemWord(&sgl.ItemDataPtr);
+    if (B1 & 0x08)
+      sgl.CurItem.BarBackColorEnhance = GetItemWord(&sgl.ItemDataPtr);
+  }
+  else
+  {
+    sgl.CurItem.ForeColorEnhance = 0;
+    sgl.CurItem.BackColorEnhance = 0;
+    sgl.CurItem.BarForeColorEnhance = 0;
+    sgl.CurItem.BarBackColorEnhance = 0;
+  }
+  if (sgl.CommonByte7 & 0x40)
+  {
+    ColMemoryFore = GetItemByte(&sgl.ItemDataPtr);
+    ColMemoryBack = GetItemByte(&sgl.ItemDataPtr);
+  }
+  else
+  {
+    ColMemoryFore = 0;
+    ColMemoryBack = 0;
+  }
+
+  TmpForeColor = sgl.CurItem.ForeColor;
+  TmpForeColIdx = sgl.CurItem.ForeColorIndex;
+
+  TmpBackColor = sgl.CurItem.BackColor;
+#ifdef GuiConst_ADV_CONTROLS
+  TmpBackColIdx = sgl.CurItem.BackColorIndex;
+#endif
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_DOT +
+                           GuiLib_ITEMBIT_LINE +
+                           GuiLib_ITEMBIT_FRAME +
+                           GuiLib_ITEMBIT_BLOCK +
+                           GuiLib_ITEMBIT_CIRCLE +
+                           GuiLib_ITEMBIT_ELLIPSE +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK +
+                           GuiLib_ITEMBIT_SCROLLBOX +
+                           GuiLib_ITEMBIT_GRAPH)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                           GuiLib_ITEMBIT_ROUNDEDBLOCK +
+                           GuiLib_ITEMBIT_QUARTERCIRCLE +
+                           GuiLib_ITEMBIT_QUARTERELLIPSE +
+                           GuiLib_ITEMBIT_CHECKBOX +
+                           GuiLib_ITEMBIT_RADIOBUTTON +
+                           GuiLib_ITEMBIT_BUTTON +
+                           GuiLib_ITEMBIT_EDITBOX +
+                           GuiLib_ITEMBIT_PANEL +
+                           GuiLib_ITEMBIT_MEMO +
+                           GuiLib_ITEMBIT_LISTBOX +
+                           GuiLib_ITEMBIT_COMBOBOX +
+                           GuiLib_ITEMBIT_SCROLLAREA +
+                           GuiLib_ITEMBIT_PROGRESSBAR +
+                           GuiLib_ITEMBIT_STRUCTCOND)))
+  {
+    B1 = ColMemoryFore & 0x03;
+    if (B1)
+    {
+      sgl.CurItem.ForeColor = sgl.Memory.C[B1-1];
+      sgl.CurItem.ForeColorIndex = sgl.ColMemoryIndex[B1-1];
+    }
+    else
+    {
+      TmpColIdx = sgl.CurItem.ForeColorIndex;
+      sgl.CurItem.ForeColorIndex = 0xFFFF;
+      switch (sgl.CommonByte3 & 0x07)
+      {
+        case GuiLib_COLOR_FORE:
+          sgl.CurItem.ForeColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.CurItem.ForeColor = GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.CurItem.ForeColor = (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.CurItem.ForeColor = TmpBackColor;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.CurItem.ForeColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+          {
+            sgl.CurItem.ForeColor = GuiConst_PIXEL_ON;
+          }
+          else
+          {
+            sgl.CurItem.ForeColor = *ColVarPtr;
+            sgl.CurItem.ForeColorIndex = ColVarPtrIdx;
+          }
+          break;
+        default:
+          sgl.CurItem.ForeColorIndex = TmpColIdx;
+          break;
+      }
+    }
+    if (sgl.CurItem.ForeColorEnhance > 0)
+      sgl.CurItem.ForeColor = GuiLib_BrightenPixelColor(
+         sgl.CurItem.ForeColor, sgl.CurItem.ForeColorEnhance);
+    else if (sgl.CurItem.ForeColorEnhance < 0)
+      sgl.CurItem.ForeColor = GuiLib_DarkenPixelColor(
+         sgl.CurItem.ForeColor, -sgl.CurItem.ForeColorEnhance);
+
+    B1 = ColMemoryFore & 0x30;
+    if (B1)
+    {
+      sgl.CurItem.BarForeColor = sgl.Memory.C[B1-1];
+      sgl.CurItem.BarForeColorIndex = sgl.ColMemoryIndex[B1-1];
+    }
+    else
+    {
+      TmpColIdx = sgl.CurItem.BarForeColorIndex;
+      sgl.CurItem.BarForeColorIndex = 0xFFFF;
+      switch ((sgl.CommonByte5 >> 1) & 0x07)
+      {
+        case GuiLib_COLOR_FORE:
+          sgl.CurItem.BarForeColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.CurItem.BarForeColor = GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.CurItem.BarForeColor = (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.CurItem.BarForeColor = sgl.CurItem.BackColor;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.CurItem.BarForeColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+          {
+            sgl.CurItem.BarForeColor = GuiConst_PIXEL_ON;
+          }
+          else
+          {
+            sgl.CurItem.BarForeColor = *ColVarPtr;
+            sgl.CurItem.BarForeColorIndex = ColVarPtrIdx;
+          }
+          break;
+        default:
+          sgl.CurItem.BarForeColorIndex = TmpColIdx;
+          break;
+      }
+    }
+    if (sgl.CurItem.BarForeColorEnhance > 0)
+      sgl.CurItem.BarForeColor = GuiLib_BrightenPixelColor(
+         sgl.CurItem.BarForeColor, sgl.CurItem.BarForeColorEnhance);
+    else if (sgl.CurItem.BarForeColorEnhance < 0)
+      sgl.CurItem.BarForeColor = GuiLib_DarkenPixelColor(
+         sgl.CurItem.BarForeColor, -sgl.CurItem.BarForeColorEnhance);
+  }
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_CLEARAREA +
+                           GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_FRAME +
+                           GuiLib_ITEMBIT_CIRCLE +
+                           GuiLib_ITEMBIT_ELLIPSE +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK +
+                           GuiLib_ITEMBIT_SCROLLBOX +
+                           GuiLib_ITEMBIT_GRAPH +
+                           GuiLib_ITEMBIT_GRAPHICSLAYER)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                           GuiLib_ITEMBIT_QUARTERCIRCLE +
+                           GuiLib_ITEMBIT_QUARTERELLIPSE +
+                           GuiLib_ITEMBIT_CHECKBOX +
+                           GuiLib_ITEMBIT_RADIOBUTTON +
+                           GuiLib_ITEMBIT_BUTTON +
+                           GuiLib_ITEMBIT_EDITBOX +
+                           GuiLib_ITEMBIT_PANEL +
+                           GuiLib_ITEMBIT_MEMO +
+                           GuiLib_ITEMBIT_LISTBOX +
+                           GuiLib_ITEMBIT_COMBOBOX +
+                           GuiLib_ITEMBIT_SCROLLAREA +
+                           GuiLib_ITEMBIT_PROGRESSBAR +
+                           GuiLib_ITEMBIT_STRUCTCOND)))
+  {
+    B1 = ColMemoryBack & 0x03;
+    if (B1)
+    {
+      sgl.CurItem.BackColor = sgl.Memory.C[B1-1];
+      sgl.CurItem.BackColorIndex = sgl.ColMemoryIndex[B1-1];
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSPARENT;
+    }
+    else
+    {
+      TmpColIdx = sgl.CurItem.BackColorIndex;
+      sgl.CurItem.BackColorIndex = 0xFFFF;
+      switch ((sgl.CommonByte3 >> 3) & 0x07)
+      {
+        case GuiLib_COLOR_FORE:
+          sgl.CurItem.BackColor = GuiConst_PIXEL_ON;
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSPARENT;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.CurItem.BackColor = GuiConst_PIXEL_OFF;
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSPARENT;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.CurItem.BackColor = GetItemColor(&sgl.ItemDataPtr);
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSPARENT;
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.CurItem.BackColor = TmpForeColor;
+          sgl.CurItem.BackColorIndex = TmpForeColIdx;
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSPARENT;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_TRANSPARENT;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.CurItem.BackColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSPARENT;
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+          {
+            sgl.CurItem.BackColor = GuiConst_PIXEL_ON;
+          }
+          else
+          {
+            sgl.CurItem.BackColor = *ColVarPtr;
+            sgl.CurItem.BackColorIndex = ColVarPtrIdx;
+          }
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSPARENT;
+          break;
+        default:
+          sgl.CurItem.BackColorIndex = TmpColIdx;
+          break;
+      }
+    }
+    if (sgl.CurItem.BackColorEnhance > 0)
+      sgl.CurItem.BackColor = GuiLib_BrightenPixelColor(
+         sgl.CurItem.BackColor, sgl.CurItem.BackColorEnhance);
+    else if (sgl.CurItem.BackColorEnhance < 0)
+      sgl.CurItem.BackColor = GuiLib_DarkenPixelColor(
+         sgl.CurItem.BackColor, -sgl.CurItem.BackColorEnhance);
+
+    B1 = ColMemoryBack & 0x30;
+    if (B1)
+    {
+      sgl.CurItem.BarBackColor = sgl.Memory.C[B1-1];
+      sgl.CurItem.BarBackColorIndex = sgl.ColMemoryIndex[B1-1];
+    }
+    else
+    {
+      TmpColIdx = sgl.CurItem.BarBackColorIndex;
+      sgl.CurItem.BarBackColorIndex = 0xFFFF;
+      switch ((sgl.CommonByte5 >> 4) & 0x07)
+      {
+        case GuiLib_COLOR_FORE:
+          sgl.CurItem.BarBackColor = GuiConst_PIXEL_ON;
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_BARTRANSPARENT;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.CurItem.BarBackColor = GuiConst_PIXEL_OFF;
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_BARTRANSPARENT;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.CurItem.BarBackColor = GetItemColor(&sgl.ItemDataPtr);
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_BARTRANSPARENT;
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_BARTRANSPARENT;
+          sgl.CurItem.BarBackColor = sgl.CurItem.ForeColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_BARTRANSPARENT;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.CurItem.BarBackColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_BARTRANSPARENT;
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate*)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+          {
+            sgl.CurItem.BarBackColor = GuiConst_PIXEL_ON;
+          }
+          else
+          {
+            sgl.CurItem.BarBackColor = *ColVarPtr;
+            sgl.CurItem.BarBackColorIndex = ColVarPtrIdx;
+          }
+          sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_BARTRANSPARENT;
+          break;
+        default:
+          sgl.CurItem.BarBackColorIndex = TmpColIdx;
+          break;
+      }
+    }
+    if (sgl.CurItem.BarBackColorEnhance > 0)
+      sgl.CurItem.BarBackColor = GuiLib_BrightenPixelColor(
+         sgl.CurItem.BarBackColor, sgl.CurItem.BarBackColorEnhance);
+    else if (sgl.CurItem.BarBackColorEnhance < 0)
+      sgl.CurItem.BarBackColor = GuiLib_DarkenPixelColor(
+         sgl.CurItem.BarBackColor, -sgl.CurItem.BarBackColorEnhance);
+  }
+
+#ifdef GuiConst_COLOR_DEPTH_1
+  #ifdef GuiConst_BITMAP_SUPPORT_ON
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_BITMAP +
+                           GuiLib_ITEMBIT_BACKGROUND)) &&
+      (sgl.CommonByte6 & 0x02))
+    sgl.CurItem.CompPars.CompBitmap.TranspColor = (sgl.CommonByte6 >> 2) & 0x01;
+  #endif
+#else
+  #ifdef GuiConst_BITMAP_SUPPORT_ON
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_BITMAP +
+                           GuiLib_ITEMBIT_BACKGROUND)) &&
+      (sgl.CommonByte6 & 0x02))
+  {
+    sgl.CurItem.CompPars.CompBitmap.TranspColor = GetItemColor(&sgl.ItemDataPtr);
+  }
+  #endif
+#endif
+
+  B1 = ColMemoryFore & 0x0C;
+  if (B1)
+  {
+    sgl.Memory.C[B1 - 1] = sgl.CurItem.ForeColor;
+    sgl.ColMemoryIndex[B1 - 1] = sgl.CurItem.ForeColorIndex;
+  }
+  B1 = ColMemoryFore & 0xC0;
+  if (B1)
+  {
+    sgl.Memory.C[B1 - 1] = sgl.CurItem.BarForeColor;
+    sgl.ColMemoryIndex[B1 - 1] = sgl.CurItem.BarForeColorIndex;
+  }
+  B1 = ColMemoryBack & 0x0C;
+  if (B1)
+  {
+    sgl.Memory.C[B1 - 1] = sgl.CurItem.BackColor;
+    sgl.ColMemoryIndex[B1 - 1] = sgl.CurItem.BackColorIndex;
+  }
+  B1 = ColMemoryBack & 0xC0;
+  if (B1)
+  {
+    sgl.Memory.C[B1 - 1] = sgl.CurItem.BarBackColor;
+    sgl.ColMemoryIndex[B1 - 1] = sgl.CurItem.BarBackColorIndex;
+  }
+
+  if (sgl.CommonByte0 & 0x40)
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+  else
+    B1 = 0;
+  sgl.X1MemoryRead = B1 & 0x03;
+  sgl.X1MemoryWrite = (B1 >> 2) & 0x03;
+  sgl.Y1MemoryRead = (B1 >> 4) & 0x03;
+  sgl.Y1MemoryWrite = (B1 >> 6) & 0x03;
+  if (sgl.CommonByte0 & 0x80)
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+  else
+    B1 = 0;
+  sgl.X2MemoryRead = B1 & 0x03;
+  sgl.X2MemoryWrite = (B1 >> 2) & 0x03;
+  sgl.Y2MemoryRead = (B1 >> 4) & 0x03;
+  sgl.Y2MemoryWrite = (B1 >> 6) & 0x03;
+  if (sgl.CommonByte7 & 0x01)
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+  else
+    B1 = 0;
+  sgl.R1MemoryRead = B1 & 0x03;
+  sgl.R1MemoryWrite = (B1 >> 2) & 0x03;
+  sgl.R2MemoryRead = (B1 >> 4) & 0x03;
+  sgl.R2MemoryWrite = (B1 >> 6) & 0x03;
+  if (sgl.CommonByte7 & 0x80)
+  {
+    if (sgl.X1MemoryRead)
+      sgl.X1MemoryRead += GuiLib_MEMORY_CNT;
+    if (sgl.X1MemoryWrite)
+      sgl.X1MemoryWrite += GuiLib_MEMORY_CNT;
+    if (sgl.Y1MemoryRead)
+      sgl.Y1MemoryRead += GuiLib_MEMORY_CNT;
+    if (sgl.Y1MemoryWrite)
+      sgl.Y1MemoryWrite += GuiLib_MEMORY_CNT;
+    if (sgl.X2MemoryRead)
+      sgl.X2MemoryRead += GuiLib_MEMORY_CNT;
+    if (sgl.X2MemoryWrite)
+      sgl.X2MemoryWrite += GuiLib_MEMORY_CNT;
+    if (sgl.Y2MemoryRead)
+      sgl.Y2MemoryRead += GuiLib_MEMORY_CNT;
+    if (sgl.Y2MemoryWrite)
+      sgl.Y2MemoryWrite += GuiLib_MEMORY_CNT;
+    if (sgl.R1MemoryRead)
+      sgl.R1MemoryRead += GuiLib_MEMORY_CNT;
+    if (sgl.R1MemoryWrite)
+      sgl.R1MemoryWrite += GuiLib_MEMORY_CNT;
+    if (sgl.R2MemoryRead)
+      sgl.R2MemoryRead += GuiLib_MEMORY_CNT;
+    if (sgl.R2MemoryWrite)
+      sgl.R2MemoryWrite += GuiLib_MEMORY_CNT;
+  }
+
+  if (sgl.CommonByte6 & 0x01)
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+  else
+    B1 = 0;
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_STRUCTCOND)))
+    sgl.CurItem.TextPar[0].BackBorderPixels = B1;
+  else
+    sgl.CurItem.TextPar[0].BackBorderPixels = 0;
+
+  if (sgl.CommonByte6 & 0x08)
+  {
+    N = GetItemWord(&sgl.ItemDataPtr);
+    sgl.CurItem.TextPar[0].BackBoxSizeY1 = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.TextPar[0].BackBoxSizeY2 = GetItemByte(&sgl.ItemDataPtr);
+  }
+  else
+    N = 0;
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_STRUCTCOND)))
+    sgl.CurItem.TextPar[0].BackBoxSizeX = N;
+  else
+    sgl.CurItem.TextPar[0].BackBoxSizeX = 0;
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+  if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_SCROLLBOX)
+  {
+    if (sgl.NextScrollLineReading)
+      if (sgl.CommonByte6 & 0x08)
+      {
+        sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].LineSizeX =
+           sgl.CurItem.TextPar[0].BackBoxSizeX;
+        sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].LineSizeY =
+           sgl.CurItem.TextPar[0].BackBoxSizeY1;
+        sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].LineSizeY2 =
+           sgl.CurItem.TextPar[0].BackBoxSizeY2;
+      }
+  }
+#endif
+
+  sgl.X1Mode = sgl.CommonByte1 & 0x03;
+  sgl.Y1Mode = (sgl.CommonByte1 >> 2) & 0x03;
+  sgl.X2Mode = (sgl.CommonByte1 >> 4) & 0x03;
+  sgl.Y2Mode = (sgl.CommonByte1 >> 6) & 0x03;
+  sgl.R1Mode = (sgl.CommonByte7 >> 1) & 0x03;
+  sgl.R2Mode = (sgl.CommonByte7 >> 3) & 0x03;
+
+  if (sgl.CommonByte2 & 0x01)
+    sgl.ItemX1 = GetItemWord(&sgl.ItemDataPtr);
+  else
+    sgl.ItemX1 = 0;
+  if (sgl.CommonByte2 & 0x02)
+    sgl.ItemY1 = GetItemWord(&sgl.ItemDataPtr);
+  else
+    sgl.ItemY1 = 0;
+  if (sgl.CommonByte2 & 0x04)
+    sgl.ItemX2 = GetItemWord(&sgl.ItemDataPtr);
+  else
+    sgl.ItemX2 = 0;
+  if (sgl.CommonByte2 & 0x08)
+    sgl.ItemY2 = GetItemWord(&sgl.ItemDataPtr);
+  else
+    sgl.ItemY2 = 0;
+  if (sgl.CommonByte6 & 0x10)
+    sgl.ItemR1 = GetItemWord(&sgl.ItemDataPtr);
+  else
+    sgl.ItemR1 = 0;
+  if (sgl.CommonByte6 & 0x20)
+    sgl.ItemR2 = GetItemWord(&sgl.ItemDataPtr);
+  else
+    sgl.ItemR2 = 0;
+
+  if (sgl.CommonByte2 & 0x10)
+  {
+    sgl.X1VarIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (sgl.X1VarIdx >= GuiStruct_VarPtrCnt)
+      sgl.X1VarIdx = 0;
+  }
+  if (sgl.CommonByte2 & 0x20)
+  {
+    sgl.Y1VarIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (sgl.Y1VarIdx >= GuiStruct_VarPtrCnt)
+      sgl.Y1VarIdx = 0;
+  }
+  if (sgl.CommonByte2 & 0x40)
+  {
+    sgl.X2VarIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (sgl.X2VarIdx >= GuiStruct_VarPtrCnt)
+      sgl.X2VarIdx = 0;
+  }
+  if (sgl.CommonByte2 & 0x80)
+  {
+    sgl.Y2VarIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (sgl.Y2VarIdx >= GuiStruct_VarPtrCnt)
+      sgl.Y2VarIdx = 0;
+  }
+  if (sgl.CommonByte6 & 0x40)
+  {
+    sgl.R1VarIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (sgl.R1VarIdx >= GuiStruct_VarPtrCnt)
+      sgl.R1VarIdx = 0;
+  }
+  if (sgl.CommonByte6 & 0x80)
+  {
+    sgl.R2VarIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (sgl.R2VarIdx >= GuiStruct_VarPtrCnt)
+      sgl.R2VarIdx = 0;
+  }
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_CLEARAREA +
+                           GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_LINE +
+                           GuiLib_ITEMBIT_FRAME +
+                           GuiLib_ITEMBIT_BLOCK +
+                           GuiLib_ITEMBIT_CIRCLE +
+                           GuiLib_ITEMBIT_ELLIPSE +
+                           GuiLib_ITEMBIT_BITMAP +
+                           GuiLib_ITEMBIT_BACKGROUND +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_ACTIVEAREA +
+                           GuiLib_ITEMBIT_CLIPRECT +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK +
+                           GuiLib_ITEMBIT_TOUCHAREA +
+                           GuiLib_ITEMBIT_SCROLLBOX +
+                           GuiLib_ITEMBIT_GRAPH +
+                           GuiLib_ITEMBIT_GRAPHICSLAYER)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                           GuiLib_ITEMBIT_ROUNDEDBLOCK +
+                           GuiLib_ITEMBIT_QUARTERCIRCLE +
+                           GuiLib_ITEMBIT_QUARTERELLIPSE +
+                           GuiLib_ITEMBIT_CHECKBOX +
+                           GuiLib_ITEMBIT_RADIOBUTTON +
+                           GuiLib_ITEMBIT_BUTTON +
+                           GuiLib_ITEMBIT_EDITBOX +
+                           GuiLib_ITEMBIT_PANEL +
+                           GuiLib_ITEMBIT_MEMO +
+                           GuiLib_ITEMBIT_LISTBOX +
+                           GuiLib_ITEMBIT_COMBOBOX +
+                           GuiLib_ITEMBIT_SCROLLAREA +
+                           GuiLib_ITEMBIT_PROGRESSBAR +
+                           GuiLib_ITEMBIT_STRUCTCOND)))
+  {
+    B1 = (sgl.CommonByte3 >> 6) & 0x03;
+    if (B1 != GuiLib_ALIGN_NOCHANGE)
+      sgl.CurItem.TextPar[0].Alignment = B1;
+  }
+
+  B1 = sgl.CommonByte4 & 0x03;
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_EDITBOX +
+                           GuiLib_ITEMBIT_MEMO +
+                           GuiLib_ITEMBIT_LISTBOX +
+                           GuiLib_ITEMBIT_COMBOBOX +
+                           GuiLib_ITEMBIT_PROGRESSBAR +
+                           GuiLib_ITEMBIT_STRUCTCOND)))
+  {
+    if (B1 != GuiLib_PS_NOCHANGE)
+      sgl.CurItem.TextPar[0].Ps = B1;
+  }
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_EDITBOX +
+                           GuiLib_ITEMBIT_MEMO +
+                           GuiLib_ITEMBIT_LISTBOX +
+                           GuiLib_ITEMBIT_COMBOBOX +
+                           GuiLib_ITEMBIT_PROGRESSBAR +
+                           GuiLib_ITEMBIT_STRUCTCOND)))
+  {
+    if (sgl.CommonByte4 & 0x10)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_UNDERLINE;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_UNDERLINE;
+  }
+  else if (sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_LINE +
+                               GuiLib_ITEMBIT_CIRCLE))
+  {
+    if (sgl.CommonByte4 & 0x10)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_PATTERNEDLINE;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_PATTERNEDLINE;
+  }
+
+  if (sgl.CommonByte4 & 0x20)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_AUTOREDRAWFIELD;
+  else
+    sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_AUTOREDRAWFIELD;
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  if (sgl.CommonByte4 & 0x40)
+    sgl.CurItem.CursorFieldNo = GetItemByte(&sgl.ItemDataPtr);
+  else
+    sgl.CurItem.CursorFieldNo = -1;
+#endif
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+  if (sgl.CommonByte5 & 0x01)
+    BS2 = GetItemByte(&sgl.ItemDataPtr);
+  else
+    BS2 = -1;
+  if (sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                          GuiLib_ITEMBIT_TEXTBLOCK +
+                          GuiLib_ITEMBIT_VAR +
+                          GuiLib_ITEMBIT_VARBLOCK))
+    sgl.CurItem.BlinkFieldNo = BS2;
+  else
+    sgl.CurItem.BlinkFieldNo = -1;
+#endif
+
+  if (sgl.CommonByte4 & 0x80)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_TRANSLATION;
+  else
+    sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_TRANSLATION;
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_BUTTON)))
+  {
+    if (sgl.CommonByte5 & 0x80)
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+    else
+    {
+      if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_VAR +
+                               GuiLib_ITEMBIT_VARBLOCK)) ||
+          (sgl.CommonByte4 & 0x80))
+        I = LanguageIndex;
+      else
+        I = 0;
+      B1 = ReadByte(GuiFont_LanguageTextDir[I]);
+    }
+  }
+  else
+    B1 = 0;
+  if (B1)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_REVERSEWRITING;
+  else
+    sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_REVERSEWRITING;
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_LINE)) &&
+      (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_PATTERNEDLINE))
+    sgl.CurItem.LinePattern = GetItemByte(&sgl.ItemDataPtr);
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+  if (sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                          GuiLib_ITEMBIT_TEXTBLOCK +
+                          GuiLib_ITEMBIT_VAR +
+                          GuiLib_ITEMBIT_VARBLOCK))
+  {
+    if (sgl.CommonByte5 & 0x01)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_BLINKTEXTFIELD;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_BLINKTEXTFIELD;
+  }
+#endif
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_BUTTON)))
+    sgl.CurItem.TextCnt = GetItemByte(&sgl.ItemDataPtr);
+  else
+    sgl.CurItem.TextCnt = 1;
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK +
+                           GuiLib_ITEMBIT_SCROLLBOX +
+                           GuiLib_ITEMBIT_GRAPH)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_BUTTON +
+                           GuiLib_ITEMBIT_EDITBOX +
+                           GuiLib_ITEMBIT_LISTBOX +
+                           GuiLib_ITEMBIT_COMBOBOX +
+                           GuiLib_ITEMBIT_PROGRESSBAR +
+                           GuiLib_ITEMBIT_STRUCTCOND)))
+  {
+    if (sgl.CurItem.ItemType == GuiLib_ITEM_BUTTON)
+      J = 3;
+    else
+      J = 1;
+    for (I = 0; I < J; I++)
+    {
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      if (B1 != 0xFF)
+        sgl.CurItem.TextPar[I].FontIndex = B1 + 1;
+    }
+  }
+
+  if (sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXTBLOCK +
+                          GuiLib_ITEMBIT_VARBLOCK))
+  {
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+    sgl.CurItem.CompPars.CompTextBox.ScrollPos = 0;
+    sgl.CurItem.CompPars.CompTextBox.ScrollIndex = GetItemByte(&sgl.ItemDataPtr);
+#else
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+#endif
+  }
+
+  sgl.CurItem.UpdateType = GuiLib_AUTOREDRAW_MODE;
+
+  if (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_CHECKBOX +
+                          GuiLib_ITEMBIT_RADIOBUTTON +
+                          GuiLib_ITEMBIT_BUTTON +
+                          GuiLib_ITEMBIT_EDITBOX +
+                          GuiLib_ITEMBIT_LISTBOX +
+                          GuiLib_ITEMBIT_COMBOBOX +
+                          GuiLib_ITEMBIT_PROGRESSBAR))
+  {
+    PtrIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (PtrIdx >= GuiStruct_VarPtrCnt)
+      PtrIdx = 0;
+
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_AUTOREDRAWFIELD;
+    sgl.CurItem.UpdateType = GuiLib_UPDATE_ON_CHANGE;
+    sgl.CurItem.VarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[PtrIdx]);
+    sgl.CurItem.VarType = ReadByte(GuiStruct_VarTypeList[PtrIdx]);
+  }
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_VAR +
+                           GuiLib_ITEMBIT_VARBLOCK)) ||
+      (sgl.ItemTypeBit2 &  GuiLib_ITEMBIT_STRUCTCOND))
+  {
+    PtrIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (PtrIdx >= GuiStruct_VarPtrCnt)
+      PtrIdx = 0;
+
+    sgl.CurItem.UpdateType = GuiLib_AUTOREDRAW_MODE;
+    sgl.CurItem.VarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[PtrIdx]);
+    sgl.CurItem.VarType = ReadByte(GuiStruct_VarTypeList[PtrIdx]);
+
+  }
+
+#ifdef GuiConst_AUTOREDRAW_ON_CHANGE
+  if ((sgl.CommonByte4 & 0x20) &&
+     ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK +
+                           GuiLib_ITEMBIT_DOT +
+                           GuiLib_ITEMBIT_LINE +
+                           GuiLib_ITEMBIT_FRAME +
+                           GuiLib_ITEMBIT_BLOCK +
+                           GuiLib_ITEMBIT_CIRCLE +
+                           GuiLib_ITEMBIT_ELLIPSE +
+                           GuiLib_ITEMBIT_BITMAP +
+                           GuiLib_ITEMBIT_BACKGROUND +
+                           GuiLib_ITEMBIT_STRUCTURE)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                           GuiLib_ITEMBIT_ROUNDEDBLOCK +
+                           GuiLib_ITEMBIT_QUARTERCIRCLE +
+                           GuiLib_ITEMBIT_QUARTERELLIPSE))))
+  {
+    PtrIdx = GetItemWord(&sgl.ItemDataPtr);
+    if (PtrIdx >= GuiStruct_VarPtrCnt)
+      PtrIdx = 0;
+
+    sgl.CurItem.UpdateType = GuiLib_AUTOREDRAW_MODE;
+    sgl.CurItem.VarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[PtrIdx]);
+    sgl.CurItem.VarType = ReadByte(GuiStruct_VarTypeList[PtrIdx]);
+  }
+#endif
+
+  if (sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_FRAME +
+                          GuiLib_ITEMBIT_CIRCLE +
+                          GuiLib_ITEMBIT_ELLIPSE))
+  {
+    sgl.CurItem.FrameThickness = GetItemByte(&sgl.ItemDataPtr);
+  }
+
+  if (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_QUARTERCIRCLE +
+                          GuiLib_ITEMBIT_QUARTERELLIPSE))
+  {
+    sgl.CurItem.FrameThickness = GetItemByte(&sgl.ItemDataPtr) % 4;
+  }
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_STRUCTARRAY)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_STRUCTCOND)))
+    sgl.CurItem.CompPars.StructCall.IndexCount = GetItemWord(&sgl.ItemDataPtr);
+
+#ifdef GuiConst_ITEM_STRUCTCOND_INUSE
+  if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_STRUCTCOND)
+  {
+    for (CondI = 0; CondI < sgl.CurItem.CompPars.StructCall.IndexCount; CondI++)
+    {
+      sgl.CurItem.CompPars.StructCall.IndexFirst[CondI] = GetItemWord(&sgl.ItemDataPtr);
+      sgl.CurItem.CompPars.StructCall.IndexLast[CondI] = GetItemWord(&sgl.ItemDataPtr);
+      sgl.CurItem.CompPars.StructCall.CallIndex[CondI] = GetItemWord(&sgl.ItemDataPtr);
+    }
+  }
+#endif
+
+  if (sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_ACTIVEAREA +
+                          GuiLib_ITEMBIT_CLIPRECT))
+  {
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+    if (B1 & 0x01)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_CLIPPING;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_CLIPPING;
+    if (B1 & 0x02)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_ACTIVEAREARELCOORD;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_ACTIVEAREARELCOORD;
+  }
+
+  if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_FORMATTER)
+  {
+    sgl.CurItem.FormatFormat = GetItemByte(&sgl.ItemDataPtr);
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+    if (B1 & 0x01)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATSHOWSIGN;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_FORMATSHOWSIGN;
+    if (B1 & 0x02)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATZEROPADDING;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_FORMATZEROPADDING;
+    sgl.CurItem.FormatAlignment = (B1 >> 2) & 0x03;
+    if (B1 & 0x10)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATTRAILINGZEROS;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_FORMATTRAILINGZEROS;
+    if (B1 & 0x20)
+      sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATTHOUSANDSSEP;
+    else
+      sgl.CurItem.TextPar[0].BitFlags &= ~GuiLib_BITFLAG_FORMATTHOUSANDSSEP;
+    sgl.CurItem.FormatFieldWidth = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.FormatDecimals = GetItemByte(&sgl.ItemDataPtr);
+  }
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_STRUCTURE +
+                           GuiLib_ITEMBIT_STRUCTARRAY +
+                           GuiLib_ITEMBIT_BITMAP +
+                           GuiLib_ITEMBIT_BACKGROUND)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_STRUCTCOND)))
+    sgl.CurItem.StructToCallIndex = GetItemWord(&sgl.ItemDataPtr);
+
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+  if (sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXTBLOCK +
+                          GuiLib_ITEMBIT_VARBLOCK))
+  {
+    sgl.CurItem.CompPars.CompTextBox.HorzAlignment = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.CompPars.CompTextBox.VertAlignment = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.CompPars.CompTextBox.LineDist = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.CompPars.CompTextBox.LineDistRelToFont = GetItemByte(&sgl.ItemDataPtr);
+  }
+#endif
+
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+  if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_TOUCHAREA)
+    sgl.CurItem.CompPars.CompTouch.AreaNo = GetItemWord(&sgl.ItemDataPtr);
+#endif
+
+  if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_POSCALLBACK)
+    sgl.CurItem.PosCallbackNo = GetItemWord(&sgl.ItemDataPtr);
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+  if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_SCROLLBOX)
+  {
+    ScrollBoxIndex = GetItemByte(&sgl.ItemDataPtr);
+    sgl.GlobalScrollBoxIndex = ScrollBoxIndex;
+    sgl.ScrollBoxesAry[ScrollBoxIndex].InUse = GuiLib_SCROLL_STRUCTURE_READ;
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxType = GetItemByte(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].MakeUpStructIndex =
+       GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollVisibleLines =
+       GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineVerticalOffset =
+       GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineOffsetX = GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineOffsetY = GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeX = GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineSizeY = GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructIndex = GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructOffsetX =
+       GetItemWord(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineStructOffsetY =
+       GetItemWord(&sgl.ItemDataPtr);
+    B1 = GetItemByte(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorTransparent = 0;
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorIndex = 0xFFFF;
+
+    switch (B1)
+    {
+      case GuiLib_COLOR_NOCHANGE:
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor = sgl.CurItem.ForeColor;
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorIndex = sgl.CurItem.ForeColorIndex;
+        break;
+      case GuiLib_COLOR_FORE:
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor = GuiConst_PIXEL_ON;
+        break;
+      case GuiLib_COLOR_BACK:
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor = GuiConst_PIXEL_OFF;
+        break;
+      case GuiLib_COLOR_OTHER:
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor = (GuiConst_INTCOLOR)
+           GetItemColor(&sgl.ItemDataPtr);
+        break;
+      case GuiLib_COLOR_INVERT:
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor = TmpForeColor;
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorIndex = TmpForeColIdx;
+        break;
+      case GuiLib_COLOR_TRANSP:
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorTransparent = 1;
+        break;
+      case GuiLib_COLOR_TABLE:
+        sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor =
+           GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+        break;
+      case GuiLib_COLOR_VAR:
+        ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+        if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+          ColVarPtrIdx = 0;
+        ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+        if (ColVarPtr == 0)
+          sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor = GuiConst_PIXEL_ON;
+        else
+        {
+          sgl.ScrollBoxesAry[ScrollBoxIndex].LineColor = *ColVarPtr;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].LineColorIndex = ColVarPtrIdx;
+        }
+        break;
+    }
+    sgl.ScrollBoxesAry[ScrollBoxIndex].WrapMode = GetItemByte(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollStartOfs = GetItemByte(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollMode = GetItemByte(&sgl.ItemDataPtr);
+    sgl.ScrollBoxesAry[ScrollBoxIndex].LineMarkerCount = GetItemByte(&sgl.ItemDataPtr);
+    for (L = 0; L < sgl.ScrollBoxesAry[ScrollBoxIndex].LineMarkerCount; L++)
+    {
+      sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorIndex[L] = 0xFFFF;
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] = sgl.CurItem.BackColor;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorIndex[L] = sgl.CurItem.BackColorIndex;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] = GuiConst_PIXEL_ON;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorTransparent[L] = 0;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] = GuiConst_PIXEL_OFF;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorTransparent[L] = 0;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] = (GuiConst_INTCOLOR)
+             GetItemColor(&sgl.ItemDataPtr);
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorTransparent[L] = 0;
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] = TmpForeColor;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorIndex[L] = TmpForeColIdx;
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorTransparent[L] = 0;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorTransparent[L] = 1;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorTransparent[L] = 0;
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] = GuiConst_PIXEL_ON;
+          else
+          {
+            sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColor[L] = *ColVarPtr;
+            sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorIndex[L] = ColVarPtrIdx;
+          }
+          sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerColorTransparent[L] = 0;
+          break;
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStructIndex[L] =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerDrawingOrder[L] =
+         GetItemByte(&sgl.ItemDataPtr);
+      if (L || (sgl.ScrollBoxesAry[ScrollBoxIndex].ScrollBoxType))
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerSize[L] = 0;
+      else
+        sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerSize[L] = 1;
+      sgl.ScrollBoxesAry[ScrollBoxIndex].MarkerStartLine[L] = 0;
+    }
+
+    sgl.ScrollBoxesAry[ScrollBoxIndex].BarType = GetItemByte(&sgl.ItemDataPtr);
+#ifndef GuiConst_SCROLLITEM_BAR_NONE
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].BarType != GuiLib_MARKER_NONE)
+    {
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMode = GetItemByte(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarPositionX = GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarPositionY = GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeX = GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarSizeY = GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarStructIndex = GetItemWord(&sgl.ItemDataPtr);
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1 & 0x07)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor = sgl.CurItem.ForeColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor = GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor = (GuiConst_INTCOLOR)
+             GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor = TmpBackColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarForeColor = *ColVarPtr;
+          break;
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarTransparent = 0;
+      switch ((B1 & 0x38) >> 3)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor = sgl.CurItem.ForeColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor = GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor = (GuiConst_INTCOLOR)
+             GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor = TmpForeColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarTransparent = 1;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarBackColor = *ColVarPtr;
+          break;
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarThickness = GetItemByte(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerLeftOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerRightOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerTopOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBottomOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarIconPtr =
+         (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+#ifdef GuiConst_CHARMODE_ANSI
+      sgl.ItemDataPtr++;
+#else
+      sgl.ItemDataPtr += 2;
+#endif
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerIconFont =
+         GetItemByte(&sgl.ItemDataPtr) + 1;
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerIconOffsetX =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerIconOffsetY =
+         GetItemWord(&sgl.ItemDataPtr);
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1 & 0x07)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor = sgl.CurItem.ForeColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor =
+             GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor =
+             (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor = TmpBackColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerForeColor = *ColVarPtr;
+          break;
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerTransparent = 0;
+      switch ((B1 & 0x38) >> 3)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor = sgl.CurItem.BackColor;
+          break;
+
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor = GuiConst_PIXEL_ON;
+          break;
+
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor =
+             GuiConst_PIXEL_OFF;
+          break;
+
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor =
+             (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor = TmpForeColor;
+          break;
+
+        case GuiLib_COLOR_TRANSP:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerTransparent = 1;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBackColor = *ColVarPtr;
+          break;
+      }
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].BarType == GuiLib_MARKER_BITMAP)
+      {
+        sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIndex =
+           GetItemWord(&sgl.ItemDataPtr);
+#ifdef GuiConst_REMOTE_BITMAP_DATA
+        GuiLib_RemoteDataReadBlock(
+           (GuiConst_INT32U PrefixRom)GuiStruct_BitmapPtrList[
+           sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIndex], 4,
+           BitmapHeader);
+        PixelDataPtr = &BitmapHeader[0] + 2;
+#else
+        PixelDataPtr = (GuiConst_INT8U PrefixRom *)ReadWord(GuiStruct_BitmapPtrList[
+           sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIndex]) + 2;
+#endif
+        sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapHeight =
+           (GuiConst_INT16S)*PixelDataPtr;
+        PixelDataPtr++;
+        sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapHeight +=
+           256*(GuiConst_INT16S)*PixelDataPtr;
+        B1 = GetItemByte(&sgl.ItemDataPtr);
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+        sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIsTransparent =
+           (B1 & 0x01);
+        if (sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIsTransparent)
+#ifdef GuiConst_COLOR_DEPTH_1
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapTranspColor =
+             (B1 >> 1) & 0x01;
+#else
+          sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapTranspColor =
+             GetItemColor(&sgl.ItemDataPtr);
+#endif
+#else
+        sgl.ScrollBoxesAry[ScrollBoxIndex].BarMarkerBitmapIsTransparent = 0;
+#endif
+      }
+    }
+#endif
+
+    sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorType = GetItemByte(&sgl.ItemDataPtr);
+#ifndef GuiConst_SCROLLITEM_INDICATOR_NONE
+    if (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorType != GuiLib_INDICATOR_NONE)
+    {
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMode = GetItemByte(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorPositionX =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorPositionY =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeX =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorSizeY =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorStructIndex =
+          GetItemWord(&sgl.ItemDataPtr);
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1 & 0x07)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor = sgl.CurItem.ForeColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor =
+             GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor =
+             (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor = TmpBackColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorForeColor = *ColVarPtr;
+          break;
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorTransparent = 0;
+      switch ((B1 & 0x38) >> 3)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor = sgl.CurItem.BackColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor =
+              GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor =
+             (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor = TmpForeColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorTransparent = 1;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorBackColor = *ColVarPtr;
+          break;
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorThickness =
+         GetItemByte(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerLeftOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerRightOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerTopOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBottomOffset =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorIconPtr =
+         (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+#ifdef GuiConst_CHARMODE_ANSI
+      sgl.ItemDataPtr++;
+#else
+      sgl.ItemDataPtr += 2;
+#endif
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerIconFont =
+         GetItemByte(&sgl.ItemDataPtr) + 1;
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerIconOffsetX =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerIconOffsetY =
+         GetItemWord(&sgl.ItemDataPtr);
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1 & 0x07)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor =
+             sgl.CurItem.ForeColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor =
+             GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor =
+             GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor =
+             (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor =
+             TmpBackColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerForeColor = *ColVarPtr;
+          break;
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerTransparent = 0;
+      switch ((B1 & 0x38) >> 3)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor =
+             sgl.CurItem.BackColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor =
+             GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor =
+             GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor =
+             (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor =
+             TmpForeColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerTransparent = 1;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor = GuiConst_PIXEL_ON;
+          else
+            sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBackColor = *ColVarPtr;
+          break;
+      }
+      if (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorType == GuiLib_MARKER_BITMAP)
+      {
+        sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapIndex =
+           GetItemWord(&sgl.ItemDataPtr);
+        B1 = GetItemByte(&sgl.ItemDataPtr);
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+        sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapIsTransparent =
+           (B1 & 0x01);
+        if (sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapIsTransparent)
+#ifdef GuiConst_COLOR_DEPTH_1
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapTranspColor =
+             (B1 >> 1) & 0x01;
+#else
+          sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapTranspColor =
+             GetItemColor(&sgl.ItemDataPtr);
+#endif
+#else
+        sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorMarkerBitmapIsTransparent = 0;
+#endif
+      }
+      sgl.ScrollBoxesAry[ScrollBoxIndex].IndicatorLine = -1;
+    }
+#endif
+  }
+#endif
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+  if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_GRAPH)
+  {
+    GraphIndex = GetItemByte(&sgl.ItemDataPtr);
+    sgl.GlobalGraphIndex = GraphIndex;
+
+    sgl.GraphAry[GraphIndex].InUse = GuiLib_GRAPH_STRUCTURE_USED;
+    sgl.GraphAry[GraphIndex].OriginOffsetX = GetItemWord(&sgl.ItemDataPtr);
+    sgl.GraphAry[GraphIndex].OriginOffsetY = GetItemWord(&sgl.ItemDataPtr);
+    sgl.GraphAry[GraphIndex].ForeColor = sgl.CurItem.ForeColor;
+    sgl.GraphAry[GraphIndex].BackColor = sgl.CurItem.BackColor;
+
+    for (Axis = GuiLib_GRAPHAXIS_X; Axis <= GuiLib_GRAPHAXIS_Y; Axis++)
+    {
+      sgl.GraphAry[GraphIndex].GraphAxesCnt[Axis] = GetItemByte(&sgl.ItemDataPtr);
+      for (L = 0; L < sgl.GraphAry[GraphIndex].GraphAxesCnt[Axis]; L++)
+      {
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags = 0;
+        B = GetItemByte(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].Visible = 1;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].Line = B & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].LineBetweenAxes = (B >> 7) & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].LineNegative = (B >> 1) & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].Arrow = (B >> 2) & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].TicksMajor = (B >> 3) & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].TicksMinor = (B >> 4) & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].Numbers = (B >> 5) & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersAtOrigo = (B >> 6) & 0x01;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].Offset =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].ArrowLength =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].ArrowWidth =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].TicksMajorLength =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].TicksMajorWidth =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].TicksMinorLength =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].TicksMinorWidth =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersMinValue =
+           GetItemLong(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersMinValueOrg =
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersMinValue;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersMaxValue =
+           GetItemLong(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersMaxValueOrg =
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersMaxValue;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersStepMajor =
+           GetItemLong(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersStepMinor =
+           GetItemLong(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersOffset =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].NumbersAtEnd =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].FormatFieldWidth =
+           GetItemByte(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].FormatDecimals =
+           GetItemByte(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].FormatAlignment =
+           GetItemByte(&sgl.ItemDataPtr);
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].FormatFormat =
+           GetItemByte(&sgl.ItemDataPtr);
+        B = GetItemByte(&sgl.ItemDataPtr);
+        if (B & 0x01)
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags |= GuiLib_BITFLAG_FORMATSHOWSIGN;
+        else
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags &= ~GuiLib_BITFLAG_FORMATSHOWSIGN;
+        if (B & 0x02)
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags |= GuiLib_BITFLAG_FORMATZEROPADDING;
+        else
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags &= ~GuiLib_BITFLAG_FORMATZEROPADDING;
+        if (B & 0x04)
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags |= GuiLib_BITFLAG_FORMATTRAILINGZEROS;
+        else
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags &= ~GuiLib_BITFLAG_FORMATTRAILINGZEROS;
+        if (B & 0x08)
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags |= GuiLib_BITFLAG_FORMATTHOUSANDSSEP;
+        else
+          sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].BitFlags &= ~GuiLib_BITFLAG_FORMATTHOUSANDSSEP;
+        sgl.GraphAry[GraphIndex].GraphAxes[L][Axis].Scale = 10000;
+      }
+    }
+
+    sgl.GraphAry[GraphIndex].GraphDataSetCnt = GetItemByte(&sgl.ItemDataPtr);
+    for (L = 0; L < sgl.GraphAry[GraphIndex].GraphDataSetCnt; L++)
+    {
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].DataSize = 0;
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].DataFirst = 0;
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].DataCount = 0;
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].AxisIndexX = 0;
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].AxisIndexY = 0;
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].Visible = 1;
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].Representation =
+         GetItemByte(&sgl.ItemDataPtr);
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].Width =
+         GetItemWord(&sgl.ItemDataPtr);
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].Thickness =
+         GetItemWord(&sgl.ItemDataPtr);
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1 & 0x07)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor = sgl.CurItem.ForeColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor = GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor = (GuiConst_INTCOLOR)
+             GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor = TmpBackColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor = GuiConst_PIXEL_ON;
+          else
+            sgl.GraphAry[GraphIndex].GraphDataSets[L].ForeColor = *ColVarPtr;
+          break;
+      }
+      sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColorTransparent = 0;
+      switch ((B1 & 0x38) >> 3)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor = sgl.CurItem.BackColor;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor = GuiConst_PIXEL_ON;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor = GuiConst_PIXEL_OFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor = (GuiConst_INTCOLOR)
+             GetItemColor(&sgl.ItemDataPtr);
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor = TmpForeColor;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColorTransparent = 1;
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+            sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor = GuiConst_PIXEL_ON;
+          else
+            sgl.GraphAry[GraphIndex].GraphDataSets[L].BackColor = *ColVarPtr;
+          break;
+      }
+    }
+  }
+#endif
+
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_GRAPHICSLAYER)
+  {
+    GraphicsLayerIndex = GetItemByte(&sgl.ItemDataPtr);
+    sgl.GlobalGraphicsLayerIndex = GraphicsLayerIndex;
+
+    sgl.GraphicsLayerList[GraphicsLayerIndex].InUse = GuiLib_GRAPHICS_LAYER_USED;
+    sgl.GraphicsLayerList[GraphicsLayerIndex].SizeMode = GetItemByte(&sgl.ItemDataPtr);
+    sgl.GraphicsLayerList[GraphicsLayerIndex].InitMode = GetItemByte(&sgl.ItemDataPtr);
+  }
+
+  if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_GRAPHICSFILTER)
+  {
+    GraphicsFilterIndex = GetItemByte(&sgl.ItemDataPtr);
+    sgl.GlobalGraphicsFilterIndex = GraphicsFilterIndex;
+
+    sgl.GraphicsFilterList[GraphicsFilterIndex].InUse = GuiLib_GRAPHICS_FILTER_USED;
+    sgl.GraphicsFilterList[GraphicsFilterIndex].SourceLayerIndexNo =
+       GetItemWord(&sgl.ItemDataPtr);
+    sgl.GraphicsFilterList[GraphicsFilterIndex].DestLayerIndexNo =
+       GetItemWord(&sgl.ItemDataPtr);
+    sgl.GraphicsFilterList[GraphicsFilterIndex].ContAtLayerIndexNo =
+       GetItemWord(&sgl.ItemDataPtr);
+    for (I = 0; I <= 9; I++)
+    {
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      if (B1 == 0)
+      {
+        sgl.GraphicsFilterList[GraphicsFilterIndex].ParVarType[I] = GuiLib_VAR_NONE;
+        sgl.GraphicsFilterList[GraphicsFilterIndex].ParVarPtr[I] = 0;
+        sgl.GraphicsFilterList[GraphicsFilterIndex].ParValueNum[I] =
+           GetItemLong(&sgl.ItemDataPtr);
+      }
+      else
+      {
+        PtrIdx = GetItemWord(&sgl.ItemDataPtr);
+        if (PtrIdx >= GuiStruct_VarPtrCnt)
+          PtrIdx = 0;
+
+        sgl.GraphicsFilterList[GraphicsFilterIndex].ParVarType[I] =
+            ReadByte(GuiStruct_VarTypeList[PtrIdx]);
+        sgl.GraphicsFilterList[GraphicsFilterIndex].ParVarPtr[I] =
+            (void*)ReadWord(GuiStruct_VarPtrList[PtrIdx]);
+        sgl.GraphicsFilterList[GraphicsFilterIndex].ParValueNum[I] = 0;
+      }
+    }
+  }
+#endif
+
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+  if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_CHECKBOX)
+  {
+    sgl.CurItem.CompPars.CompCheckBox.Style = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.CompPars.CompCheckBox.Size = GetItemByte(&sgl.ItemDataPtr);
+    switch (sgl.CurItem.CompPars.CompCheckBox.Style)
+    {
+      case GuiLib_CHECKBOX_ICON:
+        sgl.CurItem.CompPars.CompCheckBox.IconPtr =
+           (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+  #ifdef GuiConst_CHARMODE_ANSI
+        sgl.ItemDataPtr++;
+  #else
+        sgl.ItemDataPtr += 2;
+  #endif
+        sgl.CurItem.CompPars.CompCheckBox.IconFont = GetItemByte(&sgl.ItemDataPtr) + 1;
+        sgl.CurItem.CompPars.CompCheckBox.IconOffsetX = GetItemWord(&sgl.ItemDataPtr);
+        sgl.CurItem.CompPars.CompCheckBox.IconOffsetY = GetItemWord(&sgl.ItemDataPtr);
+        break;
+      case GuiLib_CHECKBOX_BITMAP:
+        sgl.CurItem.CompPars.CompCheckBox.BitmapIndex = GetItemWord(&sgl.ItemDataPtr);
+        B1 = GetItemByte(&sgl.ItemDataPtr);
+  #ifdef GuiConst_BITMAP_SUPPORT_ON
+        sgl.CurItem.CompPars.CompCheckBox.BitmapIsTransparent = (B1 & 0x01);
+        if (sgl.CurItem.CompPars.CompCheckBox.BitmapIsTransparent)
+  #ifdef GuiConst_COLOR_DEPTH_1
+          sgl.CurItem.CompPars.CompCheckBox.BitmapTranspColor = (B1 >> 1) & 0x01;
+  #else
+          sgl.CurItem.CompPars.CompCheckBox.BitmapTranspColor =
+             GetItemColor(&sgl.ItemDataPtr);
+  #endif
+  #else
+        sgl.CurItem.CompPars.CompCheckBox.BitmapIsTransparent = 0;
+  #endif
+        break;
+    }
+
+    sgl.CurItem.CompPars.CompCheckBox.MarkStyle = GetItemByte(&sgl.ItemDataPtr);
+    if (sgl.CurItem.CompPars.CompCheckBox.MarkStyle != GuiLib_CHECKBOX_MARK_BITMAP)
+    {
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1 & 0x07)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.CurItem.CompPars.CompCheckBox.MarkColor = sgl.CurItem.ForeColor;
+          sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = sgl.CurItem.ForeColorIndex;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.CurItem.CompPars.CompCheckBox.MarkColor = GuiConst_PIXEL_ON;
+          sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.CurItem.CompPars.CompCheckBox.MarkColor = GuiConst_PIXEL_OFF;
+          sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.CurItem.CompPars.CompCheckBox.MarkColor = (GuiConst_INTCOLOR)
+             GetItemColor(&sgl.ItemDataPtr);
+          sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.CurItem.CompPars.CompCheckBox.MarkColor = TmpBackColor;
+          sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = TmpBackColIdx;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.CurItem.CompPars.CompCheckBox.MarkColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR*)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+          {
+            sgl.CurItem.CompPars.CompCheckBox.MarkColor = GuiConst_PIXEL_ON;
+            sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = 0xFFFF;
+          }
+          else
+          {
+            sgl.CurItem.CompPars.CompCheckBox.MarkColor = *ColVarPtr;
+            sgl.CurItem.CompPars.CompCheckBox.MarkColorIndex = ColVarPtrIdx;
+          }
+          break;
+      }
+    }
+    switch (sgl.CurItem.CompPars.CompCheckBox.MarkStyle)
+    {
+      case GuiLib_CHECKBOX_MARK_ICON:
+        sgl.CurItem.CompPars.CompCheckBox.MarkIconPtr =
+           (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+  #ifdef GuiConst_CHARMODE_ANSI
+        sgl.ItemDataPtr++;
+  #else
+        sgl.ItemDataPtr += 2;
+  #endif
+        sgl.CurItem.CompPars.CompCheckBox.MarkIconFont =
+           GetItemByte(&sgl.ItemDataPtr) + 1;
+        sgl.CurItem.CompPars.CompCheckBox.MarkOffsetX =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.CurItem.CompPars.CompCheckBox.MarkOffsetY =
+           GetItemWord(&sgl.ItemDataPtr);
+        break;
+      case GuiLib_CHECKBOX_MARK_BITMAP:
+        sgl.CurItem.CompPars.CompCheckBox.MarkBitmapIndex =
+           GetItemWord(&sgl.ItemDataPtr);
+        B1 = GetItemByte(&sgl.ItemDataPtr);
+  #ifdef GuiConst_BITMAP_SUPPORT_ON
+        sgl.CurItem.CompPars.CompCheckBox.MarkBitmapIsTransparent = (B1 & 0x01);
+        if (sgl.CurItem.CompPars.CompCheckBox.MarkBitmapIsTransparent)
+  #ifdef GuiConst_COLOR_DEPTH_1
+          sgl.CurItem.CompPars.CompCheckBox.MarkBitmapTranspColor =
+             (B1 >> 1) & 0x01;
+  #else
+          sgl.CurItem.CompPars.CompCheckBox.MarkBitmapTranspColor =
+             GetItemColor(&sgl.ItemDataPtr);
+  #endif
+  #else
+        sgl.CurItem.CompPars.CompCheckBox.MarkBitmapIsTransparent = 0;
+  #endif
+        sgl.CurItem.CompPars.CompCheckBox.MarkOffsetX =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.CurItem.CompPars.CompCheckBox.MarkOffsetY =
+           GetItemWord(&sgl.ItemDataPtr);
+        break;
+    }
+  }
+#endif
+
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+  if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_RADIOBUTTON)
+  {
+    sgl.CurItem.CompPars.CompRadioButton.Style = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.CompPars.CompRadioButton.Size = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.CompPars.CompRadioButton.Count = GetItemByte(&sgl.ItemDataPtr);
+    sgl.CurItem.CompPars.CompRadioButton.InterDistance = GetItemWord(&sgl.ItemDataPtr);
+    switch (sgl.CurItem.CompPars.CompRadioButton.Style)
+    {
+      case GuiLib_RADIOBUTTON_ICON:
+        sgl.CurItem.CompPars.CompRadioButton.IconPtr =
+           (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+  #ifdef GuiConst_CHARMODE_ANSI
+        sgl.ItemDataPtr++;
+  #else
+        sgl.ItemDataPtr += 2;
+  #endif
+        sgl.CurItem.CompPars.CompRadioButton.IconFont = GetItemByte(&sgl.ItemDataPtr) + 1;
+        sgl.CurItem.CompPars.CompRadioButton.IconOffsetX = GetItemWord(&sgl.ItemDataPtr);
+        sgl.CurItem.CompPars.CompRadioButton.IconOffsetY = GetItemWord(&sgl.ItemDataPtr);
+        break;
+      case GuiLib_RADIOBUTTON_BITMAP:
+        sgl.CurItem.CompPars.CompRadioButton.BitmapIndex = GetItemWord(&sgl.ItemDataPtr);
+        B1 = GetItemByte(&sgl.ItemDataPtr);
+  #ifdef GuiConst_BITMAP_SUPPORT_ON
+        sgl.CurItem.CompPars.CompRadioButton.BitmapIsTransparent = (B1 & 0x01);
+        if (sgl.CurItem.CompPars.CompRadioButton.BitmapIsTransparent)
+  #ifdef GuiConst_COLOR_DEPTH_1
+          sgl.CurItem.CompPars.CompRadioButton.BitmapTranspColor = (B1 >> 1) & 0x01;
+  #else
+          sgl.CurItem.CompPars.CompRadioButton.BitmapTranspColor =
+             GetItemColor(&sgl.ItemDataPtr);
+  #endif
+  #else
+        sgl.CurItem.CompPars.CompRadioButton.BitmapIsTransparent = 0;
+  #endif
+        break;
+    }
+
+    sgl.CurItem.CompPars.CompRadioButton.MarkStyle = GetItemByte(&sgl.ItemDataPtr);
+    if (sgl.CurItem.CompPars.CompRadioButton.MarkStyle != GuiLib_RADIOBUTTON_MARK_BITMAP)
+    {
+      B1 = GetItemByte(&sgl.ItemDataPtr);
+      switch (B1 & 0x07)
+      {
+        case GuiLib_COLOR_NOCHANGE:
+          sgl.CurItem.CompPars.CompRadioButton.MarkColor = sgl.CurItem.ForeColor;
+          sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = sgl.CurItem.ForeColorIndex;
+          break;
+        case GuiLib_COLOR_FORE:
+          sgl.CurItem.CompPars.CompRadioButton.MarkColor = GuiConst_PIXEL_ON;
+          sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_BACK:
+          sgl.CurItem.CompPars.CompRadioButton.MarkColor = GuiConst_PIXEL_OFF;
+          sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_OTHER:
+          sgl.CurItem.CompPars.CompRadioButton.MarkColor = (GuiConst_INTCOLOR)
+             GetItemColor(&sgl.ItemDataPtr);
+          sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_INVERT:
+          sgl.CurItem.CompPars.CompRadioButton.MarkColor = TmpBackColor;
+          sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = TmpBackColIdx;
+          break;
+        case GuiLib_COLOR_TRANSP:
+          break;
+        case GuiLib_COLOR_TABLE:
+          sgl.CurItem.CompPars.CompRadioButton.MarkColor =
+             GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+          sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = 0xFFFF;
+          break;
+        case GuiLib_COLOR_VAR:
+          ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+          if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+            ColVarPtrIdx = 0;
+          ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+          if (ColVarPtr == 0)
+          {
+            sgl.CurItem.CompPars.CompRadioButton.MarkColor = GuiConst_PIXEL_ON;
+            sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = 0xFFFF;
+          }
+          else
+          {
+            sgl.CurItem.CompPars.CompRadioButton.MarkColor = *ColVarPtr;
+            sgl.CurItem.CompPars.CompRadioButton.MarkColorIndex = ColVarPtrIdx;
+          }
+          break;
+      }
+    }
+    switch (sgl.CurItem.CompPars.CompRadioButton.MarkStyle)
+    {
+      case GuiLib_RADIOBUTTON_MARK_ICON:
+        sgl.CurItem.CompPars.CompRadioButton.MarkIconPtr =
+           (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+  #ifdef GuiConst_CHARMODE_ANSI
+        sgl.ItemDataPtr++;
+  #else
+        sgl.ItemDataPtr += 2;
+  #endif
+        sgl.CurItem.CompPars.CompRadioButton.MarkIconFont =
+           GetItemByte(&sgl.ItemDataPtr) + 1;
+        sgl.CurItem.CompPars.CompRadioButton.MarkOffsetX =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.CurItem.CompPars.CompRadioButton.MarkOffsetY =
+           GetItemWord(&sgl.ItemDataPtr);
+        break;
+      case GuiLib_RADIOBUTTON_MARK_BITMAP:
+        sgl.CurItem.CompPars.CompRadioButton.MarkBitmapIndex =
+           GetItemWord(&sgl.ItemDataPtr);
+        B1 = GetItemByte(&sgl.ItemDataPtr);
+  #ifdef GuiConst_BITMAP_SUPPORT_ON
+        sgl.CurItem.CompPars.CompRadioButton.MarkBitmapIsTransparent = (B1 & 0x01);
+        if (sgl.CurItem.CompPars.CompRadioButton.MarkBitmapIsTransparent)
+  #ifdef GuiConst_COLOR_DEPTH_1
+          sgl.CurItem.CompPars.CompRadioButton.MarkBitmapTranspColor =
+             (B1 >> 1) & 0x01;
+  #else
+          sgl.CurItem.CompPars.CompRadioButton.MarkBitmapTranspColor =
+             GetItemColor(&sgl.ItemDataPtr);
+  #endif
+  #else
+        sgl.CurItem.CompPars.CompRadioButton.MarkBitmapIsTransparent = 0;
+  #endif
+        sgl.CurItem.CompPars.CompRadioButton.MarkOffsetX =
+           GetItemWord(&sgl.ItemDataPtr);
+        sgl.CurItem.CompPars.CompRadioButton.MarkOffsetY =
+           GetItemWord(&sgl.ItemDataPtr);
+        break;
+    }
+  }
+#endif
+
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+  if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_BUTTON)
+  {
+    sgl.CurItem.CompPars.CompButton.Layout = GetItemByte(&sgl.ItemDataPtr);
+
+    sgl.CurItem.CompPars.CompButton.BodyStyle = GetItemByte(&sgl.ItemDataPtr);
+    if ((sgl.CurItem.CompPars.CompButton.BodyStyle == GuiLib_BUTTON_BODY_ICON) ||
+        (sgl.CurItem.CompPars.CompButton.BodyStyle == GuiLib_BUTTON_BODY_BITMAP))
+    {
+      sgl.CurItem.CompPars.CompButton.BodyLikeUp = GetItemByte(&sgl.ItemDataPtr);
+      for (I = 0; I < 3; I++)
+        if ((I == 0) ||
+           ((I == 1) && !(sgl.CurItem.CompPars.CompButton.BodyLikeUp & 0x01)) ||
+           ((I == 2) && !(sgl.CurItem.CompPars.CompButton.BodyLikeUp & 0x02)))
+        {
+          switch (sgl.CurItem.CompPars.CompButton.BodyStyle)
+          {
+            case GuiLib_BUTTON_BODY_ICON:
+              sgl.CurItem.CompPars.CompButton.BodyIconPtr[I] =
+                 (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+        #ifdef GuiConst_CHARMODE_ANSI
+              sgl.ItemDataPtr++;
+        #else
+              sgl.ItemDataPtr += 2;
+        #endif
+              sgl.CurItem.CompPars.CompButton.BodyIconFont[I] =
+                 GetItemByte(&sgl.ItemDataPtr) + 1;
+              sgl.CurItem.CompPars.CompButton.BodyIconOffsetX[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              sgl.CurItem.CompPars.CompButton.BodyIconOffsetY[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              break;
+            case GuiLib_BUTTON_BODY_BITMAP:
+              sgl.CurItem.CompPars.CompButton.BodyBitmapIndex[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              B1 = GetItemByte(&sgl.ItemDataPtr);
+        #ifdef GuiConst_BITMAP_SUPPORT_ON
+              sgl.CurItem.CompPars.CompButton.BodyBitmapIsTransparent[I] =
+                 (B1 & 0x01);
+              if (sgl.CurItem.CompPars.CompButton.BodyBitmapIsTransparent[I])
+        #ifdef GuiConst_COLOR_DEPTH_1
+                sgl.CurItem.CompPars.CompButton.BodyBitmapTranspColor[I] =
+                   (B1 >> 1) & 0x01;
+        #else
+                sgl.CurItem.CompPars.CompButton.BodyBitmapTranspColor[I] =
+                   GetItemColor(&sgl.ItemDataPtr);
+        #endif
+        #else
+              sgl.CurItem.CompPars.CompButton.BodyBitmapIsTransparent[I] = 0;
+        #endif
+              break;
+          }
+        }
+        else
+        {
+          switch (sgl.CurItem.CompPars.CompButton.BodyStyle)
+          {
+            case GuiLib_BUTTON_BODY_ICON:
+              sgl.CurItem.CompPars.CompButton.BodyIconPtr[I] =
+                 sgl.CurItem.CompPars.CompButton.BodyIconPtr[0];
+              sgl.CurItem.CompPars.CompButton.BodyIconFont[I] =
+                 sgl.CurItem.CompPars.CompButton.BodyIconFont[0];
+              sgl.CurItem.CompPars.CompButton.BodyIconOffsetX[I] =
+                 sgl.CurItem.CompPars.CompButton.BodyIconOffsetX[0];
+              sgl.CurItem.CompPars.CompButton.BodyIconOffsetY[I] =
+                 sgl.CurItem.CompPars.CompButton.BodyIconOffsetY[0];
+              break;
+            case GuiLib_BUTTON_BODY_BITMAP:
+              sgl.CurItem.CompPars.CompButton.BodyBitmapIndex[I] =
+                 sgl.CurItem.CompPars.CompButton.BodyBitmapIndex[0];
+              sgl.CurItem.CompPars.CompButton.BodyBitmapIsTransparent[I] =
+                 sgl.CurItem.CompPars.CompButton.BodyBitmapIsTransparent[0];
+              sgl.CurItem.CompPars.CompButton.BodyBitmapTranspColor[I] =
+                 sgl.CurItem.CompPars.CompButton.BodyBitmapTranspColor[0];
+              break;
+          }
+        }
+    }
+
+    if (sgl.CurItem.CompPars.CompButton.Layout != GuiLib_BUTTON_LAYOUT_GLYPH)
+    {
+      sgl.CurItem.CompPars.CompButton.TextLikeUp = GetItemByte(&sgl.ItemDataPtr);
+      for (I = 0; I < 3; I++)
+      {
+        if ((I == 0) ||
+           ((I == 1) && !(sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x04)) ||
+           ((I == 2) && !(sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x08)))
+        {
+          B1 = GetItemByte(&sgl.ItemDataPtr);
+          switch (B1 & 0x07)
+          {
+            case GuiLib_COLOR_NOCHANGE:
+              sgl.CurItem.CompPars.CompButton.TextColor[I] = sgl.CurItem.ForeColor;
+              sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = sgl.CurItem.ForeColorIndex;
+              break;
+            case GuiLib_COLOR_FORE:
+              sgl.CurItem.CompPars.CompButton.TextColor[I] = GuiConst_PIXEL_ON;
+              sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = 0xFFFF;
+              break;
+            case GuiLib_COLOR_BACK:
+              sgl.CurItem.CompPars.CompButton.TextColor[I] = GuiConst_PIXEL_OFF;
+              sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = 0xFFFF;
+              break;
+            case GuiLib_COLOR_OTHER:
+              sgl.CurItem.CompPars.CompButton.TextColor[I] =
+                 (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+              sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = 0xFFFF;
+              break;
+            case GuiLib_COLOR_INVERT:
+              sgl.CurItem.CompPars.CompButton.TextColor[I] = TmpBackColor;
+              sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = TmpBackColIdx;
+              break;
+            case GuiLib_COLOR_TRANSP:
+              break;
+            case GuiLib_COLOR_TABLE:
+              sgl.CurItem.CompPars.CompButton.TextColor[I] =
+                 GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+              sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = 0xFFFF;
+              break;
+            case GuiLib_COLOR_VAR:
+              ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+              if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+                ColVarPtrIdx = 0;
+              ColVarPtr = (GuiConst_INTCOLOR*)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+              if (ColVarPtr == 0)
+              {
+                sgl.CurItem.CompPars.CompButton.TextColor[I] = GuiConst_PIXEL_ON;
+                sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = 0xFFFF;
+              }
+              else
+              {
+                sgl.CurItem.CompPars.CompButton.TextColor[I] = *ColVarPtr;
+                sgl.CurItem.CompPars.CompButton.TextColorIndex[I] = ColVarPtrIdx;
+              }
+              break;
+          }
+
+          B1 = GetItemByte(&sgl.ItemDataPtr);
+          if (B1 & 0x04)
+            sgl.CurItem.TextPar[I].BitFlags |= GuiLib_BITFLAG_UNDERLINE;
+          else
+            sgl.CurItem.TextPar[I].BitFlags &= ~GuiLib_BITFLAG_UNDERLINE;
+          B1 = B1 & 0x03;
+          if (B1 != GuiLib_PS_NOCHANGE)
+            sgl.CurItem.TextPar[I].Ps = B1;
+        }
+        else
+        {
+          sgl.CurItem.CompPars.CompButton.TextColor[I] =
+             sgl.CurItem.CompPars.CompButton.TextColor[0];
+          sgl.CurItem.TextPar[I] = sgl.CurItem.TextPar[0];
+        }
+      }
+    }
+
+    if (sgl.CurItem.CompPars.CompButton.Layout != GuiLib_BUTTON_LAYOUT_TEXT)
+    {
+      sgl.CurItem.CompPars.CompButton.GlyphStyle = GetItemByte(&sgl.ItemDataPtr);
+      sgl.CurItem.CompPars.CompButton.GlyphLikeUp = GetItemByte(&sgl.ItemDataPtr);
+      for (I = 0; I < 3; I++)
+        if ((I == 0) ||
+           ((I == 1) && !(sgl.CurItem.CompPars.CompButton.GlyphLikeUp & 0x01)) ||
+           ((I == 2) && !(sgl.CurItem.CompPars.CompButton.GlyphLikeUp & 0x02)))
+        {
+          switch (sgl.CurItem.CompPars.CompButton.GlyphStyle)
+          {
+            case GuiLib_BUTTON_GLYPH_ICON:
+              B1 = GetItemByte(&sgl.ItemDataPtr);
+              switch (B1 & 0x07)
+              {
+                case GuiLib_COLOR_NOCHANGE:
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] = sgl.CurItem.ForeColor;
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = sgl.CurItem.ForeColorIndex;
+                  break;
+                case GuiLib_COLOR_FORE:
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] = GuiConst_PIXEL_ON;
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = 0xFFFF;
+                  break;
+                case GuiLib_COLOR_BACK:
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] = GuiConst_PIXEL_OFF;
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = 0xFFFF;
+                  break;
+                case GuiLib_COLOR_OTHER:
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] =
+                     (GuiConst_INTCOLOR)GetItemColor(&sgl.ItemDataPtr);
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = 0xFFFF;
+                  break;
+                case GuiLib_COLOR_INVERT:
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] = TmpBackColor;
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = TmpBackColIdx;
+                  break;
+                case GuiLib_COLOR_TRANSP:
+                  break;
+                case GuiLib_COLOR_TABLE:
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] =
+                     GuiStruct_ColorTable[GetItemByte(&sgl.ItemDataPtr)];
+                  sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = 0xFFFF;
+                  break;
+                case GuiLib_COLOR_VAR:
+                  ColVarPtrIdx = GetItemWord(&sgl.ItemDataPtr);
+                  if (ColVarPtrIdx >= GuiStruct_VarPtrCnt)
+                    ColVarPtrIdx = 0;
+                  ColVarPtr = (GuiConst_INTCOLOR*)ReadWord(GuiStruct_VarPtrList[ColVarPtrIdx]);
+                  if (ColVarPtr == 0)
+                  {
+                    sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] = GuiConst_PIXEL_ON;
+                    sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = 0xFFFF;
+                  }
+                  else
+                  {
+                    sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] = *ColVarPtr;
+                    sgl.CurItem.CompPars.CompButton.GlyphIconColorIndex[I] = ColVarPtrIdx;
+                  }
+                  break;
+              }
+
+              sgl.CurItem.CompPars.CompButton.GlyphIconPtr[I] =
+                 (GuiConst_TEXT PrefixRom *)sgl.ItemDataPtr;
+        #ifdef GuiConst_CHARMODE_ANSI
+              sgl.ItemDataPtr++;
+        #else
+              sgl.ItemDataPtr += 2;
+        #endif
+              sgl.CurItem.CompPars.CompButton.GlyphIconFont[I] =
+                 GetItemByte(&sgl.ItemDataPtr) + 1;
+              sgl.CurItem.CompPars.CompButton.GlyphIconOffsetX[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              sgl.CurItem.CompPars.CompButton.GlyphIconOffsetY[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              break;
+            case GuiLib_BUTTON_GLYPH_BITMAP:
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapIndex[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              B1 = GetItemByte(&sgl.ItemDataPtr);
+        #ifdef GuiConst_BITMAP_SUPPORT_ON
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapIsTransparent[I] =
+                 (B1 & 0x01);
+              if (sgl.CurItem.CompPars.CompButton.GlyphBitmapIsTransparent[I])
+        #ifdef GuiConst_COLOR_DEPTH_1
+                sgl.CurItem.CompPars.CompButton.GlyphBitmapTranspColor[I] =
+                   (B1 >> 1) & 0x01;
+        #else
+                sgl.CurItem.CompPars.CompButton.GlyphBitmapTranspColor[I] =
+                   GetItemColor(&sgl.ItemDataPtr);
+        #endif
+        #else
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapIsTransparent[I] = 0;
+        #endif
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetX[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetY[I] =
+                 GetItemWord(&sgl.ItemDataPtr);
+              break;
+          }
+        }
+        else
+        {
+          switch (sgl.CurItem.CompPars.CompButton.GlyphStyle)
+          {
+            case GuiLib_BUTTON_GLYPH_ICON:
+              sgl.CurItem.CompPars.CompButton.GlyphIconColor[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphIconColor[0];
+              sgl.CurItem.CompPars.CompButton.GlyphIconPtr[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphIconPtr[0];
+              sgl.CurItem.CompPars.CompButton.GlyphIconFont[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphIconFont[0];
+              sgl.CurItem.CompPars.CompButton.GlyphIconOffsetX[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphIconOffsetX[0];
+              sgl.CurItem.CompPars.CompButton.GlyphIconOffsetY[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphIconOffsetY[0];
+              break;
+            case GuiLib_BUTTON_GLYPH_BITMAP:
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapIndex[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphBitmapIndex[0];
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapIsTransparent[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphBitmapIsTransparent[0];
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapTranspColor[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphBitmapTranspColor[0];
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetX[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetX[0];
+              sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetY[I] =
+                 sgl.CurItem.CompPars.CompButton.GlyphBitmapOffsetY[0];
+              break;
+          }
+        }
+    }
+  }
+#endif
+
+#ifdef GuiConst_ITEM_PANEL_INUSE
+  if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_PANEL)
+  {
+    sgl.CurItem.CompPars.CompPanel.Style = GetItemByte(&sgl.ItemDataPtr);
+  }
+#endif
+
+  if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_TEXT +
+                           GuiLib_ITEMBIT_TEXTBLOCK)) ||
+      (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_BUTTON)))
+  {
+    if (sgl.CommonByte4 & 0x80)
+    {
+#ifdef GuiConst_LANGUAGE_ALL_ACTIVE
+      N = GuiConst_LANGUAGE_CNT;
+      W1 = LanguageIndex;
+#else
+      N = GuiConst_LANGUAGE_ACTIVE_CNT;
+      W1 = ReadWord(GuiFont_LanguageIndex[LanguageIndex]);
+#endif
+    }
+    else
+    {
+      N = 1;
+      W1 = 0;
+    }
+
+    J = 0;
+    for (I = 0; I < sgl.CurItem.TextCnt; I++)
+    {
+#ifndef GuiConst_REMOTE_TEXT_DATA
+      TxtSum1 = 0;
+      TxtSum2 = 0;
+#endif
+      for (X = 0; X < N; X++)
+      {
+#ifdef GuiConst_REMOTE_TEXT_DATA
+        Ti = GetItemWord(&sgl.ItemDataPtr);
+        if (X == W1)
+        {
+          sgl.CurItem.TextLength[J] = GetRemoteText(Ti);
+          sgl.CurItem.TextIndex[J] = Ti;
+          sgl.CurItem.TextPtr[J] = &sgl.GuiLib_RemoteTextBuffer[0];
+        }
+#else
+        TxtSize = GetItemByte(&sgl.ItemDataPtr);
+        if (TxtSize == 0xFF)
+          TxtSize = GetItemWord(&sgl.ItemDataPtr);
+
+        if (X == W1)
+        {
+          sgl.CurItem.TextLength[J] = GuiLib_GET_MIN(TxtSize, GuiConst_MAX_TEXT_LEN);
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+          TxtReadSize = sgl.CurItem.TextLength[J] + 1;
+#ifndef GuiConst_CHARMODE_ANSI
+          TxtReadSize *= 2;
+#endif
+#endif
+        }
+
+        TxtSize++;
+#ifndef GuiConst_CHARMODE_ANSI
+        TxtSize *= 2;
+#endif
+
+#ifndef GuiConst_REMOTE_TEXT_DATA
+        if (X < W1)
+          TxtSum1 += TxtSize;
+        else
+          TxtSum2 += TxtSize;
+#endif
+#endif // GuiConst_REMOTE_TEXT_DATA
+      }
+
+#ifndef GuiConst_REMOTE_TEXT_DATA
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+      sgl.RemoteStructOffset += TxtSum1;
+      GuiLib_RemoteDataReadBlock(
+         sgl.RemoteStructOffset,
+         TxtReadSize,
+         (GuiConst_INT8U*)&sgl.GuiLib_RemoteStructText);
+      sgl.CurItem.TextOffset[J] = sgl.RemoteStructOffset;
+      sgl.CurItem.TextPtr[J] = (GuiConst_TEXT PrefixGeneric *)&sgl.GuiLib_RemoteStructText;
+      sgl.RemoteStructOffset += TxtSum2;
+#else
+      sgl.ItemDataPtr += TxtSum1;
+      sgl.CurItem.TextPtr[J] = (GuiConst_TEXT PrefixGeneric *)(sgl.ItemDataPtr);
+      sgl.ItemDataPtr += TxtSum2;
+#endif
+#endif // GuiConst_REMOTE_TEXT_DATA
+
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+      if ((sgl.ItemTypeBit2 & GuiLib_ITEMBIT_BUTTON) &&
+         (((I == 0) && (sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x01)) ||
+          ((I == 1) && (sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x02))))
+        J++;
+#endif
+      J++;
+    }
+
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+    if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_BUTTON)
+    {
+      if (sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x01)
+      {
+        sgl.CurItem.TextLength[1] = sgl.CurItem.TextLength[0];
+        sgl.CurItem.TextPtr[1] = sgl.CurItem.TextPtr[0];
+
+#ifdef GuiConst_REMOTE_TEXT_DATA
+        sgl.CurItem.TextIndex[1] = sgl.CurItem.TextIndex[0];
+#else
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+        sgl.CurItem.TextOffset[1] = sgl.CurItem.TextOffset[0];
+#endif
+#endif
+
+      }
+      if (sgl.CurItem.CompPars.CompButton.TextLikeUp & 0x02)
+      {
+        sgl.CurItem.TextLength[2] = sgl.CurItem.TextLength[0];
+        sgl.CurItem.TextPtr[2] = sgl.CurItem.TextPtr[0];
+
+#ifdef GuiConst_REMOTE_TEXT_DATA
+        sgl.CurItem.TextIndex[2] = sgl.CurItem.TextIndex[0];
+#else
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+        sgl.CurItem.TextOffset[2] = sgl.CurItem.TextOffset[0];
+#endif
+#endif
+      }
+    }
+#endif
+  }
+}
+//------------------------------------------------------------------------------
+static GuiConst_INT16S VarStrCmp(
+   GuiConst_INT8U PrefixLocate *S1,
+   GuiConst_INT8U PrefixLocate *S2)
+{
+  GuiConst_INT16S len = 0;
+
+#ifdef GuiConst_CHARMODE_ANSI
+  do
+  {
+    if ((*S1 == 0) && (*S2 == 0))
+      return (0);
+
+    else if (*S1 == 0)
+      return (-1);
+    else if (*S2 == 0)
+      return (1);
+    else if (*S1 < *S2)
+      return (-1);
+    else if (*S1 > *S2)
+      return (1);
+    S1++;
+    S2++;
+  }
+  while ((len++) < GuiConst_AUTOREDRAW_MAX_VAR_SIZE);
+#else
+  GuiConst_INT16U T1, T2, T3;
+
+  do
+  {
+    T1 = *S1++;
+    T3 = *S1++;
+    T1 |= T3 << 8;
+
+    T2 = *S2++;
+    T3 = *S2++;
+    T2 |= T3 << 8;
+
+    if (T1 < T2)
+      return (-1);
+    else if (T1 > T2)
+      return (1);
+    else if (T1 == 0)
+      return (0);
+  }
+  while ((len++) < GuiConst_AUTOREDRAW_MAX_VAR_SIZE);
+#endif
+  return (1);
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_Init(void)
+{
+  GuiConst_INT16S I;
+
+  for (I=0;I<GuiConst_MAX_DYNAMIC_ITEMS;I++)
+  {
+    sgl.AutoRedraw[I].Next = -1;
+    sgl.AutoRedraw[I].Prev = -1;
+    sgl.AutoRedraw[I].Valid = ITEM_NONE;
+  }
+
+  sgl.AutoRedrawCount = 0;
+  sgl.AutoRedrawFirst = -1;
+  sgl.AutoRedrawLast = -1;
+  sgl.AutoRedrawCount = 0;
+  sgl.AutoRedrawParent = -1;
+  sgl.AutoRedrawUpdate = GuiLib_FALSE;
+  sgl.AutoRedrawInsertPoint = GuiConst_MAX_DYNAMIC_ITEMS;
+  sgl.AutoRedrawLatest = -1;
+
+  return;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_Reset(void)
+{
+  sgl.AutoRedrawNext = sgl.AutoRedrawFirst;
+
+  return sgl.AutoRedrawNext;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_GetNext(GuiConst_INT16S I)
+{
+  GuiConst_INT16S N, result;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return -1;
+
+  result = -1;
+
+  N = sgl.AutoRedraw[I].Next;
+  while ((N >= 0) && (N < GuiConst_MAX_DYNAMIC_ITEMS))
+  {
+    if ((sgl.AutoRedraw[N].Valid & ITEM_AUTOREDRAW) == ITEM_AUTOREDRAW)
+    {
+      result = N;
+      break;
+    }
+    else if (sgl.AutoRedraw[N].Valid == ITEM_NONE)
+      break;
+    else
+    {
+      N = sgl.AutoRedraw[N].Next;
+      if ((N < 0) || (N >= GuiConst_MAX_DYNAMIC_ITEMS))
+        break;
+    }
+  }
+
+  return result;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT8S AutoRedraw_ItemIsStruct(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return GuiLib_FALSE;
+
+  if ((sgl.AutoRedraw[I].Valid & ITEM_AUTOREDRAW) == ITEM_AUTOREDRAW)
+  {
+    if ((sgl.AutoRedraw[I].Item.ItemType == GuiLib_ITEM_STRUCTARRAY) ||
+        (sgl.AutoRedraw[I].Item.ItemType == GuiLib_ITEM_STRUCTCOND))
+      return GuiLib_TRUE;
+    else
+      return GuiLib_FALSE;
+  }
+  else
+    return GuiLib_FALSE;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT8S AutoRedraw_GetLevel(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return -1;
+
+  if ((sgl.AutoRedraw[I].Valid & ITEM_AUTOREDRAW) == ITEM_AUTOREDRAW)
+    return sgl.AutoRedraw[I].Level;
+  else
+    return 0;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_Add(PrefixLocate GuiLib_ItemRec * PrefixLocate Item, GuiConst_INT16S Struct, GuiConst_INT8U Level)
+{
+  GuiConst_INT16S I, N;
+
+  I = -1;
+
+  if (sgl.AutoRedrawCount < GuiConst_MAX_DYNAMIC_ITEMS)
+  {
+
+    if (sgl.AutoRedrawFirst == -1)
+    {
+      I = 0;
+      sgl.AutoRedrawFirst = 0;
+      sgl.AutoRedrawLast  = -1;
+      sgl.AutoRedrawNext  = 0;
+    }
+    else
+    {
+      for (N=0;N<GuiConst_MAX_DYNAMIC_ITEMS;N++)
+      {
+        if (sgl.AutoRedraw[N].Valid == ITEM_NONE)
+        {
+          I = N;
+          break;
+        }
+      }
+    }
+
+    if (I >= 0)
+    {
+      sgl.AutoRedraw[I].Next = -1;
+      sgl.AutoRedraw[I].Prev = sgl.AutoRedrawLast;
+      sgl.AutoRedraw[I].Valid = ITEM_AUTOREDRAW;
+      sgl.AutoRedraw[I].Parent = sgl.AutoRedrawParent;
+      sgl.AutoRedraw[I].Level  = Level;
+      memcpy(&sgl.AutoRedraw[I].Item, Item, sizeof(GuiLib_ItemRec));
+      memcpy(&sgl.AutoRedraw[I].Memory, &sgl.Memory, sizeof(ItemMemory));
+
+      if ((sgl.AutoRedrawLast >= 0)
+       && (sgl.AutoRedrawLast < GuiConst_MAX_DYNAMIC_ITEMS))
+        sgl.AutoRedraw[sgl.AutoRedrawLast].Next = I;
+
+      sgl.AutoRedrawCount++;
+      sgl.AutoRedrawLast = I;
+      sgl.AutoRedrawLatest = I;
+    }
+
+  }
+
+  return I;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_Insert(PrefixLocate GuiLib_ItemRec * PrefixLocate Item,
+          GuiConst_INT16S Struct,
+          GuiConst_INT8U Level)
+{
+  GuiConst_INT16S I, N;
+
+  if ((sgl.AutoRedrawFirst == -1) ||
+      (sgl.AutoRedrawInsertPoint >= GuiConst_MAX_DYNAMIC_ITEMS))
+  {
+    return AutoRedraw_Add(Item, Struct, Level);
+  }
+
+  if (sgl.AutoRedrawCount < GuiConst_MAX_DYNAMIC_ITEMS)
+  {
+    I = -1;
+
+    for (N=0;N<GuiConst_MAX_DYNAMIC_ITEMS;N++)
+    {
+      if (sgl.AutoRedraw[N].Valid == ITEM_NONE)
+      {
+        I = N;
+        break;
+      }
+    }
+  }
+  else
+    return -1;
+
+  if (I >= 0)
+  {
+    if (sgl.AutoRedrawInsertPoint < 0)
+    {
+      sgl.AutoRedraw[I].Next = sgl.AutoRedrawFirst;
+      sgl.AutoRedraw[I].Prev = -1;
+    }
+    else
+    {
+      sgl.AutoRedraw[I].Next = sgl.AutoRedraw[sgl.AutoRedrawInsertPoint].Next;
+      sgl.AutoRedraw[I].Prev = sgl.AutoRedrawInsertPoint;
+      sgl.AutoRedraw[sgl.AutoRedraw[I].Prev].Next = I;
+    }
+
+    if (sgl.AutoRedraw[I].Next != -1)
+      sgl.AutoRedraw[sgl.AutoRedraw[I].Next].Prev = I;
+
+    sgl.AutoRedraw[I].Valid = ITEM_AUTOREDRAW;
+    sgl.AutoRedraw[I].Parent = sgl.AutoRedrawParent;
+    sgl.AutoRedraw[I].Level  = Level;
+
+    memcpy(&sgl.AutoRedraw[I].Item, Item, sizeof(GuiLib_ItemRec));
+    memcpy(&sgl.AutoRedraw[I].Memory, &sgl.Memory, sizeof(ItemMemory));
+
+    if (sgl.AutoRedraw[I].Next == -1)
+      sgl.AutoRedrawLast = I;
+
+    if (sgl.AutoRedraw[I].Prev == -1)
+      sgl.AutoRedrawFirst = I;
+
+    sgl.AutoRedrawInsertPoint = I;
+    sgl.AutoRedrawLatest = I;
+    sgl.AutoRedrawCount++;
+  }
+
+  return I;
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_UpdateDrawn(GuiConst_INT16S I, PrefixLocate GuiLib_ItemRec * PrefixLocate Item)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return;
+
+  if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+  {
+    sgl.AutoRedraw[I].Item.Drawn   = Item->Drawn;
+    sgl.AutoRedraw[I].Item.DrawnX1 = Item->DrawnX1;
+    sgl.AutoRedraw[I].Item.DrawnY1 = Item->DrawnY1;
+    sgl.AutoRedraw[I].Item.DrawnX2 = Item->DrawnX2;
+    sgl.AutoRedraw[I].Item.DrawnY2 = Item->DrawnY2;
+  }
+
+  return;
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_Delete(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return;
+
+  if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+  {
+    if (sgl.AutoRedrawLast == I)
+      sgl.AutoRedrawLast = sgl.AutoRedraw[I].Prev;
+
+    if (sgl.AutoRedrawFirst == I)
+      sgl.AutoRedrawFirst = sgl.AutoRedraw[I].Next;
+
+    if (sgl.AutoRedraw[I].Prev != -1)
+      sgl.AutoRedraw[sgl.AutoRedraw[I].Prev].Next = sgl.AutoRedraw[I].Next;
+
+    if (sgl.AutoRedraw[I].Next != -1)
+      sgl.AutoRedraw[sgl.AutoRedraw[I].Next].Prev = sgl.AutoRedraw[I].Prev;
+
+    sgl.AutoRedraw[I].Next = -1;
+    sgl.AutoRedraw[I].Prev = -1;
+    sgl.AutoRedraw[I].Valid = ITEM_NONE;
+
+    sgl.AutoRedrawCount--;
+  }
+
+  return;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_DeleteStruct(GuiConst_INT16S Struct_id)
+{
+  GuiConst_INT16S I, N, X;
+
+  I = sgl.AutoRedrawFirst;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return -1;
+
+  if ((Struct_id < 0) || (Struct_id >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return -1;
+
+  if (sgl.AutoRedraw[Struct_id].Valid == ITEM_NONE)
+    return -1;
+
+  while (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+  {
+    N = sgl.AutoRedraw[I].Next;
+    if (sgl.AutoRedraw[I].Parent == Struct_id)
+    {
+      X = AutoRedraw_DeleteStruct(I);
+      if ((X >= 0) && (X < GuiConst_MAX_DYNAMIC_ITEMS))
+        N = sgl.AutoRedraw[X].Next;
+    }
+
+    I = N;
+
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      break;
+  }
+
+  sgl.AutoRedrawInsertPoint = sgl.AutoRedraw[Struct_id].Prev;
+
+  AutoRedraw_Delete(Struct_id);
+
+  if (sgl.AutoRedrawInsertPoint >= 0)
+    return sgl.AutoRedrawInsertPoint;
+  else
+    return sgl.AutoRedrawFirst;
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_Destroy(void)
+{
+  GuiConst_INT16S I;
+
+  for (I=0;I<GuiConst_MAX_DYNAMIC_ITEMS;I++)
+  {
+    sgl.AutoRedraw[I].Next = -1;
+    sgl.AutoRedraw[I].Prev = -1;
+    sgl.AutoRedraw[I].Valid = ITEM_NONE;
+  }
+
+  sgl.AutoRedrawCount = 0;
+  sgl.AutoRedrawFirst = -1;
+  sgl.AutoRedrawLast = -1;
+  sgl.AutoRedrawCount = 0;
+  sgl.AutoRedrawParent = -1;
+  sgl.AutoRedrawUpdate = GuiLib_FALSE;
+  sgl.AutoRedrawInsertPoint = GuiConst_MAX_DYNAMIC_ITEMS;
+  sgl.AutoRedrawLatest = -1;
+
+  return;
+}
+//------------------------------------------------------------------------------
+PrefixLocate GuiLib_ItemRec *AutoRedraw_GetItem(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return NULL;
+  else
+    return &sgl.AutoRedraw[I].Item;
+}
+//------------------------------------------------------------------------------
+PrefixLocate ItemMemory *AutoRedraw_GetItemMemory(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return NULL;
+  else
+    return &sgl.AutoRedraw[I].Memory;
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_UpdateOnChange(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return;
+
+  if ((sgl.AutoRedraw[I].Valid & ITEM_AUTOREDRAW) == ITEM_AUTOREDRAW)
+  {
+    sgl.AutoRedraw[I].ValueSize = 0;
+
+    if (sgl.AutoRedraw[I].Item.UpdateType == GuiLib_UPDATE_ON_CHANGE)
+    {
+      if (sgl.AutoRedraw[I].Item.VarPtr != 0)
+      {
+        switch (sgl.AutoRedraw[I].Item.VarType)
+        {
+          case GuiLib_VAR_BOOL:
+          case GuiLib_VAR_UNSIGNED_CHAR:
+          case GuiLib_VAR_SIGNED_CHAR:
+            sgl.AutoRedraw[I].ValueSize = 1;
+            break;
+
+          case GuiLib_VAR_UNSIGNED_INT:
+          case GuiLib_VAR_SIGNED_INT:
+            sgl.AutoRedraw[I].ValueSize = 2;
+            break;
+
+          case GuiLib_VAR_UNSIGNED_LONG:
+          case GuiLib_VAR_SIGNED_LONG:
+          case GuiLib_VAR_FLOAT:
+            sgl.AutoRedraw[I].ValueSize = 4;
+            break;
+
+          case GuiLib_VAR_DOUBLE:
+            sgl.AutoRedraw[I].ValueSize = 8;
+            break;
+
+          case GuiLib_VAR_COLOR:
+            sgl.AutoRedraw[I].ValueSize =
+               GuiConst_PIXEL_BYTE_SIZE;
+            break;
+
+          case GuiLib_VAR_STRING:
+            sgl.AutoRedraw[I].ValueSize =
+               GuiLib_AUTOREDRAW_MAX_VAR_SIZE;
+            break;
+
+          default:
+            sgl.AutoRedraw[I].ValueSize = 0;
+        }
+        if (sgl.AutoRedraw[I].ValueSize > 0)
+        {
+          memcpy(&sgl.AutoRedraw[I].Value[0],
+                  sgl.AutoRedraw[I].Item.VarPtr,
+                  sgl.AutoRedraw[I].ValueSize);
+        }
+      }
+    }
+  }
+
+  return;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT8S RefreshColorVariable(GuiConst_INTCOLOR PrefixLocate *comp, GuiConst_INT16U idx)
+{
+  GuiConst_INTCOLOR PrefixLocate *ColVarPtr;
+  GuiConst_INTCOLOR ColVal;
+  GuiConst_INT8S    changed = GuiLib_FALSE;
+
+  if (idx != 0xFFFF)
+  {
+    if (idx < GuiStruct_VarPtrCnt)
+    {
+      ColVarPtr = (GuiConst_INTCOLOR PrefixLocate *)ReadWord(GuiStruct_VarPtrList[idx]);
+      if (ColVarPtr != 0)
+      {
+        ColVal = *ColVarPtr;
+        if (*comp != ColVal)
+        {
+          *comp = ColVal;
+          changed = GuiLib_TRUE;
+        }
+      }
+    }
+  }
+
+  return changed;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT8S AutoRedraw_VarChanged(GuiConst_INT16S I)
+{
+  GuiLib_ItemRecPtr Item;
+  GuiConst_INT16S VarChange;
+  GuiConst_INT8S  changed;
+
+  changed = GuiLib_FALSE;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return changed;
+
+  if ((sgl.AutoRedraw[I].Valid & ITEM_AUTOREDRAW) == ITEM_AUTOREDRAW)
+  {
+    Item = &sgl.AutoRedraw[I].Item;
+    if (Item->UpdateType == GuiLib_UPDATE_ON_CHANGE)
+    {
+      if ((Item->TextPar[0].BitFlags & GuiLib_BITFLAG_INUSE) &&
+          (Item->VarPtr != 0))
+      {
+        VarChange = 0;
+        if (sgl.AutoRedraw[I].ValueSize > 0)
+        {
+          if (Item->VarType == GuiLib_VAR_STRING)
+            VarChange = VarStrCmp(&sgl.AutoRedraw[I].Value[0],
+               (GuiConst_INT8U PrefixLocate *)Item->VarPtr);
+          else
+            VarChange =
+               memcmp(&sgl.AutoRedraw[I].Value[0],
+                       Item->VarPtr,
+                       sgl.AutoRedraw[I].ValueSize);
+        }
+        if ((sgl.AutoRedraw[I].ValueSize == 0) || (VarChange != 0))
+          changed = GuiLib_TRUE;
+      }
+    }
+    else
+      changed = GuiLib_TRUE;
+
+    changed |= RefreshColorVariable(&Item->ForeColor, Item->ForeColorIndex);
+    changed |= RefreshColorVariable(&Item->BackColor, Item->BackColorIndex);
+    changed |= RefreshColorVariable(&Item->BarForeColor, Item->BarForeColorIndex);
+    changed |= RefreshColorVariable(&Item->BarBackColor, Item->BarBackColorIndex);
+
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+    if (Item->ItemType == GuiLib_ITEM_RADIOBUTTON)
+      changed |= RefreshColorVariable(&Item->CompPars.CompRadioButton.MarkColor,
+                           Item->CompPars.CompRadioButton.MarkColorIndex);
+#endif
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+    if (Item->ItemType == GuiLib_ITEM_CHECKBOX)
+      changed |= RefreshColorVariable(&Item->CompPars.CompCheckBox.MarkColor,
+                           Item->CompPars.CompCheckBox.MarkColorIndex);
+#endif
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+    if (Item->ItemType == GuiLib_ITEM_BUTTON)
+    {
+      GuiConst_INT32S state;
+
+      if ((sgl.CurItem.VarPtr != 0) &&
+          (sgl.CurItem.VarType != GuiLib_VAR_STRING))
+      {
+        state = ReadVar(Item->VarPtr, Item->VarType);
+        if ((state < GuiLib_BUTTON_STATE_UP) ||
+            (state > GuiLib_BUTTON_STATE_DISABLED))
+          state = GuiLib_BUTTON_STATE_UP;
+      }
+      else
+        state = GuiLib_BUTTON_STATE_UP;
+
+
+      changed |= RefreshColorVariable(&Item->CompPars.CompButton.TextColor[state],
+                           Item->CompPars.CompButton.TextColorIndex[state]);
+
+      changed |= RefreshColorVariable(&Item->CompPars.CompButton.GlyphIconColor[state],
+                           Item->CompPars.CompButton.GlyphIconColorIndex[state]);
+    }
+#endif
+  }
+
+  return changed;
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_UpdateVar(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return;
+
+  if ((sgl.AutoRedraw[I].Valid & ITEM_AUTOREDRAW) == ITEM_AUTOREDRAW)
+  {
+    if (sgl.AutoRedraw[I].Item.UpdateType == GuiLib_UPDATE_ON_CHANGE)
+    {
+      if ((sgl.AutoRedraw[I].Item.TextPar[0].BitFlags & GuiLib_BITFLAG_INUSE) &&
+          (sgl.AutoRedraw[I].Item.VarPtr != 0))
+      {
+        if (sgl.AutoRedraw[I].ValueSize > 0)
+        {
+          memcpy(&sgl.AutoRedraw[I].Value[0],
+                  sgl.AutoRedraw[I].Item.VarPtr,
+                  sgl.AutoRedraw[I].ValueSize);
+        }
+      }
+    }
+  }
+
+  return;
+}
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_InsertTextBox(PrefixLocate GuiLib_ItemRec * PrefixLocate Item,
+                  GuiConst_INT16S Struct,
+                  GuiConst_INT8U Level)
+{
+  GuiConst_INT16S I;
+
+  I = AutoRedraw_Insert(Item, Struct, Level);
+
+  if (I != -1)
+    sgl.AutoRedraw[I].Valid = ITEM_TEXTBOX;
+
+  return I;
+}//------------------------------------------------------------------------------
+void AutoRedraw_SetAsTextBox(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return;
+
+  if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    sgl.AutoRedraw[I].Valid |= ITEM_TEXTBOX;
+
+  return;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_GetTextBox(GuiConst_INT8S T, GuiConst_INT16S I)
+{
+  if (I == -1)
+  {
+    I = sgl.AutoRedrawFirst;
+
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      return -1;
+  }
+  else
+  {
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      return -1;
+
+    if (sgl.AutoRedraw[I].Valid == ITEM_NONE)
+      return -1;
+
+    I = sgl.AutoRedraw[I].Next;
+
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      return -1;
+  }
+
+  while (I != -1)
+  {
+    if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    {
+      if ((sgl.AutoRedraw[I].Valid & ITEM_TEXTBOX) == ITEM_TEXTBOX)
+      {
+        if (sgl.AutoRedraw[I].Item.CompPars.CompTextBox.ScrollIndex == T)
+          break;
+      }
+      I = sgl.AutoRedraw[I].Next;
+    }
+    else
+      return -1;
+  }
+
+  return I;
+}
+
+#endif // GuiConst_TEXTBOX_FIELDS_ON
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_InsertCursor(PrefixLocate GuiLib_ItemRec * PrefixLocate Item,
+                  GuiConst_INT16S Struct,
+                  GuiConst_INT8U Level)
+{
+  GuiConst_INT16S I;
+
+  I = AutoRedraw_Insert(Item, Struct, Level);
+
+  if (I != -1)
+    sgl.AutoRedraw[I].Valid = ITEM_CURSOR;
+
+  return I;
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_SetAsCursor(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return;
+
+  if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    sgl.AutoRedraw[I].Valid |= ITEM_CURSOR;
+
+  return;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_IsOnlyCursor(GuiConst_INT16S I)
+{
+  GuiConst_INT16S ret = GuiLib_FALSE;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return ret;
+
+  if (sgl.AutoRedraw[I].Valid == ITEM_CURSOR)
+    ret = GuiLib_TRUE;
+
+  return ret;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_GetCursor(GuiConst_INT8S C, GuiConst_INT16S I)
+{
+  if (I == -1)
+  {
+    I = sgl.AutoRedrawFirst;
+
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      return -1;
+  }
+  else
+  {
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      return -1;
+
+    if (sgl.AutoRedraw[I].Valid == ITEM_NONE)
+      return -1;
+
+    I = sgl.AutoRedraw[I].Next;
+
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      return -1;
+  }
+
+  while (I != -1)
+  {
+    if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    {
+      if ((sgl.AutoRedraw[I].Valid & ITEM_CURSOR) == ITEM_CURSOR)
+      {
+        if (sgl.AutoRedraw[I].Item.CursorFieldNo == C)
+          break;
+      }
+      I = sgl.AutoRedraw[I].Next;
+    }
+    else
+      return -1;
+  }
+
+  return I;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT8S AutoRedraw_GetCursorNumber(GuiConst_INT16S I)
+{
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return -1;
+
+  if (sgl.AutoRedraw[I].Valid & ITEM_CURSOR)
+    return sgl.AutoRedraw[I].Item.CursorFieldNo;
+
+  return -1;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_GetFirstCursor(void)
+{
+  GuiConst_INT16S I, result;
+  GuiConst_INT8S C;
+
+  I = sgl.AutoRedrawFirst;
+  C = 0x7F;
+
+  result = -1;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return result;
+
+  while (I != -1)
+  {
+    if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    {
+      if ((sgl.AutoRedraw[I].Valid & ITEM_CURSOR) == ITEM_CURSOR)
+      {
+        if (sgl.AutoRedraw[I].Item.CursorFieldNo < C)
+        {
+          C = sgl.AutoRedraw[I].Item.CursorFieldNo;
+          result = I;
+        }
+      }
+      I = sgl.AutoRedraw[I].Next;
+    }
+    else
+      return -1;
+  }
+
+  return result;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_GetLastCursor(void)
+{
+  GuiConst_INT16S I, result;
+  GuiConst_INT8S C;
+
+  I = sgl.AutoRedrawFirst;
+  C = 0;
+
+  result = -1;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return result;
+
+  while (I != -1)
+  {
+    if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    {
+      if ((sgl.AutoRedraw[I].Valid & ITEM_CURSOR) == ITEM_CURSOR)
+      {
+        if (sgl.AutoRedraw[I].Item.CursorFieldNo > C)
+        {
+          C = sgl.AutoRedraw[I].Item.CursorFieldNo;
+          result = I;
+        }
+      }
+      I = sgl.AutoRedraw[I].Next;
+    }
+    else
+      return -1;
+  }
+
+  return result;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_GetNextCursor(GuiConst_INT8S C)
+{
+  GuiConst_INT16S I, result;
+  GuiConst_INT8S closest;
+
+  I = sgl.AutoRedrawFirst;
+  closest = 0x7f;
+
+  result = -1;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return result;
+
+  while (I != -1)
+  {
+    if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    {
+      if ((sgl.AutoRedraw[I].Valid & ITEM_CURSOR) == ITEM_CURSOR)
+      {
+        if ((sgl.AutoRedraw[I].Item.CursorFieldNo > C)
+         && (sgl.AutoRedraw[I].Item.CursorFieldNo <= closest))
+        {
+          closest = sgl.AutoRedraw[I].Item.CursorFieldNo;
+          result = I;
+        }
+      }
+      I = sgl.AutoRedraw[I].Next;
+    }
+    else
+      return -1;
+  }
+
+  return result;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_GetPrevCursor(GuiConst_INT8S C)
+{
+  GuiConst_INT16S I, result;
+  GuiConst_INT8S closest;
+
+  I = sgl.AutoRedrawFirst;
+  closest = 0;
+
+  result = -1;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return result;
+
+  while (I != -1)
+  {
+    if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    {
+      if ((sgl.AutoRedraw[I].Valid & ITEM_CURSOR) == ITEM_CURSOR)
+      {
+        if ((sgl.AutoRedraw[I].Item.CursorFieldNo < C)
+         && (sgl.AutoRedraw[I].Item.CursorFieldNo >= closest))
+        {
+          closest = sgl.AutoRedraw[I].Item.CursorFieldNo;
+          result = I;
+        }
+      }
+      I = sgl.AutoRedraw[I].Next;
+    }
+    else
+      return -1;
+  }
+
+  return result;
+}
+//------------------------------------------------------------------------------
+GuiConst_INT16S AutoRedraw_CheckCursorInheritance(GuiConst_INT16S N)
+{
+  GuiConst_INT16S I, J, result;
+  GuiConst_INT16S cursor_id;
+
+  if (GuiLib_ActiveCursorFieldNo < 0)
+    return -1;
+
+  if ((N < 0) || (N >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return -1;
+
+  if (sgl.AutoRedraw[N].Valid == ITEM_NONE)
+    return -1;
+
+  I = sgl.AutoRedraw[N].Parent;
+  result = 1;
+
+  while (result == 1)
+  {
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    {
+      result = -1;
+      break;
+    }
+
+    if (sgl.AutoRedraw[I].Valid != ITEM_NONE)
+    {
+      if ((sgl.AutoRedraw[I].Valid & ITEM_CURSOR) == ITEM_CURSOR)
+      {
+        cursor_id = sgl.AutoRedraw[I].Item.CursorFieldNo;
+
+        if (cursor_id == GuiLib_ActiveCursorFieldNo)
+        {
+          result = 0;
+          break;
+        }
+      }
+      J = sgl.AutoRedraw[I].Parent;
+      if (J == I)
+        result = -1;
+      I = J;
+    }
+    else
+    {
+      result = -1;
+      break;
+    }
+
+  }
+
+  return result;
+}
+//------------------------------------------------------------------------------
+void AutoRedraw_ResetCursor(void)
+{
+  GuiConst_INT16S I;
+
+  I = sgl.AutoRedrawFirst;
+
+  if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+    return;
+
+  while ((sgl.AutoRedraw[I].Valid & ITEM_AUTOREDRAW) == ITEM_AUTOREDRAW)
+  {
+    sgl.AutoRedraw[I].Item.CursorFieldNo = GuiLib_NO_CURSOR;
+
+    I = sgl.AutoRedraw[I].Next;
+    if ((I < 0) || (I >= GuiConst_MAX_DYNAMIC_ITEMS))
+      break;
+  }
+
+  return;
+}
+#endif // GuiConst_CURSOR_SUPPORT_ON
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiLib.c	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,4965 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2015 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                               v6.0.9.005                                 */
+/*                                                                          */
+/* ************************************************************************ */
+
+
+
+//------------------------------------------------------------------------------
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+#include "GuiLibStruct.h"
+#ifdef GuiConst_VNC_REMOTE_SUPPORT_ON
+#include "GuiVnc.h"
+#endif
+#include <string.h>
+#include <stdlib.h>
+
+#ifndef GuiConst_PC_V6_0_9
+If your compiler sees this text you are using a wrong version of the easyGUI
+library. Version numbers of the easyGUI PC application and c library must match.
+Only exception is GuiDisplay.c/h (your display driver), which can be kept from
+version to version.
+#endif
+
+#define WANT_DOUBLE_BUFFERING // Also in GuiGraph16.h, GuiDisplay.c - *** all three must match ***
+
+
+#define GuiLib_CHR_PSLEFT_OFS              0
+#define GuiLib_CHR_PSRIGHT_OFS             5
+#define GuiLib_CHR_XLEFT_OFS               10
+#define GuiLib_CHR_XWIDTH_OFS              11
+#define GuiLib_CHR_YTOP_OFS                12
+#define GuiLib_CHR_YHEIGHT_OFS             13
+#define GuiLib_CHR_LINECTRL_OFS            14
+#define GuiLib_CHR_PS_TOP_OFS              0
+#define GuiLib_CHR_PS_MID_OFS              1
+#define GuiLib_CHR_PS_MIDBASE_OFS          2
+#define GuiLib_CHR_PS_BASE_OFS             3
+#define GuiLib_CHR_PS_BOTTOM_OFS           4
+
+
+
+#ifdef GuiConst_ARAB_CHARS_INUSE
+#define GuiLib_ARAB_LIGATURES_CNT          4
+const GuiConst_INT16U GuiLib_ARAB_LIGATURES[GuiLib_ARAB_LIGATURES_CNT][3] =
+   {{0x0644, 0x0622, 0xFEF5},
+    {0x0644, 0x0623, 0xFEF7},
+    {0x0644, 0x0625, 0xFEF9},
+    {0x0644, 0x0627, 0xFEFB}};
+
+#define GuiLib_ARAB_CHAR_PRI_MIN           0x0622
+#define GuiLib_ARAB_CHAR_PRI_MAX           0x06D6
+#define GuiLib_ARAB_CHAR_SEC_MIN           0xFB50
+#define GuiLib_ARAB_CHAR_SEC_MAX           0xFEF4
+#define GuiLib_ARAB_CHAR_TYPE_ISO          0
+#define GuiLib_ARAB_CHAR_TYPE_FIN          1
+#define GuiLib_ARAB_CHAR_TYPE_INI          2
+#define GuiLib_ARAB_CHAR_TYPE_MED          3
+#define GuiLib_ARAB_CHAR_ISOFIN            0x02
+#define GuiLib_ARAB_CHAR_ISOFININIMED      0x04
+#define GuiLib_ARAB_CHAR_DIACRITIC         0x0A
+#define GuiLib_ARAB_CHAR_CONVERT_CNT       83
+
+const GuiConst_INT16U GuiLib_ARAB_CHAR_CONVERT[GuiLib_ARAB_CHAR_CONVERT_CNT][3] =
+   {{0x0622, 0xFE81, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0623, 0xFE83, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0624, 0xFE85, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0625, 0xFE87, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0626, 0xFE89, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0627, 0xFE8D, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0628, 0xFE8F, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0629, 0xFE93, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x062A, 0xFE95, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x062B, 0xFE99, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x062C, 0xFE9D, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x062D, 0xFEA1, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x062E, 0xFEA5, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x062F, 0xFEA9, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0630, 0xFEAB, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0631, 0xFEAD, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0632, 0xFEAF, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0633, 0xFEB1, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0634, 0xFEB5, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0635, 0xFEB9, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0636, 0xFEBD, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0637, 0xFEC1, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0638, 0xFEC5, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0639, 0xFEC9, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x063A, 0xFECD, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0641, 0xFED1, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0642, 0xFED5, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0643, 0xFED9, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0644, 0xFEDD, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0645, 0xFEE1, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0646, 0xFEE5, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0647, 0xFEE9, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0648, 0xFEED, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0649, 0xFEEF, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x064A, 0xFEF1, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x064E, 0xFE76, GuiLib_ARAB_CHAR_DIACRITIC},
+    {0x064F, 0xFE78, GuiLib_ARAB_CHAR_DIACRITIC},
+    {0x0650, 0xFE7A, GuiLib_ARAB_CHAR_DIACRITIC},
+    {0x0651, 0xFE7C, GuiLib_ARAB_CHAR_DIACRITIC},
+    {0x0652, 0xFE7E, GuiLib_ARAB_CHAR_DIACRITIC},
+    {0x0671, 0xFB50, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0679, 0xFB66, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x067A, 0xFB5E, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x067B, 0xFB52, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x067E, 0xFB56, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x067F, 0xFB62, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0680, 0xFB5A, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0683, 0xFB76, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0684, 0xFB72, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0686, 0xFB7A, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0687, 0xFB7E, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x0688, 0xFB88, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x068C, 0xFB84, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x068D, 0xFB82, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x068E, 0xFB86, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0691, 0xFB8C, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x0698, 0xFB8A, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06A4, 0xFB6A, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06A6, 0xFB6E, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06A9, 0xFB8E, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06AD, 0xFBD3, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06AF, 0xFB92, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06B1, 0xFB9A, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06B3, 0xFB96, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06BA, 0xFB9E, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06BB, 0xFBA0, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06BE, 0xFBAA, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06C0, 0xFBA4, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06C1, 0xFBA6, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06C5, 0xFBE0, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06C6, 0xFBD9, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06C7, 0xFBD7, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06C8, 0xFBDB, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06C9, 0xFBE2, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06CB, 0xFBDE, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06CC, 0xFBFC, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06D0, 0xFBE4, GuiLib_ARAB_CHAR_ISOFININIMED},
+    {0x06D2, 0xFBAE, GuiLib_ARAB_CHAR_ISOFIN},
+    {0x06D3, 0xFBB0, GuiLib_ARAB_CHAR_ISOFIN},
+    {     0, 0xFEF5, GuiLib_ARAB_CHAR_ISOFIN},
+    {     0, 0xFEF7, GuiLib_ARAB_CHAR_ISOFIN},
+    {     0, 0xFEF9, GuiLib_ARAB_CHAR_ISOFIN},
+    {     0, 0xFEFB, GuiLib_ARAB_CHAR_ISOFIN}};
+#endif
+
+//------------------------------------------------------------------------------
+//----------------------X-----------------------
+
+GuiLib_DisplayLineRec GuiLib_DisplayRepaint[GuiConst_BYTE_LINES];
+#ifdef GuiConst_VNC_REMOTE_SUPPORT_ON
+GuiLib_DisplayLineRec GuiLib_VncRepaint[GuiConst_BYTE_LINES];
+#endif // GuiConst_VNC_REMOTE_SUPPORT_ON
+
+#ifdef GuiConst_REMOTE_DATA
+void (*GuiLib_RemoteDataReadBlock) (
+      GuiConst_INT32U SourceOffset,
+      GuiConst_INT32U SourceSize,
+      GuiConst_INT8U * TargetAddr);
+#endif // GuiConst_REMOTE_DATA
+#ifdef GuiConst_REMOTE_TEXT_DATA
+void (*GuiLib_RemoteTextReadBlock) (
+      GuiConst_INT32U SourceOffset,
+      GuiConst_INT32U SourceSize,
+      void * TargetAddr);
+#endif // GuiConst_REMOTE_TEXT_DATA
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+GuiConst_INT16S GuiLib_ActiveCursorFieldNo;
+#endif
+#ifdef GuiConst_ALLOW_UPSIDEDOWN_AT_RUNTIME
+GuiConst_INT8U GuiLib_DisplayUpsideDown;
+#endif
+
+GuiConst_INT16S GuiLib_CurStructureNdx;
+GuiConst_INT16S GuiLib_LanguageIndex;
+
+PrefixLocate GuiLib_GLOBAL gl;
+static PrefixLocate GuiLib_STATIC sgl;
+
+
+//==============================================================================
+#ifdef GuiConst_ALLOW_UPSIDEDOWN_AT_RUNTIME
+  #define GuiLib_COORD_ADJUST(X, Y)                                            \
+  {                                                                            \
+    if (GuiLib_DisplayUpsideDown)                                              \
+    {                                                                          \
+      X = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoX - X;                 \
+      Y = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoY - Y;                \
+    }                                                                          \
+    else                                                                       \
+    {                                                                          \
+      X = sgl.CoordOrigoX + X;                                                 \
+      Y = sgl.CoordOrigoY + Y;                                                 \
+    }                                                                          \
+  }
+
+  #define GuiLib_MIRROR_BITS(B)                                                \
+  {                                                                            \
+    B = (((B & 0x80) >> 7) | ((B & 0x40) >> 5) |                               \
+         ((B & 0x20) >> 3) | ((B & 0x10) >> 1) |                               \
+         ((B & 0x08) << 1) | ((B & 0x04) << 3) |                               \
+         ((B & 0x02) << 5) | ((B & 0x01) << 7));                               \
+  }
+#else
+  #ifdef GuiConst_ROTATED_OFF
+    #ifdef GuiConst_MIRRORED_HORIZONTALLY
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoX - X;             \
+          Y = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoY - Y;            \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoX - X;             \
+          Y = sgl.CoordOrigoY + Y;                                             \
+        }
+      #endif
+    #else
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoY - Y;            \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = sgl.CoordOrigoY + Y;                                             \
+        }
+      #endif
+    #endif
+  #endif
+  #ifdef GuiConst_ROTATED_90DEGREE_RIGHT
+    #ifdef GuiConst_MIRRORED_HORIZONTALLY
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoY - Y;             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = sgl.CoordOrigoY + Y;                                             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #endif
+    #else
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoX - X;            \
+          Y = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoY - Y;             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoX - X;            \
+          Y = sgl.CoordOrigoY + Y;                                             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #endif
+    #endif
+  #endif
+  #ifdef GuiConst_ROTATED_UPSIDEDOWN
+    #ifdef GuiConst_MIRRORED_HORIZONTALLY
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = sgl.CoordOrigoY + Y;                                             \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoY - Y;            \
+        }
+      #endif
+    #else
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoX - X;             \
+          Y = sgl.CoordOrigoY + Y;                                             \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoX - X;             \
+          Y = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoY - Y;            \
+        }
+      #endif
+    #endif
+  #endif
+  #ifdef GuiConst_ROTATED_90DEGREE_LEFT
+    #ifdef GuiConst_MIRRORED_HORIZONTALLY
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoX - X;            \
+          Y = sgl.CoordOrigoY + Y;                                             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = GuiConst_DISPLAY_HEIGHT_HW - 1 - sgl.CoordOrigoX - X;            \
+          Y = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoY - Y;             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #endif
+    #else
+      #ifdef GuiConst_MIRRORED_VERTICALLY
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = sgl.CoordOrigoY + Y;                                             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #else
+        #define GuiLib_COORD_ADJUST(X, Y)                                      \
+        {                                                                      \
+          X = sgl.CoordOrigoX + X;                                             \
+          Y = GuiConst_DISPLAY_WIDTH_HW - 1 - sgl.CoordOrigoY - Y;             \
+          SwapCoord(&X, &Y);                                                   \
+        }
+      #endif
+    #endif
+  #endif
+#endif
+
+#define GuiLib_FONT_MID_Y(BaseLine, TopLine) ((BaseLine - TopLine + 1) / 2)
+
+#ifdef GuiConst_COLOR_DEPTH_1
+#define GuiLib_COLOR_ADJUST(C)  C &= 0x01;
+#endif
+#ifdef GuiConst_COLOR_DEPTH_2
+#define GuiLib_COLOR_ADJUST(C)  C &= 0x03;
+#endif
+#ifdef GuiConst_COLOR_DEPTH_4
+#define GuiLib_COLOR_ADJUST(C)  C &= 0x0F;
+#endif
+#ifdef GuiConst_COLOR_DEPTH_5
+#define GuiLib_COLOR_ADJUST(C)  C = (C & 0x1F) << 3;
+#endif
+#ifndef GuiLib_COLOR_ADJUST
+#define GuiLib_COLOR_ADJUST_TRANSP(C)
+#define GuiLib_COLOR_ADJUST(C)
+#else
+#define GuiLib_COLOR_ADJUST_TRANSP(C) if (C != -1)  GuiLib_COLOR_ADJUST(C)
+#endif
+//----------------------X-----------------------
+#define GuiLib_GET_MIN(A, B) ((A) > (B) ? (B) : (A))
+#define GuiLib_GET_MAX(A, B) ((A) > (B) ? (A) : (B))
+#define GuiLib_GET_MINMAX(X, A, B) ((X) > (A) ? (GuiLib_GET_MIN(X,B)) : (A))
+#define GuiLib_LIMIT_MIN(X, A) if (X < A) X = A
+#define GuiLib_LIMIT_MAX(X, B) if (X > B) X = B
+#define GuiLib_LIMIT_MINMAX(X, A, B)                                           \
+{                                                                              \
+  if (X < A)                                                                   \
+    X = A;                                                                     \
+  else if ((B < A) && (X > A))                                                 \
+    X = A;                                                                     \
+  else if ((B >= A) && (X > B))                                                \
+    X = B;                                                                     \
+}
+
+//==============================================================================
+
+//------------------------------------------------------------------------------
+static GuiConst_INT16S CopyBytes(GuiConst_INT8U *dst, GuiConst_INT8U *src, GuiConst_INT32S size)
+{
+  GuiConst_INT32S i;
+  GuiConst_INT8U *d, *s;
+
+  if (size < 0)
+    return -1;
+
+  if (size > GuiConst_DISPLAY_BYTES)
+    return -1;
+
+  d = (GuiConst_INT8U *)dst;
+  s = (GuiConst_INT8U *)src;
+
+  for (i=0;i<size;i++)
+    *d++ = *s++;
+
+  return 0;
+}
+//------------------------------------------------------------------------------
+static void SwapCoord(
+   GuiConst_INT16S * X1,
+   GuiConst_INT16S * X2)
+{
+  GuiConst_INT16S Tmp;
+
+  Tmp = *X1;
+  *X1 = *X2;
+  *X2 = Tmp;
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT8U OrderCoord(
+   GuiConst_INT16S * X1,
+   GuiConst_INT16S * X2)
+{
+  if (*X1 > *X2)
+  {
+    SwapCoord (X1, X2);
+    return (1);
+  }
+  else
+    return (0);
+}
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+//------------------------------------------------------------------------------
+static GuiConst_INT8U CheckRect(
+   GuiConst_INT16S * X1,
+   GuiConst_INT16S * Y1,
+   GuiConst_INT16S * X2,
+   GuiConst_INT16S * Y2)
+{
+  if (sgl.ClippingTotal ||
+     (*X1 > sgl.ClippingX2) || (*X2 < sgl.ClippingX1) ||
+     (*Y1 > sgl.ClippingY2) || (*Y2 < sgl.ClippingY1))
+    return (0);
+  else
+  {
+    if (*X1 < sgl.ClippingX1)
+      *X1 = sgl.ClippingX1;
+    if (*X2 > sgl.ClippingX2)
+      *X2 = sgl.ClippingX2;
+    if (*Y1 < sgl.ClippingY1)
+      *Y1 = sgl.ClippingY1;
+    if (*Y2 > sgl.ClippingY2)
+      *Y2 = sgl.ClippingY2;
+    return (1);
+  }
+}
+#endif
+
+//==============================================================================
+
+#ifdef GuiConst_COLOR_DEPTH_1
+  #ifdef GuiConst_BYTE_HORIZONTAL
+    #include "GuiGraph1H.c"
+  #else
+    #include "GuiGraph1V.c"
+  #endif
+#endif
+#ifdef GuiConst_COLOR_DEPTH_2
+  #ifdef GuiConst_BYTE_HORIZONTAL
+    #ifdef GuiConst_COLOR_PLANES_2
+      #include "GuiGraph2H2P.c"
+    #else
+      #include "GuiGraph2H.c"
+    #endif
+  #else
+    #ifdef GuiConst_COLOR_PLANES_2
+      #include "GuiGraph2V2P.c"
+    #else
+      #include "GuiGraph2V.c"
+    #endif
+  #endif
+#endif
+#ifdef GuiConst_COLOR_DEPTH_4
+  #ifdef GuiConst_BYTE_HORIZONTAL
+    #include "GuiGraph4H.c"
+  #else
+    #include "GuiGraph4V.c"
+  #endif
+#endif
+#ifdef GuiConst_COLOR_DEPTH_5
+  #include "GuiGraph5.c"
+#endif
+#ifdef GuiConst_COLOR_DEPTH_8
+  #include "GuiGraph8.c"
+#endif
+#ifdef GuiConst_COLOR_DEPTH_12
+  #include "GuiGraph16.c"
+#endif
+#ifdef GuiConst_COLOR_DEPTH_15
+  #include "GuiGraph16.c"
+#endif
+#ifdef GuiConst_COLOR_DEPTH_16
+  #include "GuiGraph16.h"
+#endif
+#ifdef GuiConst_COLOR_DEPTH_18
+  #include "GuiGraph24.c"
+#endif
+#ifdef GuiConst_COLOR_DEPTH_24
+  #include "GuiGraph24.h"
+#endif
+#ifdef GuiConst_COLOR_DEPTH_32
+  #include "GuiGraph32.c"
+#endif
+
+#include "GuiGraph.h"
+#ifdef GuiConst_ADV_GRAPHICS_ON
+//#include "GuiGraphAdv.c"
+#endif
+
+//==============================================================================
+static void DrawStructure(GuiLib_StructPtr Structure, GuiConst_INT8U ColorInvert) PrefixReentrant;
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+static void DrawCursorItem(GuiConst_INT8U CursorVisible);
+#endif
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+static void ScrollBox_DrawScrollLine(GuiConst_INT8U ScrollBoxIndex, GuiConst_INT16S LineNdx);
+#endif
+
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+static GuiConst_INT16S IndexOfGraphicsLayer(GuiConst_INT16S GraphicsLayerIndex);
+static GuiConst_INT8U GraphicsLayer_Push(GuiConst_INT8U GraphicsLayerIndex);
+static GuiConst_INT8U GraphicsLayer_Pop(GuiConst_INT16S GraphicsLayerIndex);
+static void GraphicsLayer_Copy(
+   GuiConst_INT8U *DestAddress,
+   GuiConst_INT16U DestLineSize,
+   GuiConst_INT16S DestX,
+   GuiConst_INT16S DestY,
+   GuiConst_INT8U *SourceAddress,
+   GuiConst_INT16U SourceLineSize,
+   GuiConst_INT16S SourceX,
+   GuiConst_INT16S SourceY,
+   GuiConst_INT16U Width,
+   GuiConst_INT16U Height);
+#endif
+
+//==============================================================================
+
+//------------------------------------------------------------------------------
+static void ResetLayerBufPtr(void)
+{
+#ifdef GuiConst_DISPLAY_BUFFER_EASYGUI
+#ifdef GuiLib_COLOR_UNIT_16
+  sgl.CurLayerBufPtr = &(GuiLib_DisplayBuf.Bytes[0][0]);
+#else
+  #ifdef GuiConst_COLOR_DEPTH_2
+    #ifdef GuiConst_BYTE_HORIZONTAL
+      #ifdef GuiConst_COLOR_PLANES_2
+  sgl.CurLayerBufPtr = &(GuiLib_DisplayBuf[0][0][0]);
+      #else
+  sgl.CurLayerBufPtr = &(GuiLib_DisplayBuf[0][0]);
+      #endif
+    #else // GuiConst_BYTE_HORIZONTAL
+      #ifdef GuiConst_COLOR_PLANES_2
+  sgl.CurLayerBufPtr = &(GuiLib_DisplayBuf[0][0][0]);
+      #else
+  sgl.CurLayerBufPtr = &(GuiLib_DisplayBuf[0][0]);
+      #endif
+    #endif // GuiConst_BYTE_HORIZONTAL
+  #else // GuiConst_COLOR_DEPTH_2
+  sgl.CurLayerBufPtr = &(GuiLib_DisplayBuf[0][0]);
+  #endif // GuiConst_COLOR_DEPTH_2
+#endif // GuiLib_COLOR_UNIT_16
+#else // GuiConst_DISPLAY_BUFFER_EASYGUI
+  sgl.CurLayerBufPtr = 0;
+#endif // GuiConst_DISPLAY_BUFFER_EASYGUI
+
+  sgl.CurLayerLineSize = GuiConst_BYTES_PR_LINE;
+  sgl.CurLayerWidth = GuiConst_DISPLAY_WIDTH_HW;
+  sgl.CurLayerHeight = GuiConst_DISPLAY_HEIGHT_HW;
+  sgl.CurLayerBytes = GuiConst_DISPLAY_BYTES;
+  sgl.BaseLayerDrawing = 1;
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Init(void)
+{
+  sgl.RefreshClock = 0;
+
+  ResetLayerBufPtr();
+
+  AutoRedraw_Init();
+
+#ifdef GuiConst_DISPLAY_ACTIVE_AREA
+#ifdef GuiConst_DISPLAY_ACTIVE_AREA_COO_REL
+  sgl.DisplayOrigoX = GuiConst_DISPLAY_ACTIVE_AREA_X1;
+  sgl.DisplayOrigoY = GuiConst_DISPLAY_ACTIVE_AREA_Y1;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  sgl.DisplayActiveAreaX1 = 0;
+  sgl.DisplayActiveAreaY1 = 0;
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+#ifdef GuiConst_DISPLAY_ACTIVE_AREA_CLIPPING
+  sgl.DisplayActiveAreaX2 =
+     GuiConst_DISPLAY_ACTIVE_AREA_X2 - GuiConst_DISPLAY_ACTIVE_AREA_X1;
+  sgl.DisplayActiveAreaY2 =
+     GuiConst_DISPLAY_ACTIVE_AREA_Y2 - GuiConst_DISPLAY_ACTIVE_AREA_Y1;
+#else // GuiConst_DISPLAY_ACTIVE_AREA_CLIPPING
+  sgl.DisplayActiveAreaX2 =
+     GuiConst_DISPLAY_WIDTH - GuiConst_DISPLAY_ACTIVE_AREA_X1 - 1;
+  sgl.DisplayActiveAreaY2 =
+     GuiConst_DISPLAY_HEIGHT - GuiConst_DISPLAY_ACTIVE_AREA_Y1 - 1;
+#endif // GuiConst_DISPLAY_ACTIVE_AREA_CLIPPING
+#else // GuiConst_DISPLAY_ACTIVE_AREA_COO_REL
+  sgl.DisplayOrigoX = 0;
+  sgl.DisplayOrigoY = 0;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+#ifdef GuiConst_DISPLAY_ACTIVE_AREA_CLIPPING
+  sgl.DisplayActiveAreaX1 = GuiConst_DISPLAY_ACTIVE_AREA_X1;
+  sgl.DisplayActiveAreaY1 = GuiConst_DISPLAY_ACTIVE_AREA_Y1;
+  sgl.DisplayActiveAreaX2 = GuiConst_DISPLAY_ACTIVE_AREA_X2;
+  sgl.DisplayActiveAreaY2 = GuiConst_DISPLAY_ACTIVE_AREA_Y2;
+#else // GuiConst_DISPLAY_ACTIVE_AREA_CLIPPING
+  sgl.DisplayActiveAreaX1 = 0;
+  sgl.DisplayActiveAreaY1 = 0;
+  sgl.DisplayActiveAreaX2 = GuiConst_DISPLAY_WIDTH - 1;
+  sgl.DisplayActiveAreaY2 = GuiConst_DISPLAY_HEIGHT - 1;
+#endif // GuiConst_DISPLAY_ACTIVE_AREA_CLIPPING
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+#endif // GuiConst_DISPLAY_ACTIVE_AREA_COO_REL
+#else // GuiConst_DISPLAY_ACTIVE_AREA
+  sgl.DisplayOrigoX = 0;
+  sgl.DisplayOrigoY = 0;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  sgl.DisplayActiveAreaX1 = 0;
+  sgl.DisplayActiveAreaY1 = 0;
+  sgl.DisplayActiveAreaX2 = GuiConst_DISPLAY_WIDTH - 1;
+  sgl.DisplayActiveAreaY2 = GuiConst_DISPLAY_HEIGHT - 1;
+#endif // GuiConst_CLIPPING_SUPPORT_ON
+#endif // GuiConst_DISPLAY_ACTIVE_AREA
+
+#ifdef GuiConst_ADV_GRAPHICS_ON
+//  GuiLib_AG_Init();
+#endif
+
+  GuiDisplay_Init();
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiLib_ResetClipping();
+#endif
+  GuiLib_ResetDisplayRepaint();
+  GuiLib_Clear();
+
+  sgl.DisplayWriting = 1;
+  sgl.InitialDrawing = 0;
+  sgl.TopLevelStructure = 0;
+  sgl.SwapColors = 0;
+  GuiLib_SetLanguage(0);
+#ifdef GuiConst_BLINK_SUPPORT_ON
+  sgl.BlinkBoxRate = 0;
+#endif
+  sgl.InvertBoxOn = 0;
+  sgl.DrawingLevel = 0;
+  GuiLib_CurStructureNdx = -1;
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+  GuiLib_TouchAdjustReset();
+#endif
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+  sgl.ButtonColorOverride = GuiLib_FALSE;
+  sgl.DisabledButtonColor = 0;
+#endif
+#ifdef GuiConst_REMOTE_DATA
+  GuiLib_RemoteDataReadBlock = 0;
+  #ifdef GuiConst_REMOTE_TEXT_DATA
+  GuiLib_RemoteTextReadBlock = 0;
+  sgl.CurRemoteText = -1;
+  sgl.RemoteTextTableOfs = -1;
+  #endif
+  #ifdef GuiConst_REMOTE_FONT_DATA
+  sgl.CurRemoteFont = -1;
+  #endif
+  #ifdef GuiConst_REMOTE_BITMAP_DATA
+  sgl.CurRemoteBitmap = -1;
+  #endif
+#endif
+
+#ifdef GuiConst_VNC_REMOTE_SUPPORT_ON
+  GuiVnc_Init();
+#endif
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Clear(void)
+{
+  GuiConst_INT16S I;
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  GuiConst_INT16S N;
+#endif
+
+  GuiLib_ClearDisplay();
+
+  GuiLib_CurStructureNdx = -1;
+
+  AutoRedraw_Destroy();
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  sgl.CursorInUse = 0;
+  GuiLib_ActiveCursorFieldNo = -1;
+#endif
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  for (I = 0; I < GuiConst_BLINK_FIELDS_MAX; I++)
+  {
+    sgl.BlinkTextItems[I].InUse = 0;
+    sgl.BlinkTextItems[I].Active = 0;
+  }
+#endif
+#endif
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+  sgl.TouchAreaCnt = 0;
+#endif
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  for (I = 0; I < GuiConst_TEXTBOX_FIELDS_MAX; I++)
+    sgl.TextBoxScrollPositions[I].index = -1;
+#endif
+
+  sgl.LayerOrigoX = 0;
+  sgl.LayerOrigoY = 0;
+
+  sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+  sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+  sgl.NextScrollLineReading = 0;
+  sgl.GlobalScrollBoxIndex = 0;
+  for (I = 0; I < GuiConst_SCROLLITEM_BOXES_MAX; I++)
+  {
+    sgl.ScrollBoxesAry[I].X1 = 0;
+    sgl.ScrollBoxesAry[I].Y1 = 0;
+    sgl.ScrollBoxesAry[I].InUse = GuiLib_SCROLL_STRUCTURE_UNDEF;
+    sgl.ScrollBoxesAry[I].ScrollTopLine = 0;
+    sgl.ScrollBoxesAry[I].LastScrollTopLine = 0;
+    sgl.ScrollBoxesAry[I].LastMarkerLine = 0;
+    sgl.ScrollBoxesAry[I].ScrollActiveLine = 0;
+    sgl.ScrollBoxesAry[I].NumberOfLines = 0;
+  }
+#endif
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+  sgl.GlobalGraphIndex = 0;
+  for (I = 0; I < GuiConst_GRAPH_MAX; I++)
+  {
+    sgl.GraphAry[I].InUse = GuiLib_GRAPH_STRUCTURE_UNDEF;
+    sgl.GraphAry[I].GraphAxesCnt[GuiLib_GRAPHAXIS_X] = 0;
+    sgl.GraphAry[I].GraphAxesCnt[GuiLib_GRAPHAXIS_Y] = 0;
+    sgl.GraphAry[I].GraphDataSetCnt = 0;
+  }
+#endif
+
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  GraphicsLayer_Pop(GuiLib_GRAPHICS_LAYER_BASE);
+  for (I = 0; I < GuiConst_GRAPHICS_LAYER_MAX; I++)
+    sgl.GraphicsLayerLifo[I] = -1;
+  sgl.GraphicsLayerLifoCnt = 0;
+  sgl.GlobalGraphicsLayerIndex = 0;
+  for (I = 0; I < GuiConst_GRAPHICS_LAYER_MAX; I++)
+  {
+    sgl.GraphicsLayerList[I].InUse = GuiLib_GRAPHICS_LAYER_UNDEF;
+    sgl.GraphicsLayerList[I].SizeMode = 0;
+    sgl.GraphicsLayerList[I].InitMode = 0;
+  }
+  sgl.GlobalGraphicsFilterIndex = 0;
+  for (I = 0; I < GuiConst_GRAPHICS_FILTER_MAX; I++)
+  {
+    sgl.GraphicsFilterList[I].InUse = GuiLib_GRAPHICS_FILTER_UNDEF;
+    sgl.GraphicsFilterList[I].GraphicsFilterFunc = 0;
+    sgl.GraphicsFilterList[I].SourceLayerIndexNo = GuiLib_GRAPHICS_LAYER_BASE;
+    sgl.GraphicsFilterList[I].DestLayerIndexNo = GuiLib_GRAPHICS_LAYER_BASE;
+    sgl.GraphicsFilterList[I].ContAtLayerIndexNo = GuiLib_GRAPHICS_LAYER_BASE;
+    for (N = 0; N <= 9; N++)
+    {
+      sgl.GraphicsFilterList[I].ParVarType[N] = 0;
+      sgl.GraphicsFilterList[I].ParVarPtr[N] = 0;
+      sgl.GraphicsFilterList[I].ParValueNum[N] = 0;
+    }
+  }
+#endif
+
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  sgl.GlobalBackgrBitmapIndex = 0;
+  for (I = 0; I < GuiConst_MAX_BACKGROUND_BITMAPS; I++)
+  {
+    sgl.BackgrBitmapAry[I].InUse = 0;
+    sgl.BackgrBitmapAry[I].Index = 0;
+    sgl.BackgrBitmapAry[I].X = 0;
+    sgl.BackgrBitmapAry[I].Y = 0;
+  }
+#endif
+
+  GuiLib_ClearPositionCallbacks();
+}
+
+// Groupstart CHARS
+
+#ifdef GuiConst_CHARMODE_UNICODE
+//------------------------------------------------------------------------------
+GuiConst_INT16U GuiLib_UnicodeStrLen(
+   GuiConst_TEXT PrefixLocate *S)
+{
+  GuiConst_INT16U StrLen;
+
+  StrLen = 0;
+  while (*S != 0)
+  {
+    StrLen++;
+    S++;
+  }
+  return (StrLen);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_StrAnsiToUnicode(
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_CHAR PrefixLocate *S1)
+{
+  do
+  {
+    *S2 = (GuiConst_TEXT)(*S1);
+    *S2 &= 0x00ff;
+    if (*S1 == 0)
+      return;
+    S1++;
+    S2++;
+  }
+  while (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT16S GuiLib_UnicodeStrCmp(
+   GuiConst_TEXT PrefixLocate *S1,
+   GuiConst_TEXT PrefixLocate *S2)
+{
+  do
+  {
+    if ((*S1 == 0) && (*S2 == 0))
+      return (0);
+
+    else if (*S1 == 0)
+      return (-1);
+    else if (*S2 == 0)
+      return (1);
+    else if (*S1 < *S2)
+      return (-1);
+    else if (*S1 > *S2)
+      return (1);
+    S1++;
+    S2++;
+  }
+  while (1);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT16S GuiLib_UnicodeStrNCmp(
+   GuiConst_TEXT PrefixLocate *S1,
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_INT16U StrLen)
+{
+  while (StrLen > 0)
+  {
+    if ((*S1 == 0) && (*S2 == 0))
+      return (0);
+    else if (*S1 == 0)
+      return (-1);
+    else if (*S2 == 0)
+      return (1);
+    else if (*S1 < *S2)
+      return (-1);
+    else if (*S1 > *S2)
+      return (1);
+    S1++;
+    S2++;
+    StrLen--;
+  }
+  return (0);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_UnicodeStrCpy(
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_TEXT PrefixLocate *S1)
+{
+  do
+  {
+    *S2 = *S1;
+    if (*S1 == 0)
+      return;
+    S1++;
+    S2++;
+  }
+  while (1);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_UnicodeStrNCpy(
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_TEXT PrefixLocate *S1,
+   GuiConst_INT16U StrLen)
+{
+  while (StrLen > 0)
+  {
+    *S2 = *S1;
+    if (*S1 != 0)
+      S1++;
+    S2++;
+    StrLen--;
+  }
+}
+#endif // GuiConst_CHARMODE_UNICODE
+
+//------------------------------------------------------------------------------
+static void ConvertIntToStr(
+   GuiConst_INT32U num,
+   GuiConst_CHAR PrefixLocate *string,
+   GuiConst_INT32U base)
+{
+  #define BUFFER_SIZE 11
+
+  GuiConst_INT8U digits[16] =
+     { 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70 };
+  GuiConst_CHAR buffer[BUFFER_SIZE];
+  GuiConst_INT8U bufferLen;
+  GuiConst_INT8U i;
+
+  bufferLen = 0;
+  do
+  {
+    i = num % base;
+    buffer[bufferLen++] = digits[i];
+    num /= base;
+  }
+  while ((num != 0) && (bufferLen < BUFFER_SIZE));
+
+  if (bufferLen <= GuiConst_MAX_VARNUM_TEXT_LEN)
+    while (bufferLen-- > 0)
+      *string++ = buffer[bufferLen];
+
+  *string = '\0';
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT16S CharDist(
+   GuiConst_INT16U ChPos1,
+   GuiConst_INT16U ChPos2,
+   GuiConst_INT8U Ps)
+{
+  GuiConst_INT16S Result, D;
+#ifndef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U PrefixRom *Ps1;
+  GuiConst_INT8U PrefixRom *Ps2;
+#endif
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U CharHeader1[GuiLib_CHR_LINECTRL_OFS];
+  GuiConst_INT8U CharHeader2[GuiLib_CHR_LINECTRL_OFS];
+#endif
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+  if (Ps == GuiLib_PS_OFF)
+    return (sgl.CurFont->XSize);
+  else if ((Ps == GuiLib_PS_ON) || (Ps == GuiLib_PS_NUM))
+  {
+    GuiLib_RemoteDataReadBlock(
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[ChPos1]],
+       GuiLib_CHR_LINECTRL_OFS, CharHeader1);
+    GuiLib_RemoteDataReadBlock(
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[ChPos2]],
+       GuiLib_CHR_LINECTRL_OFS, CharHeader2);
+    if ((Ps == GuiLib_PS_ON) || (sgl.TextPsMode[ChPos1] && sgl.TextPsMode[ChPos2]))
+    {
+      Result = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_TOP_OFS] -
+          CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_TOP_OFS];
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_MID_OFS] -
+          CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_MID_OFS];
+      if (D > Result)
+        Result = D;
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_MIDBASE_OFS] -
+          CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_MIDBASE_OFS];
+      if (D > Result)
+        Result = D;
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_BASE_OFS] -
+          CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_BASE_OFS];
+      if (D > Result)
+        Result = D;
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_BOTTOM_OFS] -
+          CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_BOTTOM_OFS];
+      if (D > Result)
+        Result = D;
+      return (Result + sgl.CurFont->PsSpace + 1);
+    }
+    else if (sgl.TextPsMode[ChPos1])
+    {
+      Result = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_TOP_OFS];
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_MID_OFS];
+      if (D > Result)
+        Result = D;
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_MIDBASE_OFS];
+      if (D > Result)
+        Result = D;
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_BASE_OFS];
+      if (D > Result)
+        Result = D;
+      D = CharHeader1[GuiLib_CHR_PSRIGHT_OFS + GuiLib_CHR_PS_BOTTOM_OFS];
+      if (D > Result)
+        Result = D;
+      return (Result + sgl.CurFont->PsSpace + 1);
+    }
+    else if (sgl.TextPsMode[ChPos2])
+    {
+      Result = CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_TOP_OFS];
+      D = CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_MID_OFS];
+      if (D < Result)
+        Result = D;
+      D = CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_MIDBASE_OFS];
+      if (D < Result)
+        Result = D;
+      D = CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_BASE_OFS];
+      if (D < Result)
+        Result = D;
+      D = CharHeader2[GuiLib_CHR_PSLEFT_OFS + GuiLib_CHR_PS_BOTTOM_OFS];
+      if (D < Result)
+        Result = D;
+      return (sgl.CurFont->PsNumWidth - Result + sgl.CurFont->PsSpace);
+    }
+    else
+      return (sgl.CurFont->PsNumWidth + sgl.CurFont->PsSpace);
+  }
+  else
+    return (0);
+#else
+  if (Ps == GuiLib_PS_OFF)
+    return (ReadByte(sgl.CurFont->XSize));
+  else if ((Ps == GuiLib_PS_ON) || (Ps == GuiLib_PS_NUM))
+  {
+    if ((Ps == GuiLib_PS_ON) || (sgl.TextPsMode[ChPos1] && sgl.TextPsMode[ChPos2]))
+    {
+      Ps1 = sgl.TextCharPtrAry[ChPos1] + GuiLib_CHR_PSRIGHT_OFS;
+      Ps2 = sgl.TextCharPtrAry[ChPos2] + GuiLib_CHR_PSLEFT_OFS;
+      Result = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_TOP_OFS)) -
+         (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_TOP_OFS));
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_MID_OFS)) -
+          (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_MID_OFS));
+      if (D > Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_MIDBASE_OFS)) -
+          (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_MIDBASE_OFS));
+      if (D > Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_BASE_OFS)) -
+          (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_BASE_OFS));
+      if (D > Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_BOTTOM_OFS)) -
+          (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_BOTTOM_OFS));
+      if (D > Result)
+        Result = D;
+      return (Result + ReadByte(sgl.CurFont->PsSpace) + 1);
+    }
+    else if (sgl.TextPsMode[ChPos1])
+    {
+      Ps1 = sgl.TextCharPtrAry[ChPos1] + GuiLib_CHR_PSRIGHT_OFS;
+      Result = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_TOP_OFS));
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_MID_OFS));
+      if (D > Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_MIDBASE_OFS));
+      if (D > Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_BASE_OFS));
+      if (D > Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps1 + GuiLib_CHR_PS_BOTTOM_OFS));
+      if (D > Result)
+        Result = D;
+      return (Result + ReadByte(sgl.CurFont->PsSpace) + 1);
+    }
+    else if (sgl.TextPsMode[ChPos2])
+    {
+      Ps2 = sgl.TextCharPtrAry[ChPos2] + GuiLib_CHR_PSLEFT_OFS;
+      Result = (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_TOP_OFS));
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_MID_OFS));
+      if (D < Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_MIDBASE_OFS));
+      if (D < Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_BASE_OFS));
+      if (D < Result)
+        Result = D;
+      D = (GuiConst_INT16S)(ReadBytePtr(Ps2 + GuiLib_CHR_PS_BOTTOM_OFS));
+      if (D < Result)
+        Result = D;
+      return (ReadByte(sgl.CurFont->PsNumWidth) - Result +
+              ReadByte(sgl.CurFont->PsSpace));
+    }
+    else
+      return (ReadByte(sgl.CurFont->PsNumWidth) +
+         ReadByte(sgl.CurFont->PsSpace));
+  }
+  else
+    return (0);
+#endif
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT16S TextPixelLength(
+   GuiConst_INT8U Ps,
+   GuiConst_INT16U CharCnt,
+   GuiConst_INT16S *TextXOfs)
+{
+  GuiConst_INT16U P;
+  GuiConst_INT16S L;
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U CharHeader1[GuiLib_CHR_LINECTRL_OFS + 1];
+  GuiConst_INT8U CharHeader2[GuiLib_CHR_LINECTRL_OFS + 1];
+#endif
+
+  if (CharCnt == 0)
+    return (0);
+  else
+  {
+#ifdef GuiConst_REMOTE_FONT_DATA
+    GuiLib_RemoteDataReadBlock(
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[0]],
+       GuiLib_CHR_LINECTRL_OFS + 1, CharHeader1);
+    GuiLib_RemoteDataReadBlock(
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[CharCnt - 1]],
+       GuiLib_CHR_LINECTRL_OFS + 1, CharHeader2);
+#endif
+
+    if (sgl.TextPsMode[0])
+    {
+#ifdef GuiConst_REMOTE_FONT_DATA
+      if (CharHeader1[GuiLib_CHR_LINECTRL_OFS] & 0x01)
+        L = -(GuiConst_INT16S)CharHeader1[GuiLib_CHR_PSLEFT_OFS];
+      else
+        L = -(GuiConst_INT16S)CharHeader1[GuiLib_CHR_XLEFT_OFS];
+#else
+      if (ReadBytePtr(sgl.TextCharPtrAry[0] + GuiLib_CHR_LINECTRL_OFS) & 0x01)
+        L = -(GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[0] +
+           GuiLib_CHR_PSLEFT_OFS));
+      else
+        L = -(GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[0] +
+         GuiLib_CHR_XLEFT_OFS));
+#endif
+    }
+    else
+      L = 0;
+
+    if (TextXOfs != NULL)
+      TextXOfs[0] = L;
+
+    for (P = 0; P < CharCnt - 1; P++)
+    {
+      L += CharDist (P, P + 1, Ps);
+      if (TextXOfs != NULL)
+        TextXOfs[P + 1] = L;
+    }
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+    if (sgl.TextPsMode[CharCnt - 1])
+    {
+      if (CharHeader2[GuiLib_CHR_LINECTRL_OFS] & 0x01)
+        L += (GuiConst_INT16S)CharHeader2[GuiLib_CHR_PSRIGHT_OFS] + 1;
+      else
+        L += (GuiConst_INT16S)CharHeader2[GuiLib_CHR_XLEFT_OFS] +
+             (GuiConst_INT16S)CharHeader2[GuiLib_CHR_XWIDTH_OFS];
+    }
+    else if (Ps == GuiLib_PS_NUM)
+    {
+      if (CharHeader2[GuiLib_CHR_LINECTRL_OFS] & 0x01)
+        L += (GuiConst_INT16S)CharHeader2[GuiLib_CHR_PSRIGHT_OFS] + 1;
+      else
+        L += sgl.CurFont->PsNumWidth + sgl.CurFont->PsSpace;
+    }
+    else
+      L += sgl.CurFont->XSize;
+#else
+    if (sgl.TextPsMode[CharCnt - 1])
+    {
+      if (ReadBytePtr(sgl.TextCharPtrAry[CharCnt - 1] + GuiLib_CHR_LINECTRL_OFS) & 0x01)
+        L += (GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[CharCnt - 1] +
+              GuiLib_CHR_PSRIGHT_OFS)) + 1;
+      else
+        L += ReadBytePtr(sgl.TextCharPtrAry[CharCnt - 1] + GuiLib_CHR_XLEFT_OFS) +
+          ReadBytePtr(sgl.TextCharPtrAry[CharCnt - 1] + GuiLib_CHR_XWIDTH_OFS);
+    }
+    else if (Ps == GuiLib_PS_NUM)
+    {
+      if (ReadBytePtr(sgl.TextCharPtrAry[CharCnt - 1] +
+          GuiLib_CHR_LINECTRL_OFS) & 0x01)
+        L += (GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[CharCnt - 1] +
+              GuiLib_CHR_PSRIGHT_OFS)) + 1;
+      else
+        L += ReadByte(sgl.CurFont->PsNumWidth) +
+           ReadByte(sgl.CurFont->PsSpace);
+    }
+    else
+      L += ReadByte(sgl.CurFont->XSize);
+#endif
+    if (TextXOfs != NULL)
+      TextXOfs[CharCnt] = L;
+    return (L);
+  }
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT16U CalcCharsWidth(
+   GuiConst_INT16U CharPos1,
+   GuiConst_INT16U CharPos2,
+   GuiConst_INT16S *TextXOfs,
+   GuiConst_INT16S *pXStart,
+   GuiConst_INT16S *pXEnd)
+{
+  GuiConst_INT16S X1;
+  GuiConst_INT16S X2;
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U CharHeader1[GuiLib_CHR_LINECTRL_OFS+1];
+  GuiConst_INT8U CharHeader2[GuiLib_CHR_LINECTRL_OFS+1];
+
+  GuiLib_RemoteDataReadBlock(
+     (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[CharPos1]],
+      GuiLib_CHR_LINECTRL_OFS+1, CharHeader1);
+  GuiLib_RemoteDataReadBlock(
+     (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[CharPos2]],
+      GuiLib_CHR_LINECTRL_OFS+1, CharHeader2);
+
+  if (sgl.TextPsMode[CharPos1])
+  {
+    if (CharHeader1[GuiLib_CHR_LINECTRL_OFS] & 0x01)
+      X1 = TextXOfs[CharPos1] +
+           (GuiConst_INT16S)CharHeader1[GuiLib_CHR_PSLEFT_OFS];
+    else
+      X1 = TextXOfs[CharPos1] +
+           (GuiConst_INT16S)CharHeader1[GuiLib_CHR_XLEFT_OFS];
+  }
+  else
+    X1 = TextXOfs[CharPos1];
+  if (sgl.TextPsMode[CharPos2])
+  {
+    if (CharHeader2[GuiLib_CHR_LINECTRL_OFS] & 0x01)
+      X2 = TextXOfs[CharPos2] +
+           (GuiConst_INT16S)CharHeader2[GuiLib_CHR_PSRIGHT_OFS];
+    else
+      X2 = TextXOfs[CharPos2] +
+           (GuiConst_INT16S)CharHeader1[GuiLib_CHR_XLEFT_OFS] +
+           (GuiConst_INT16S)CharHeader2[GuiLib_CHR_XWIDTH_OFS] - 1;
+  }
+  else
+    X2 = TextXOfs[CharPos2] + sgl.CurFont->XSize - 1;
+#else
+  if (sgl.TextPsMode[CharPos1])
+  {
+    if (ReadBytePtr(sgl.TextCharPtrAry[CharPos1] +
+        GuiLib_CHR_LINECTRL_OFS) & 0x01)
+      X1 = TextXOfs[CharPos1] +
+           (GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[CharPos1] +
+            GuiLib_CHR_PSLEFT_OFS));
+    else
+      X1 = TextXOfs[CharPos1] +
+           (GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[CharPos1] +
+            GuiLib_CHR_XLEFT_OFS));
+  }
+  else
+    X1 = TextXOfs[CharPos1];
+  if (sgl.TextPsMode[CharPos2])
+  {
+    if (ReadBytePtr(sgl.TextCharPtrAry[CharPos2] +
+        GuiLib_CHR_LINECTRL_OFS) & 0x01)
+      X2 = TextXOfs[CharPos2] +
+           (GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[CharPos2] +
+            GuiLib_CHR_PSRIGHT_OFS));
+    else
+      X2 = TextXOfs[CharPos2] +
+           (GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[CharPos2] +
+            GuiLib_CHR_XLEFT_OFS)) +
+           (GuiConst_INT16S)(ReadBytePtr(sgl.TextCharPtrAry[CharPos2] +
+            GuiLib_CHR_XWIDTH_OFS)) - 1;
+  }
+  else
+    X2 = TextXOfs[CharPos2] + sgl.CurFont->XSize - 1;
+#endif
+
+  *pXStart = X1;
+  *pXEnd = X2;
+  return(X2 - X1 + 1);
+}
+
+#ifdef GuiConst_CHARMODE_UNICODE
+//------------------------------------------------------------------------------
+static GuiConst_INT32U GetCharNdx(
+   GuiLib_FontRecPtr Font,
+   GuiConst_INT16U CharCode)
+{
+  GuiConst_INT32U CharNdx,CharNdx1,CharNdx2;
+  GuiConst_INT32U ReturnValue;
+
+  CharNdx1 = ReadWord(Font->FirstCharNdx) + 1;
+  CharNdx2 = CharNdx1 + ReadWord(Font->CharCount) - 1;
+
+  ReturnValue = 0;
+
+  do
+  {
+    CharNdx = CharNdx1 + ((CharNdx2 - CharNdx1) >> 1);
+
+    if (ReadWord(GuiFont_ChUnicodeList[CharNdx]) == CharCode)
+    {
+      ReturnValue = CharNdx;
+      break;
+    }
+
+    if (CharNdx1 == CharNdx2)
+    {
+      ReturnValue = ReadWord(Font->FirstCharNdx);
+      break;
+    }
+
+    if (ReadWord(GuiFont_ChUnicodeList[CharNdx]) > CharCode)
+      CharNdx2 = CharNdx - 1;
+    else
+      CharNdx1 = CharNdx + 1;
+
+    if (CharNdx1 > CharNdx2)
+    {
+      ReturnValue = ReadWord(Font->FirstCharNdx);
+      break;
+    }
+  }
+  while (1);
+
+  return ReturnValue;
+}
+#endif
+
+//------------------------------------------------------------------------------
+static void PrepareText(
+   GuiConst_TEXT PrefixGeneric *CharPtr,
+   GuiConst_INT16U CharCnt,
+   GuiConst_INT8U TextNdx)
+{
+  GuiConst_INT16S P;
+#ifdef GuiConst_CHARMODE_ANSI
+  GuiConst_INT8U CharCode;
+#else
+  GuiConst_INT16U CharCode;
+  GuiConst_INT16U CharNdx;
+#endif
+
+  if (CharCnt > GuiConst_MAX_TEXT_LEN)
+    CharCnt = GuiConst_MAX_TEXT_LEN;
+
+  for (P = 0; P < CharCnt; P++)
+  {
+#ifdef GuiConst_CHARMODE_ANSI
+
+#ifdef GuiConst_AVRGCC_COMPILER
+    if (displayVarNow)
+      CharCode = (unsigned GuiConst_CHAR) *CharPtr;
+    else
+      CharCode = (unsigned GuiConst_CHAR) ReadBytePtr(CharPtr);
+#else
+#ifdef GuiConst_ICC_COMPILER
+    if (displayVarNow)
+      CharCode = (unsigned GuiConst_CHAR) *CharPtr;
+    else
+      CharCode = *((GuiConst_INT8U PrefixRom *)CharPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+    if (displayVarNow)
+      CharCode = (unsigned GuiConst_CHAR) *CharPtr;
+    else
+      CharCode = *((GuiConst_INT8U PrefixRom *)CharPtr);
+#else
+#ifdef GuiConst_RENESAS_COMPILER_FAR
+    if (displayVarNow)
+      CharCode = (unsigned GuiConst_CHAR) *CharPtr;
+    else
+      CharCode = *((GuiConst_INT8U PrefixRom *)CharPtr);
+#else
+      CharCode = (unsigned GuiConst_TEXT) *CharPtr;
+#endif // GuiConst_RENESAS_COMPILER_FAR
+#endif // GuiConst_CODEVISION_COMPILER
+#endif // GuiConst_ICC_COMPILER
+#endif // GuiConst_AVRGCC_COMPILER
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+    if ((CharCode < sgl.CurFont->FirstChar) ||
+        (CharCode > sgl.CurFont->LastChar))
+      sgl.TextCharNdx[P] = sgl.CurFont->IllegalCharNdx;
+    else
+    {
+      sgl.TextCharNdx[P] =
+         sgl.CurFont->FirstCharNdx + (GuiConst_INT16U)CharCode -
+         (GuiConst_INT16U)sgl.CurFont->FirstChar;
+
+      if ((GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[P] + 1] -
+          (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[sgl.TextCharNdx[P]] == 0)
+        sgl.TextCharNdx[P] = sgl.CurFont->IllegalCharNdx;
+    }
+#else // GuiConst_REMOTE_FONT_DATA
+    if ((CharCode < ReadByte(sgl.CurFont->FirstChar)) ||
+        (CharCode > ReadByte(sgl.CurFont->LastChar)))
+      sgl.TextCharPtrAry[P] = (GuiConst_INT8U*)ReadWord(
+         GuiFont_ChPtrList[ReadWord(sgl.CurFont->IllegalCharNdx)]);
+    else
+      sgl.TextCharPtrAry[P] = (GuiConst_INT8U*)ReadWord(
+         GuiFont_ChPtrList[ReadWord(sgl.CurFont->FirstCharNdx) +
+         (GuiConst_INT16U)CharCode -
+         (GuiConst_INT16U)ReadByte(sgl.CurFont->FirstChar)]);
+#endif // GuiConst_REMOTE_FONT_DATA
+
+    if (sgl.CurItem.TextPar[TextNdx].Ps == GuiLib_PS_ON)
+      sgl.TextPsMode[P] = 1;
+    else if (sgl.CurItem.TextPar[TextNdx].Ps == GuiLib_PS_NUM)
+    {
+      if (((CharCode >= '0') && (CharCode <= '9')) ||
+         (CharCode == ' ') || (CharCode == '+') || (CharCode == '-') ||
+         (CharCode == '*') || (CharCode == '/') || (CharCode == '='))
+        sgl.TextPsMode[P] = 0;
+      else
+        sgl.TextPsMode[P] = 1;
+    }
+    else
+      sgl.TextPsMode[P] = 0;
+
+#else // GuiConst_CHARMODE_ANSI
+    CharCode = *((PrefixLocate GuiConst_INT16U*)CharPtr);
+    CharNdx = GetCharNdx(sgl.CurFont, CharCode);
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+    sgl.TextCharNdx[P] = CharNdx;
+#else
+    sgl.TextCharPtrAry[P] =
+       (GuiConst_INT8U PrefixRom *)ReadWord(GuiFont_ChPtrList[CharNdx]);
+#endif
+
+    if (sgl.CurItem.TextPar[TextNdx].Ps == GuiLib_PS_ON)
+      sgl.TextPsMode[P] = 1;
+    else if ((sgl.CurItem.TextPar[TextNdx].Ps == GuiLib_PS_NUM) && (CharNdx > 0))
+    {
+      if (((CharCode >= '0') && (CharCode <= '9')) ||
+         (CharCode == ' ') || (CharCode == '+') || (CharCode == '-') ||
+         (CharCode == '*') || (CharCode == '/') || (CharCode == '='))
+        sgl.TextPsMode[P] = 0;
+      else
+        sgl.TextPsMode[P] = 1;
+    }
+    else
+      sgl.TextPsMode[P] = 0;
+#endif // GuiConst_CHARMODE_ANSI
+    CharPtr++;
+  }
+}
+
+#ifdef GuiConst_ARAB_CHARS_INUSE
+//------------------------------------------------------------------------------
+static GuiConst_INT16U ArabicCorrection(
+   GuiConst_TEXT PrefixGeneric *CharPtr,
+   GuiConst_INT16U CharCnt,
+   GuiConst_INT8U RightToLeftWriting)
+{
+  GuiConst_INT16S I, J, P;
+  GuiConst_INT16U CharCode;
+  GuiConst_INT16U CharCode2;
+  GuiConst_TEXT PrefixLocate *CharPtr2;
+  GuiConst_TEXT PrefixLocate *CharPtrA;
+  GuiConst_TEXT PrefixLocate *CharPtrB;
+
+  if (!RightToLeftWriting)
+    return CharCnt;
+
+  CharPtr2 = CharPtr;
+
+  for (P = 0; P < CharCnt; P++)
+  {
+    CharCode = *((GuiConst_INT16U*)CharPtr);
+    switch (CharCode)
+    {
+      case 40:
+        *((GuiConst_INT16U*)CharPtr) = 41;
+        break;
+      case 41:
+        *((GuiConst_INT16U*)CharPtr) = 40;
+        break;
+
+      case 91:
+        *((GuiConst_INT16U*)CharPtr) = 93;
+        break;
+      case 93:
+        *((GuiConst_INT16U*)CharPtr) = 91;
+        break;
+
+      case 123:
+        *((GuiConst_INT16U*)CharPtr) = 125;
+        break;
+      case 125:
+        *((GuiConst_INT16U*)CharPtr) = 123;
+        break;
+    }
+
+    CharPtr++;
+  }
+
+  P = 0;
+  CharPtr = CharPtr2;
+  do
+  {
+    CharCode = *((GuiConst_INT16U*)CharPtr);
+    CharPtrA = CharPtr;
+    CharPtr++;
+    CharCode2 = *((GuiConst_INT16U*)CharPtr);
+
+    for (I = 0; I < GuiLib_ARAB_LIGATURES_CNT; I++)
+      if ((CharCode == GuiLib_ARAB_LIGATURES[I][0]) &&
+          (CharCode2 == GuiLib_ARAB_LIGATURES[I][1]))
+      {
+        *((GuiConst_INT16U*)CharPtrA) = GuiLib_ARAB_LIGATURES[I][2];
+        CharPtrA = CharPtr;
+        CharPtrB = CharPtrA;
+        CharPtrB++;
+        CharCnt--;
+        for (J = P + 1; J < CharCnt; J++)
+        {
+          *((GuiConst_INT16U*)CharPtrA) = *((GuiConst_INT16U*)CharPtrB);
+          CharPtrA++;
+          CharPtrB++;
+        }
+        *((GuiConst_INT16U*)CharPtrA) = 0;
+        break;
+      }
+
+    P++;
+  }
+  while (P < CharCnt - 1);
+
+  CharPtr = CharPtr2;
+  for (P = 0; P < CharCnt; P++)
+  {
+    CharCode = *((GuiConst_INT16U*)CharPtr);
+
+    for (I = 0; I < GuiLib_ARAB_CHAR_CONVERT_CNT; I++)
+      if ((CharCode == GuiLib_ARAB_CHAR_CONVERT[I][0]) && (CharCode > 0))
+      {
+        *((GuiConst_INT16U*)CharPtr) = GuiLib_ARAB_CHAR_CONVERT[I][1];
+        break;
+      }
+
+    CharPtr++;
+  }
+
+  gl.ArabicCharJoiningModeIndex[0] = -1;
+  CharPtr = CharPtr2;
+  for (P = 0; P < CharCnt; P++)
+  {
+    CharCode = *((GuiConst_INT16U*)CharPtr);
+
+    gl.ArabicCharJoiningModeIndex[P + 1] = -1;
+    for (I = 0; I < GuiLib_ARAB_CHAR_CONVERT_CNT; I++)
+      if ((CharCode >= GuiLib_ARAB_CHAR_CONVERT[I][1]) &&
+          (CharCode <= GuiLib_ARAB_CHAR_CONVERT[I][1] +
+          (GuiLib_ARAB_CHAR_CONVERT[I][2] & 7) - 1))
+      {
+        gl.ArabicCharJoiningModeIndex[P + 1] = I;
+        break;
+      }
+
+    CharPtr++;
+  }
+  gl.ArabicCharJoiningModeIndex[CharCnt + 1] = -1;
+
+  for (P = 0; P < CharCnt + 2; P++)
+  {
+    if (gl.ArabicCharJoiningModeIndex[P] == -1)
+      gl.ArabicCharJoiningMode[P] = GuiLib_ARAB_CHAR_TYPE_ISO;
+    else
+      gl.ArabicCharJoiningMode[P] =
+         GuiLib_ARAB_CHAR_CONVERT[gl.ArabicCharJoiningModeIndex[P]][2];
+  }
+
+  CharPtr = CharPtr2;
+  for (P = 0; P < CharCnt; P++)
+  {
+    CharCode = *((GuiConst_INT16U*)CharPtr);
+
+    I = P;
+    while (gl.ArabicCharJoiningMode[I] == GuiLib_ARAB_CHAR_DIACRITIC)
+      I--;
+    gl.ArabicCharJoiningModeBefore = gl.ArabicCharJoiningMode[I];
+    I = P + 2;
+    while (gl.ArabicCharJoiningMode[I] == GuiLib_ARAB_CHAR_DIACRITIC)
+      I++;
+    gl.ArabicCharJoiningModeAfter = gl.ArabicCharJoiningMode[I];
+
+    switch (gl.ArabicCharJoiningMode[P + 1])
+    {
+      case GuiLib_ARAB_CHAR_ISOFIN:
+        if (gl.ArabicCharJoiningModeBefore == GuiLib_ARAB_CHAR_ISOFININIMED)
+          *((GuiConst_INT16U*)CharPtr) =
+             GuiLib_ARAB_CHAR_CONVERT[gl.ArabicCharJoiningModeIndex[P + 1]][1] +
+             GuiLib_ARAB_CHAR_TYPE_FIN;
+        break;
+
+      case GuiLib_ARAB_CHAR_ISOFININIMED:
+        if ((gl.ArabicCharJoiningModeAfter == GuiLib_ARAB_CHAR_ISOFIN) ||
+            (gl.ArabicCharJoiningModeAfter == GuiLib_ARAB_CHAR_ISOFININIMED))
+        {
+          if (gl.ArabicCharJoiningModeBefore == GuiLib_ARAB_CHAR_ISOFININIMED)
+            *((GuiConst_INT16U*)CharPtr) =
+               GuiLib_ARAB_CHAR_CONVERT[gl.ArabicCharJoiningModeIndex[P + 1]][1] +
+               GuiLib_ARAB_CHAR_TYPE_MED;
+          else
+            *((GuiConst_INT16U*)CharPtr) =
+               GuiLib_ARAB_CHAR_CONVERT[gl.ArabicCharJoiningModeIndex[P + 1]][1] +
+               GuiLib_ARAB_CHAR_TYPE_INI;
+        }
+        else if (gl.ArabicCharJoiningModeBefore == GuiLib_ARAB_CHAR_ISOFININIMED)
+          *((GuiConst_INT16U*)CharPtr) =
+             GuiLib_ARAB_CHAR_CONVERT[gl.ArabicCharJoiningModeIndex[P + 1]][1] +
+             GuiLib_ARAB_CHAR_TYPE_FIN;
+        break;
+
+      case GuiLib_ARAB_CHAR_DIACRITIC:
+        if (((gl.ArabicCharJoiningMode[P + 2] == GuiLib_ARAB_CHAR_ISOFIN) ||
+             (gl.ArabicCharJoiningMode[P + 2] == GuiLib_ARAB_CHAR_ISOFININIMED)) &&
+            (gl.ArabicCharJoiningMode[P] == GuiLib_ARAB_CHAR_ISOFININIMED))
+          *((GuiConst_INT16U*)CharPtr) =
+             GuiLib_ARAB_CHAR_CONVERT[gl.ArabicCharJoiningModeIndex[P + 1]][1] + 1;
+        break;
+    }
+
+    CharPtr++;
+  }
+
+  return (CharCnt);
+}
+#endif
+
+// Groupend CHARS
+// Groupstart DRAW
+
+//------------------------------------------------------------------------------
+static void ResetDrawLimits(void)
+{
+  gl.Drawn = 0;
+  gl.DrawnX1 = 0x7FFF;
+  gl.DrawnY1 = 0x7FFF;
+  gl.DrawnX2 = 0x8000;
+  gl.DrawnY2 = 0x8000;
+}
+
+//------------------------------------------------------------------------------
+static void UpdateDrawLimits(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  sgl.CurItem.Drawn = 1;
+  sgl.CurItem.DrawnX1 = X1;
+  sgl.CurItem.DrawnY1 = Y1;
+  sgl.CurItem.DrawnX2 = X2;
+  sgl.CurItem.DrawnY2 = Y2;
+
+  gl.Drawn = 1;
+  gl.DrawnX1 = GuiLib_GET_MIN(gl.DrawnX1, X1);
+  gl.DrawnY1 = GuiLib_GET_MIN(gl.DrawnY1, Y1);
+  gl.DrawnX2 = GuiLib_GET_MAX(gl.DrawnX2, X2);
+  gl.DrawnY2 = GuiLib_GET_MAX(gl.DrawnY2, Y2);
+}
+
+//------------------------------------------------------------------------------
+static void DrawBorderBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR BorderColor,
+   GuiConst_INTCOLOR FillColor,
+   GuiConst_INT8U FillTransparent,
+   GuiConst_INT16U BorderThickness)
+{
+  if (BorderThickness == 1)
+    GuiLib_Box(X1, Y1, X2, Y2, BorderColor);
+  else
+  {
+    GuiLib_FillBox(X1, Y1, X1 + BorderThickness - 1, Y2, BorderColor);
+    GuiLib_FillBox(X2 - BorderThickness + 1, Y1, X2, Y2, BorderColor);
+    GuiLib_FillBox(X1, Y1, X2, Y1 + BorderThickness - 1, BorderColor);
+    GuiLib_FillBox(X1, Y2 - BorderThickness + 1, X2, Y2, BorderColor);
+  }
+  if ((!FillTransparent) &&
+     (X2 - X1 >= 2 * BorderThickness) &&
+     (Y2 - Y1 >= 2 * BorderThickness))
+    GuiLib_FillBox(X1 + BorderThickness,
+                   Y1 + BorderThickness,
+                   X2 - BorderThickness,
+                   Y2 - BorderThickness,
+                   FillColor);
+}
+
+//------------------------------------------------------------------------------
+static void SetBackColorBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INT8U TextNdx)
+{
+  sgl.BbX1 = X1;
+  sgl.BbY1 = Y1;
+  sgl.BbX2 = X2;
+  sgl.BbY2 = Y2;
+
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_LEFT) != 0)
+    sgl.BbX1--;
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_RIGHT) != 0)
+    sgl.BbX2++;
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_TOP) != 0)
+    sgl.BbY1--;
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_BOTTOM) != 0)
+    sgl.BbY2++;
+}
+
+//------------------------------------------------------------------------------
+static void SetBackBox(
+   GuiConst_INT8U TextNdx)
+{
+  GuiConst_INT16S L;
+
+  L = sgl.CurItem.TextPar[TextNdx].BackBoxSizeX;
+  sgl.BbX1 = sgl.CurItem.X1;
+  sgl.BbX2 = sgl.CurItem.X1 + L - 1;
+
+  if (sgl.CurItem.TextPar[TextNdx].Alignment == GuiLib_ALIGN_CENTER)
+  {
+    sgl.BbX1 -= L / 2;
+    sgl.BbX2 -= L / 2;
+  }
+  else if (sgl.CurItem.TextPar[TextNdx].Alignment == GuiLib_ALIGN_RIGHT)
+  {
+    sgl.BbX1 -= L - 1;
+    sgl.BbX2 -= L - 1;
+  }
+
+  if (sgl.CurItem.TextPar[TextNdx].BackBoxSizeY1 > 0)
+    sgl.BbY1 = sgl.CurItem.Y1 - sgl.CurItem.TextPar[TextNdx].BackBoxSizeY1;
+  else
+    sgl.BbY1 = sgl.CurItem.Y1 - ReadByte(sgl.CurFont->BaseLine);
+  if (sgl.CurItem.TextPar[TextNdx].BackBoxSizeY2 > 0)
+    sgl.BbY2 = sgl.CurItem.Y1 + sgl.CurItem.TextPar[TextNdx].BackBoxSizeY2;
+  else
+    sgl.BbY2 = sgl.CurItem.Y1 - ReadByte(sgl.CurFont->BaseLine) +
+       ReadByte(sgl.CurFont->YSize) - 1;
+
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_LEFT) != 0)
+    sgl.BbX1--;
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_RIGHT) != 0)
+    sgl.BbX2++;
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_TOP) != 0)
+    sgl.BbY1--;
+  if ((sgl.CurItem.TextPar[TextNdx].BackBorderPixels & GuiLib_BBP_BOTTOM) != 0)
+    sgl.BbY2++;
+}
+
+//------------------------------------------------------------------------------
+static void DrawBackBox(
+   GuiConst_INTCOLOR BoxColor,
+   GuiConst_INT8U Transparent,
+   GuiConst_INT8U TextNdx)
+{
+  SetBackBox(TextNdx);
+
+  if (!Transparent)
+    GuiLib_FillBox(sgl.BbX1, sgl.BbY1, sgl.BbX2, sgl.BbY2, BoxColor);
+}
+
+//------------------------------------------------------------------------------
+#ifdef GuiConst_CHARMODE_ANSI
+  #ifdef GuiConst_ICC_COMPILER
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        DrawText((GuiConst_TEXT *)ChPtr,                                       \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #else
+  #ifdef GuiConst_CODEVISION_COMPILER
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        DrawText((GuiConst_TEXT *)ChPtr,                                       \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #else
+  #ifdef GuiConst_RENESAS_COMPILER_FAR
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        DrawText((GuiConst_TEXT PrefixLocate *)ChPtr,                         \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #else
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        DrawText((GuiConst_TEXT PrefixRom *)ChPtr,                             \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #endif
+  #endif
+  #endif
+#else
+  #ifdef GuiConst_ICC_COMPILER
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        ExtractUnicodeString((GuiConst_INT8U *)ChPtr, ChCnt);                  \
+        DrawText((GuiConst_TEXT *)&sgl.UnicodeTextBuf,                         \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #else
+  #ifdef GuiConst_CODEVISION_COMPILER
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        ExtractUnicodeString((GuiConst_INT8U *)ChPtr, ChCnt);                  \
+        DrawText((GuiConst_TEXT *)sgl.UnicodeTextBuf,                          \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #else
+  #ifdef GuiConst_RENESAS_COMPILER_FAR
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        ExtractUnicodeString((GuiConst_INT8U PrefixLocate *)ChPtr, ChCnt);    \
+        DrawText((GuiConst_TEXT PrefixLocate *)sgl.UnicodeTextBuf,            \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #else
+#define DRAW_ROM_TEXT(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)       \
+        ExtractUnicodeString((GuiConst_INT8U PrefixRom *)ChPtr, ChCnt);        \
+        DrawText((GuiConst_TEXT *)&sgl.UnicodeTextBuf,                         \
+                  ChCnt,                                                       \
+                  TxtNdx,                                                      \
+                  FColor,                                                      \
+                  BColor,                                                      \
+                  Transparent);
+  #endif
+  #endif
+#endif
+#endif
+
+//------------------------------------------------------------------------------
+static void DrawText(
+   GuiConst_TEXT PrefixGeneric *CharPtr,
+   GuiConst_INT16U CharCount,
+   GuiConst_INT8U TextNdx,
+   GuiConst_INTCOLOR ForeColor,
+   GuiConst_INTCOLOR BackColor,
+   GuiConst_INT8U Transparent)
+{
+  GuiConst_INT16S P, N;
+  GuiConst_INT16U CharCnt;
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT32U PrefixRom TempOfs;
+#else
+  GuiConst_INT8U PrefixRom * TempPtr;
+#endif
+  GuiConst_INT8U  TempPsMode;
+  GuiConst_INT16S TextPixelLen;
+  GuiConst_INT16S X1, Y1, X2, Y2;
+  GuiConst_INT16S  TextXOfs[GuiConst_MAX_TEXT_LEN + 2];
+
+#ifdef GuiConst_ARAB_CHARS_INUSE
+  CharCnt = ArabicCorrection(CharPtr,
+                             CharCount,
+                            (sgl.CurItem.TextPar[TextNdx].BitFlags &
+               GuiLib_BITFLAG_REVERSEWRITING) > 0);
+#else
+  CharCnt = CharCount;
+#endif
+  PrepareText(CharPtr, CharCnt, TextNdx);
+
+  if (sgl.CurItem.TextPar[TextNdx].BitFlags & GuiLib_BITFLAG_REVERSEWRITING)
+  {
+    for (N = 0; N < CharCnt / 2; N++)
+    {
+#ifdef GuiConst_REMOTE_FONT_DATA
+      TempOfs = sgl.TextCharNdx[N];
+      sgl.TextCharNdx[N] = sgl.TextCharNdx[CharCnt - 1 - N];
+      sgl.TextCharNdx[CharCnt - 1 - N] = TempOfs;
+#else
+      TempPtr = sgl.TextCharPtrAry[N];
+      sgl.TextCharPtrAry[N] =
+         (GuiConst_INT8U PrefixRom *)sgl.TextCharPtrAry[CharCnt - 1 - N];
+      sgl.TextCharPtrAry[CharCnt - 1 - N] = (GuiConst_INT8U PrefixRom *)TempPtr;
+#endif
+      TempPsMode = sgl.TextPsMode[N];
+      sgl.TextPsMode[N] = sgl.TextPsMode[CharCnt - 1 - N];
+      sgl.TextPsMode[CharCnt - 1 - N] = TempPsMode;
+    }
+  }
+
+  TextPixelLen = TextPixelLength(sgl.CurItem.TextPar[TextNdx].Ps,
+                                 CharCnt,
+                                 TextXOfs);
+
+  X1 = sgl.CurItem.X1;
+  switch (sgl.CurItem.TextPar[TextNdx].Alignment)
+  {
+    case GuiLib_ALIGN_CENTER:
+      if (CharCnt > 0)
+        X1 -= TextPixelLen / 2;
+      break;
+
+    case GuiLib_ALIGN_RIGHT:
+      X1 -= TextPixelLen - 1;
+      break;
+  }
+  Y1 = sgl.CurItem.Y1 - ReadByte(sgl.CurFont->BaseLine);
+  X2 = X1 + TextPixelLen - 1;
+  Y2 = Y1 + ReadByte(sgl.CurFont->YSize) - 1;
+
+  sgl.FontWriteX1 = X1;
+  sgl.FontWriteY1 = Y1;
+  sgl.FontWriteX2 = X2;
+  sgl.FontWriteY2 = Y2;
+
+  if (sgl.DisplayWriting)
+  {
+    if (CharCnt > 0)
+    {
+      if ((Transparent == 0) && (sgl.CurItem.TextPar[TextNdx].BackBoxSizeX == 0))
+      {
+        SetBackColorBox(X1, Y1, X2, Y2, TextNdx);
+        GuiLib_FillBox(sgl.BbX1, sgl.BbY1, sgl.BbX2, sgl.BbY2, BackColor);
+      }
+
+      for (P = 0; P < CharCnt; P++)
+#ifdef GuiConst_REMOTE_FONT_DATA
+        DrawChar(X1 + TextXOfs[P], Y1, sgl.CurFont, sgl.TextCharNdx[P], ForeColor, (Transparent == 2));
+#else
+        DrawChar(X1 + TextXOfs[P], Y1, sgl.CurFont, sgl.TextCharPtrAry[P], ForeColor, (Transparent == 2));
+#endif
+    }
+
+    if ((sgl.CurItem.TextPar[TextNdx].BitFlags & GuiLib_BITFLAG_UNDERLINE) &&
+        (CharCnt > 0))
+      GuiLib_FillBox(X1, Y1 + ReadByte(sgl.CurFont->Underline1), X2,
+         Y1 + ReadByte(sgl.CurFont->Underline2), ForeColor);
+
+    GuiLib_MarkDisplayBoxRepaint(X1, Y1, X2, Y2);
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+    if ((sgl.CurItem.TextPar[TextNdx].BitFlags & GuiLib_BITFLAG_BLINKTEXTFIELD) &&
+        (sgl.CurItem.BlinkFieldNo < GuiConst_BLINK_FIELDS_MAX))
+    {
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].InUse = 1;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].BlinkBoxInverted = 0;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].ItemType = sgl.CurItem.ItemType;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].CharCnt = CharCnt;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].TextPar = sgl.CurItem.TextPar[TextNdx];
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].FormatFieldWidth =
+         sgl.CurItem.FormatFieldWidth;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].FormatDecimals =
+         sgl.CurItem.FormatDecimals;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].FormatAlignment =
+         sgl.CurItem.FormatAlignment;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].FormatFormat = sgl.CurItem.FormatFormat;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].VarType = sgl.CurItem.VarType;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].XSize =
+      ReadByte(sgl.CurFont->XSize);
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].PsNumWidth =
+      ReadByte(sgl.CurFont->PsNumWidth);
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].PsSpace =
+      ReadByte(sgl.CurFont->PsSpace);
+      if (sgl.CurItem.ItemType == GuiLib_ITEM_TEXT)
+        sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].TextPtr =
+           sgl.CurItem.TextPtr[TextNdx];
+      else
+        sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].TextPtr =
+           (GuiConst_TEXT*)sgl.CurItem.VarPtr;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].X1 = sgl.CurItem.X1;
+      sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].X2 = sgl.CurItem.X2;
+      if (sgl.CurItem.TextPar[TextNdx].BackBoxSizeX > 0)
+      {
+        if (sgl.CurItem.TextPar[TextNdx].BackBoxSizeY1 > 0)
+          sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].Y1 =
+             sgl.CurItem.Y1 - sgl.CurItem.TextPar[TextNdx].BackBoxSizeY1;
+        else
+          sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].Y1 =
+        sgl.CurItem.Y1 - ReadByte(sgl.CurFont->BaseLine);
+        if (sgl.CurItem.TextPar[TextNdx].BackBoxSizeY1 > 0)
+          sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].Y2 =
+             sgl.CurItem.Y1 + sgl.CurItem.TextPar[TextNdx].BackBoxSizeY2;
+        else
+          sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].Y2 =
+          sgl.CurItem.Y1 - ReadByte(sgl.CurFont->BaseLine) +
+                ReadByte(sgl.CurFont->YSize) - 1;
+      }
+      else
+      {
+        sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].Y1 = Y1;
+        sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].Y2 = Y2;
+      }
+    }
+#endif
+#endif
+  }
+}
+
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+
+//------------------------------------------------------------------------------
+#ifdef GuiConst_CHARMODE_ANSI
+  #ifdef GuiConst_ICC_COMPILER
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        DrawTextBlock((GuiConst_TEXT *)ChPtr,                                  \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #else
+  #ifdef GuiConst_CODEVISION_COMPILER
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        DrawTextBlock((GuiConst_TEXT *)ChPtr,                                  \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #else
+  #ifdef GuiConst_RENESAS_COMPILER_FAR
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        DrawTextBlock((GuiConst_TEXT PrefixLocate *)ChPtr,                     \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #else
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        DrawTextBlock((GuiConst_TEXT PrefixRom *)ChPtr,                        \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #endif
+  #endif
+  #endif
+#else
+  #ifdef GuiConst_ICC_COMPILER
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        ExtractUnicodeString((GuiConst_INT8U *)ChPtr, ChCnt);                  \
+        DrawTextBlock((GuiConst_TEXT *)&sgl.UnicodeTextBuf,                    \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #else
+  #ifdef GuiConst_CODEVISION_COMPILER
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        ExtractUnicodeString((GuiConst_INT8U *)ChPtr, ChCnt);                  \
+        DrawTextBlock((GuiConst_TEXT *)sgl.UnicodeTextBuf,                     \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #else
+  #ifdef GuiConst_RENESAS_COMPILER_FAR
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        ExtractUnicodeString((GuiConst_INT8U PrefixLocate *)ChPtr, ChCnt);     \
+        DrawTextBlock((GuiConst_TEXT PrefixLocate *)sgl.UnicodeTextBuf,        \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #else
+#define DRAW_ROM_TEXTBLOCK(ChPtr, ChCnt, TxtNdx, FColor, BColor, Transparent)  \
+        ExtractUnicodeString((GuiConst_INT8U PrefixRom *)ChPtr, ChCnt);        \
+        DrawTextBlock((GuiConst_TEXT *)&sgl.UnicodeTextBuf,                    \
+                       ChCnt,                                                  \
+                       TxtNdx,                                                 \
+                       FColor,                                                 \
+                       BColor,                                                 \
+                       Transparent);
+  #endif
+  #endif
+#endif
+#endif
+
+//------------------------------------------------------------------------------
+static void DrawTextBlock(
+   GuiConst_TEXT PrefixGeneric *CharPtr,
+   GuiConst_INT16U CharCnt,
+   GuiConst_INT8U TextNdx,
+   GuiConst_INTCOLOR ForeColor,
+   GuiConst_INTCOLOR BackColor,
+   GuiConst_INT8U Transparent)
+{
+  GuiConst_INT16S X1, Y1, X2, Y2;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiConst_INT16S CX1, CX2;
+#endif
+  GuiConst_INT16S CY1, CY2;
+  GuiConst_INT16S TextXOfs[GuiConst_MAX_TEXT_LEN + 2];
+  GuiConst_INT16S TextCharLineStart[GuiConst_MAX_PARAGRAPH_LINE_CNT + 1];
+  GuiConst_INT16S TextCharLineEnd[GuiConst_MAX_PARAGRAPH_LINE_CNT + 1];
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiConst_INT16S RemClipX1, RemClipY1, RemClipX2, RemClipY2;
+#endif
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  GuiConst_INT16S BlinkNo;
+#endif
+#endif
+  GuiConst_INT16S PixWidth;
+  GuiConst_INT16S N, P, M, F;
+  GuiConst_INT16S LineLen;
+  GuiConst_INT16S LineCnt;
+  GuiConst_INT16S LineCnt2;
+  GuiConst_INT16S BlindLinesAtTop;
+  GuiConst_INT16S XPos, YPos;
+  GuiConst_INT16S XStart, XEnd;
+  GuiConst_INT8U  TempPsMode;
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT32U PrefixRom TempOfs;
+  GuiConst_INT8U CharHeader1[GuiLib_CHR_LINECTRL_OFS];
+  GuiConst_INT8U CharHeader2[GuiLib_CHR_LINECTRL_OFS];
+#else
+  GuiConst_INT8U PrefixRom * TempPtr;
+#endif
+
+  X1 = sgl.CurItem.X1;
+  Y1 = sgl.CurItem.Y1;
+  X2 = sgl.CurItem.X2;
+  Y2 = sgl.CurItem.Y2;
+  sgl.FontWriteX1 = X1;
+  sgl.FontWriteY1 = Y1;
+  sgl.FontWriteX2 = X2;
+  sgl.FontWriteY2 = Y2;
+
+  PixWidth = 0;
+
+  if (sgl.DisplayWriting)
+  {
+    if (!Transparent && (sgl.CurItem.TextPar[TextNdx].BackBoxSizeX == 0))
+    {
+      SetBackColorBox(X1, Y1, X2, Y2, TextNdx);
+      GuiLib_FillBox(sgl.BbX1, sgl.BbY1, sgl.BbX2, sgl.BbY2, BackColor);
+    }
+
+    if (sgl.CurItem.CompPars.CompTextBox.LineDistRelToFont)
+    {
+      sgl.CurItem.CompPars.CompTextBox.LineDist +=sgl.CurFont->YSize;
+      sgl.CurItem.CompPars.CompTextBox.LineDistRelToFont = 0;
+    }
+
+    LineCnt = 0;
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+    sgl.CurItem.CompPars.CompTextBox.Lines = 1;
+#endif
+    if (CharCnt > 0)
+    {
+      PixWidth = X2 - X1 + 1;
+
+#ifdef GuiConst_ARAB_CHARS_INUSE
+      CharCnt =
+         ArabicCorrection(CharPtr,
+                          CharCnt,
+                          (sgl.CurItem.TextPar[TextNdx].BitFlags &
+                           GuiLib_BITFLAG_REVERSEWRITING) > 0);
+#endif
+      PrepareText(CharPtr, CharCnt, TextNdx);
+      TextPixelLength(sgl.CurItem.TextPar[TextNdx].Ps,
+                      CharCnt,
+                      TextXOfs);
+
+      TextCharLineStart[0] = 0;
+      TextCharLineEnd[0] = -1;
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+      if (sgl.CurItem.CompPars.CompTextBox.ScrollIndex == 0xFF)
+        BlindLinesAtTop = 0;
+      else
+        BlindLinesAtTop = sgl.CurItem.CompPars.CompTextBox.ScrollPos /
+           sgl.CurItem.CompPars.CompTextBox.LineDist;
+#else
+      BlindLinesAtTop = 0;
+#endif
+      LineCnt = 1 - BlindLinesAtTop;
+      if (LineCnt >= 1)
+        LineCnt = 1;
+      LineCnt2 = 1;
+      P = 0;
+#ifdef GuiConst_REMOTE_FONT_DATA
+      GuiLib_RemoteDataReadBlock(
+         (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[
+         sgl.TextCharNdx[TextCharLineStart[LineCnt2 - 1]]],
+         GuiLib_CHR_LINECTRL_OFS,
+         CharHeader2);
+#endif
+      while (P < CharCnt)
+      {
+        while ((P < CharCnt - 1) &&
+           !((ReadBytePtr(CharPtr + P) == GuiLib_LINEFEED) ||
+           ((ReadBytePtr(CharPtr + P) != ' ') &&
+           (ReadBytePtr(CharPtr + P + 1) == ' ')) ||
+           ((ReadBytePtr(CharPtr + P) == '-') &&
+           (ReadBytePtr(CharPtr + P + 1) != ' '))))
+          P++;
+
+        F = 0;
+
+        if (CalcCharsWidth(TextCharLineStart[LineCnt2 - 1], P,
+                           TextXOfs, &XStart, &XEnd) > PixWidth)
+        {
+          if (TextCharLineEnd[LineCnt2 - 1] == -1)
+          {
+            if (ReadBytePtr(CharPtr + P) == GuiLib_LINEFEED)
+            {
+              TextCharLineEnd[LineCnt2 - 1] = P - 1;
+              F = 1;
+            }
+            else
+              TextCharLineEnd[LineCnt2 - 1] = P;
+
+            TextCharLineStart[LineCnt2] = P + 1;
+            TextCharLineEnd[LineCnt2] = -1;
+          }
+          else
+          {
+            TextCharLineStart[LineCnt2] = TextCharLineEnd[LineCnt2 - 1] + 1;
+            while ((TextCharLineStart[LineCnt2] < P) &&
+               (ReadBytePtr(CharPtr + TextCharLineStart[LineCnt2]) == ' '))
+              TextCharLineStart[LineCnt2]++;
+            TextCharLineEnd[LineCnt2] = P;
+          }
+          if (LineCnt >= GuiConst_MAX_PARAGRAPH_LINE_CNT)
+          {
+            P = CharCnt;
+            break;
+          }
+          LineCnt++;
+          if (LineCnt > 1)
+            LineCnt2 = LineCnt;
+          else
+          {
+            TextCharLineStart[LineCnt2 - 1] = TextCharLineStart[LineCnt2];
+            TextCharLineEnd[LineCnt2 - 1] = TextCharLineEnd[LineCnt2];
+          }
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+          sgl.CurItem.CompPars.CompTextBox.Lines++;
+#endif
+        }
+        else
+          TextCharLineEnd[LineCnt2 - 1] = P;
+
+        if ((ReadBytePtr(CharPtr + P) == GuiLib_LINEFEED) &&
+            (F == 0))
+        {
+          TextCharLineEnd[LineCnt2 - 1] = P - 1;
+          TextCharLineStart[LineCnt2] = P + 1;
+          TextCharLineEnd[LineCnt2] = -1;
+
+          if (LineCnt >= GuiConst_MAX_PARAGRAPH_LINE_CNT)
+          {
+            P = CharCnt;
+            break;
+          }
+          LineCnt++;
+          if (LineCnt > 1)
+            LineCnt2 = LineCnt;
+          else
+          {
+            TextCharLineStart[LineCnt2 - 1] = TextCharLineStart[LineCnt2];
+            TextCharLineEnd[LineCnt2 - 1] = TextCharLineEnd[LineCnt2];
+          }
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+          sgl.CurItem.CompPars.CompTextBox.Lines++;
+#endif
+        }
+
+        P++;
+      }
+    }
+
+    if (LineCnt >= 1)
+    {
+      if (sgl.CurItem.TextPar[TextNdx].BitFlags & GuiLib_BITFLAG_REVERSEWRITING)
+      {
+        for (M = 0; M < LineCnt ; M++)
+        {
+          for (P = TextCharLineStart[M]; P <= (TextCharLineStart[M] +
+             ((TextCharLineEnd[M] - TextCharLineStart[M] + 1) / 2) - 1); P++)
+          {
+#ifdef GuiConst_REMOTE_FONT_DATA
+            TempOfs = sgl.TextCharNdx[P];
+            sgl.TextCharNdx[P] =
+               sgl.TextCharNdx[TextCharLineEnd[M] - (P - TextCharLineStart[M])];
+            sgl.TextCharNdx[TextCharLineEnd[M] - (P - TextCharLineStart[M])] =
+               TempOfs;
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+            TempPtr = &sgl.TextCharPtrAry[P];
+#else
+            TempPtr = sgl.TextCharPtrAry[P];
+#endif
+            sgl.TextCharPtrAry[P] = (GuiConst_INT8U PrefixRom *)
+               sgl.TextCharPtrAry[TextCharLineEnd[M] - (P - TextCharLineStart[M])];
+            sgl.TextCharPtrAry[TextCharLineEnd[M] - (P - TextCharLineStart[M])] =
+               (GuiConst_INT8U PrefixRom *)TempPtr;
+#endif
+            TempPsMode = sgl.TextPsMode[P];
+            sgl.TextPsMode[P] =
+               sgl.TextPsMode[TextCharLineEnd[M] - (P - TextCharLineStart[M])];
+            sgl.TextPsMode[TextCharLineEnd[M] - (P - TextCharLineStart[M])] =
+               TempPsMode;
+          }
+        }
+        TextPixelLength(sgl.CurItem.TextPar[TextNdx].Ps,
+                        CharCnt,
+                        TextXOfs);
+      }
+
+      CY1 = Y1;
+      CY2 = Y2;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      CX1 = X1;
+      CX2 = X2;
+      RemClipX1 = sgl.CurItem.ClipRectX1;
+      RemClipY1 = sgl.CurItem.ClipRectY1;
+      RemClipX2 = sgl.CurItem.ClipRectX2;
+      RemClipY2 = sgl.CurItem.ClipRectY2;
+      if (RemClipX1 > CX1)
+        CX1 = RemClipX1;
+      if (RemClipY1 > CY1)
+        CY1 = RemClipY1;
+      if (RemClipX2 < CX2)
+        CX2 = RemClipX2;
+      if (RemClipY2 < CY2)
+        CY2 = RemClipY2;
+      GuiLib_SetClipping(CX1, CY1, CX2, CY2);
+#endif
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+      if ((sgl.CurItem.TextPar[TextNdx].BitFlags & GuiLib_BITFLAG_BLINKTEXTFIELD) &&
+          (sgl.CurItem.BlinkFieldNo < GuiConst_BLINK_FIELDS_MAX))
+      {
+        BlinkNo = sgl.CurItem.BlinkFieldNo;
+        sgl.BlinkTextItems[BlinkNo].InUse = 1;
+        sgl.BlinkTextItems[BlinkNo].ItemType = sgl.CurItem.ItemType;
+        sgl.BlinkTextItems[BlinkNo].VarType = sgl.CurItem.VarType;
+        sgl.BlinkTextItems[BlinkNo].CharCnt = CharCnt;
+        sgl.BlinkTextItems[BlinkNo].TextPar = sgl.CurItem.TextPar[TextNdx];
+        sgl.BlinkTextItems[BlinkNo].XSize = sgl.CurFont->XSize;
+        sgl.BlinkTextItems[BlinkNo].YSize = sgl.CurFont->YSize;
+        sgl.BlinkTextItems[BlinkNo].PsNumWidth = sgl.CurFont->PsNumWidth;
+        sgl.BlinkTextItems[BlinkNo].PsSpace = sgl.CurFont->PsSpace;
+        if (sgl.CurItem.ItemType == GuiLib_ITEM_TEXTBLOCK)
+          sgl.BlinkTextItems[BlinkNo].TextPtr = sgl.CurItem.TextPtr[TextNdx];
+        else
+          sgl.BlinkTextItems[BlinkNo].TextPtr = (GuiConst_TEXT*)sgl.CurItem.VarPtr;
+        sgl.BlinkTextItems[BlinkNo].X1 = X1;
+        sgl.BlinkTextItems[BlinkNo].X2 = X2;
+        sgl.BlinkTextItems[BlinkNo].Y1 = Y1;
+        sgl.BlinkTextItems[BlinkNo].Y2 = Y2;
+        sgl.BlinkTextItems[BlinkNo].LineCnt = LineCnt;
+        sgl.BlinkTextItems[BlinkNo].TextBoxLineDist =
+           sgl.CurItem.CompPars.CompTextBox.LineDist;
+        sgl.BlinkTextItems[BlinkNo].BlindLinesAtTop = BlindLinesAtTop;
+        sgl.BlinkTextItems[BlinkNo].FormatFieldWidth = sgl.CurItem.FormatFieldWidth;
+        sgl.BlinkTextItems[BlinkNo].FormatDecimals = sgl.CurItem.FormatDecimals;
+        sgl.BlinkTextItems[BlinkNo].FormatAlignment = sgl.CurItem.FormatAlignment;
+        sgl.BlinkTextItems[BlinkNo].FormatFormat = sgl.CurItem.FormatFormat;
+        sgl.BlinkTextItems[BlinkNo].TextBoxHorzAlignment =
+           sgl.CurItem.CompPars.CompTextBox.HorzAlignment;
+        sgl.BlinkTextItems[BlinkNo].TextBoxVertAlignment =
+           sgl.CurItem.CompPars.CompTextBox.VertAlignment;
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+        sgl.BlinkTextItems[BlinkNo].TextBoxScrollPos =
+           sgl.CurItem.CompPars.CompTextBox.ScrollPos;
+#endif
+      }
+      else
+        BlinkNo = -1;
+#endif
+#endif
+
+      YPos = Y1;
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+      if (BlindLinesAtTop < 0)
+        BlindLinesAtTop = 0;
+      YPos -= sgl.CurItem.CompPars.CompTextBox.ScrollPos -
+             (sgl.CurItem.CompPars.CompTextBox.LineDist * BlindLinesAtTop);
+#endif
+
+      N = ReadByte(sgl.CurFont->YSize) +
+         (LineCnt - 1) * sgl.CurItem.CompPars.CompTextBox.LineDist;
+      switch (sgl.CurItem.CompPars.CompTextBox.VertAlignment)
+      {
+        case GuiLib_ALIGN_CENTER:
+          YPos += (Y2 - Y1 + 1 - N) / 2;
+          break;
+
+        case GuiLib_ALIGN_RIGHT:
+          YPos += Y2 - Y1 + 1 - N;
+          break;
+      }
+
+      for (N = 0; N < LineCnt; N++)
+      {
+        if (TextCharLineEnd[N] >= TextCharLineStart[N])
+        {
+          XPos = X1;
+
+          LineLen = CalcCharsWidth(TextCharLineStart[N],
+                                   TextCharLineEnd[N],
+                                   TextXOfs,
+                                   &XStart,
+                                   &XEnd);
+          switch (sgl.CurItem.CompPars.CompTextBox.HorzAlignment)
+          {
+            case GuiLib_ALIGN_CENTER:
+              XPos += (PixWidth - LineLen) / 2;
+              break;
+
+            case GuiLib_ALIGN_RIGHT:
+              XPos += PixWidth - LineLen;
+              break;
+          }
+
+          if (sgl.CurItem.TextPar[TextNdx].BitFlags & GuiLib_BITFLAG_UNDERLINE)
+            GuiLib_FillBox(XPos, YPos + ReadByte(sgl.CurFont->Underline1),
+               XPos + LineLen - 1, YPos + ReadByte(sgl.CurFont->Underline2),
+               ForeColor);
+
+          XPos -= XStart;
+          if ((YPos + sgl.CurFont->YSize >= CY1) && (YPos <= CY2))
+            for (P = TextCharLineStart[N]; P <= TextCharLineEnd[N]; P++)
+#ifdef GuiConst_REMOTE_FONT_DATA
+              DrawChar(
+                 XPos + TextXOfs[P], YPos, sgl.CurFont, sgl.TextCharNdx[P], ForeColor, 0);
+#else
+              DrawChar(XPos + TextXOfs[P], YPos, sgl.CurFont, sgl.TextCharPtrAry[P],
+                 ForeColor, 0);
+#endif
+        }
+        YPos += sgl.CurItem.CompPars.CompTextBox.LineDist;
+      }
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+      GuiLib_SetClipping(RemClipX1, RemClipY1, RemClipX2, RemClipY2);
+#endif
+    }
+    GuiLib_MarkDisplayBoxRepaint(X1, Y1, X2, Y2);
+  }
+}
+#endif
+// Groupend DRAW
+
+#ifdef GuiConst_FLOAT_SUPPORT_ON
+static float Floor(float X)
+{
+  GuiConst_INT32S I;
+
+  I = X - 2;
+  while(++I <= X - 1);
+  return I;
+}
+#endif
+
+//------------------------------------------------------------------------------
+static GuiConst_INT32S ReadVar(
+   void PrefixLocate *VarPtr,
+   GuiConst_INT8U VarType)
+{
+#ifdef GuiConst_FLOAT_SUPPORT_ON
+  GuiConst_INT32S tmp;
+  GuiConst_INT8U i;
+  double dfactor;
+  double dx;
+  float ffactor;
+  float fx;
+#endif
+
+  if (VarPtr == 0)
+    return (0);
+  else
+  {
+    if (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP)
+    {
+#ifdef GuiConst_FLOAT_SUPPORT_ON
+      if ((VarType == GuiLib_VAR_FLOAT) || (VarType == GuiLib_VAR_DOUBLE))
+        sgl.VarExponent = 0;
+      else
+#endif
+        sgl.CurItem.FormatFormat = GuiLib_FORMAT_DEC;
+    }
+    switch (VarType)
+    {
+      case GuiLib_VAR_BOOL:
+        if (*(GuiConst_INT8U PrefixLocate *) VarPtr == 0)
+          return (0);
+        else
+          return (1);
+
+      case GuiLib_VAR_UNSIGNED_CHAR:
+        return (*(GuiConst_INT8U PrefixLocate *) VarPtr);
+
+      case GuiLib_VAR_SIGNED_CHAR:
+        return (*(GuiConst_INT8S PrefixLocate *) VarPtr);
+
+      case GuiLib_VAR_UNSIGNED_INT:
+        return (*(GuiConst_INT16U PrefixLocate *) VarPtr);
+
+      case GuiLib_VAR_SIGNED_INT:
+        return (*(GuiConst_INT16S PrefixLocate *) VarPtr);
+
+      case GuiLib_VAR_UNSIGNED_LONG:
+        return (*(GuiConst_INT32U PrefixLocate *) VarPtr);
+
+      case GuiLib_VAR_SIGNED_LONG:
+        return (*(GuiConst_INT32S PrefixLocate *) VarPtr);
+
+      case GuiLib_VAR_COLOR:
+        return (*(GuiConst_INTCOLOR PrefixLocate *) VarPtr);
+
+      case GuiLib_VAR_FLOAT:
+#ifdef GuiConst_FLOAT_SUPPORT_ON
+        fx = *(float PrefixLocate *) VarPtr;
+        if (fx < 0)
+          fx = -fx;
+        if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP) && (fx != 0))
+        {
+          while (Floor(fx + 0.5) > 10)
+          {
+            fx /= 10;
+            sgl.VarExponent++;
+          }
+          while (Floor(fx) < 1)
+          {
+            fx *= 10;
+            sgl.VarExponent--;
+          }
+        }
+        if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_DEC) ||
+            (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP))
+        {
+          ffactor=1.0;
+          for (i = 0; i < sgl.CurItem.FormatDecimals ; i++)
+            ffactor *= 10.0;
+          tmp = (GuiConst_INT32S) (fx * ffactor);
+          ffactor *= 100.0;
+          if (((GuiConst_INT32S) (fx * ffactor) - (tmp * 100)) >= 45)
+            tmp++;
+          if (*(float PrefixLocate *) VarPtr < 0)
+            tmp = -tmp;
+        }
+        else
+          tmp = (GuiConst_INT32S) *(float PrefixLocate *) VarPtr;
+        return (tmp);
+#else
+        return (0);
+#endif
+
+      case GuiLib_VAR_DOUBLE:
+#ifdef GuiConst_FLOAT_SUPPORT_ON
+        dx = *(double PrefixLocate *) VarPtr;
+        if (dx < 0)
+          dx = -dx;
+        if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP) && (dx != 0))
+        {
+          while (dx > 10)
+          {
+            dx /= 10;
+            sgl.VarExponent++;
+          }
+          while (dx < 1)
+          {
+            dx *= 10;
+            sgl.VarExponent--;
+          }
+        }
+        if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_DEC) ||
+            (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP))
+        {
+          dfactor=1.0;
+          for (i = 0; i < sgl.CurItem.FormatDecimals ; i++)
+            dfactor *= 10.0;
+          tmp = (GuiConst_INT32S) (dx * dfactor);
+          dfactor *= 100.0;
+          if (((GuiConst_INT32S) (dx * dfactor) - (tmp * 100)) >= 45)
+            tmp++;
+          if (*(double PrefixLocate *) VarPtr < 0)
+            tmp = -tmp;
+        }
+        else
+          tmp = (GuiConst_INT32S) dx;
+        return (tmp);
+#else
+        return (0);
+#endif
+
+      default:
+        return (0);
+    }
+  }
+}
+
+//------------------------------------------------------------------------------
+static GuiConst_INT8U DataNumStr(
+   GuiConst_INT32S DataValue,
+   GuiConst_INT8U VarType,
+   GuiConst_INT8U TextNdx)
+{
+  GuiConst_CHAR *S1;
+  GuiConst_INT8U StrLen, L;
+  GuiConst_INT16S I, N, P;
+  GuiConst_INT8U Offset;
+  GuiConst_INT8U Sign;
+  GuiConst_INT8U ShowSign;
+  GuiConst_INT8U ZeroPadding;
+  GuiConst_INT8U TrailingZeros;
+  GuiConst_INT8U ThousandsSeparator;
+  GuiConst_INT8U Time;
+  GuiConst_INT16S TT1, TT2, TT3;
+  GuiConst_INT8U am;
+  GuiConst_INT8U DecimalsPos;
+#ifdef GuiConst_FLOAT_SUPPORT_ON
+  GuiConst_CHAR ExponentStr[5];
+#endif
+
+  sgl.VarNumTextStr[0] = 0;
+  am = 0;
+
+  Sign = 0;
+  switch (VarType)
+  {
+    case GuiLib_VAR_BOOL:
+    case GuiLib_VAR_UNSIGNED_CHAR:
+      if (DataValue > 255)
+        DataValue = 255;
+      else if (DataValue < 0)
+        DataValue = 0;
+      break;
+
+    case GuiLib_VAR_SIGNED_CHAR:
+      if (DataValue > 127)
+        DataValue = 127;
+      else if (DataValue < -128)
+        DataValue = -128;
+      if (DataValue < 0)
+        Sign = 1;
+      break;
+
+    case GuiLib_VAR_UNSIGNED_INT:
+      if (DataValue > 65535)
+        DataValue = 65535;
+      else if (DataValue < 0)
+        DataValue = 0;
+      break;
+
+    case GuiLib_VAR_SIGNED_INT:
+      if (DataValue > 32767)
+        DataValue = 32767;
+      else if (DataValue < -32768)
+        DataValue = -32768;
+      if (DataValue < 0)
+        Sign = 1;
+      break;
+
+    case GuiLib_VAR_SIGNED_LONG:
+    case GuiLib_VAR_FLOAT:
+    case GuiLib_VAR_DOUBLE:
+      if (DataValue < 0)
+        Sign = 1;
+      break;
+
+    case GuiLib_VAR_COLOR:
+      if (DataValue < 0)
+          DataValue = 0;
+#if GuiConst_PIXEL_BYTE_SIZE == 1
+      if (DataValue > 255)
+        DataValue = 255;
+#elif GuiConst_PIXEL_BYTE_SIZE == 2
+      if (DataValue > 65535)
+        DataValue = 65535;
+#elif GuiConst_PIXEL_BYTE_SIZE == 3
+      if (DataValue > 16777215)
+        DataValue = 16777215;
+#endif
+      break;
+  }
+
+  if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_DEC) ||
+      (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP))
+    DecimalsPos = sgl.CurItem.FormatDecimals;
+  else
+    DecimalsPos = 0;
+  Time = ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_MMSS) ||
+          (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMM_24) ||
+          (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_24) ||
+          (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMM_12_ampm) ||
+          (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_ampm) ||
+          (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMM_12_AMPM) ||
+          (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_AMPM));
+  if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_DEC) ||
+      (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP))
+    ShowSign = ((sgl.CurItem.TextPar[TextNdx].BitFlags &
+                 GuiLib_BITFLAG_FORMATSHOWSIGN) > 0);
+  else
+  {
+    Sign = 0;
+    ShowSign = 0;
+  }
+  if (sgl.CurItem.FormatAlignment == GuiLib_FORMAT_ALIGNMENT_RIGHT)
+    ZeroPadding = ((sgl.CurItem.TextPar[TextNdx].BitFlags &
+                    GuiLib_BITFLAG_FORMATZEROPADDING) > 0);
+  else
+    ZeroPadding = 0;
+  if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_DEC) ||
+      (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP))
+    TrailingZeros = ((sgl.CurItem.TextPar[TextNdx].BitFlags &
+                      GuiLib_BITFLAG_FORMATTRAILINGZEROS) > 0);
+  else
+    TrailingZeros = 0;
+  if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_DEC) ||
+      (sgl.CurItem.FormatFormat == GuiLib_FORMAT_HEX_POSTFIX_H) ||
+      (sgl.CurItem.FormatFormat == GuiLib_FORMAT_HEX_PREFIX_0X) ||
+      (sgl.CurItem.FormatFormat == GuiLib_FORMAT_HEX_CLEAN))
+    ThousandsSeparator = ((sgl.CurItem.TextPar[TextNdx].BitFlags &
+                           GuiLib_BITFLAG_FORMATTHOUSANDSSEP) > 0);
+  else
+    ThousandsSeparator = 0;
+
+  if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_DEC) ||
+      (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP))
+  {
+    if (Sign)
+      ConvertIntToStr(-DataValue, sgl.VarNumTextStr, 10);
+    else
+      ConvertIntToStr(DataValue, sgl.VarNumTextStr, 10);
+  }
+
+  else if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_HEX_POSTFIX_H) ||
+           (sgl.CurItem.FormatFormat == GuiLib_FORMAT_HEX_PREFIX_0X) ||
+           (sgl.CurItem.FormatFormat == GuiLib_FORMAT_HEX_CLEAN))
+  {
+    ConvertIntToStr(DataValue, sgl.VarNumTextStr, 16);
+    S1 = sgl.VarNumTextStr;
+    StrLen = 0;
+    while (*S1 != 0)
+    {
+      if ((*S1 >= 'a') && (*S1 <= 'f'))
+        *S1 -= 32;
+      S1++;
+      StrLen++;
+    }
+    if (DataValue < 0)
+    {
+      while ((StrLen > 1) && (StrLen >= sgl.CurItem.FormatFieldWidth))
+      {
+        if (sgl.VarNumTextStr[0] == 'F')
+        {
+          for (N = 0; N < StrLen; N++)
+            sgl.VarNumTextStr[N] = sgl.VarNumTextStr[N + 1];
+          sgl.VarNumTextStr[StrLen] = 0;
+          StrLen--;
+        }
+        else
+          break;
+      }
+
+    }
+    if (StrLen >= GuiConst_MAX_VARNUM_TEXT_LEN)
+      return (0);
+
+    switch (sgl.CurItem.FormatFormat)
+    {
+      case GuiLib_FORMAT_HEX_POSTFIX_H:
+        if (StrLen < GuiConst_MAX_VARNUM_TEXT_LEN - 1)
+        {
+          #ifdef GuiConst_CODEVISION_COMPILER
+          strcatf(sgl.VarNumTextStr, "h");
+          #else
+          strcat(sgl.VarNumTextStr, "h");
+          #endif
+        }
+        break;
+      case GuiLib_FORMAT_HEX_PREFIX_0X:
+        if (StrLen < GuiConst_MAX_VARNUM_TEXT_LEN - 2)
+        {
+          for (N = StrLen - 1; N >= 0; N--)
+            sgl.VarNumTextStr[N + 2] = sgl.VarNumTextStr[N];
+          sgl.VarNumTextStr[0] = '0';
+          sgl.VarNumTextStr[1] = 'x';
+        }
+        break;
+    }
+  }
+
+  else if (Time)
+  {
+    if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_24) ||
+        (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_ampm) ||
+        (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_AMPM))
+    {
+      DataValue %= 360000;
+      TT1 = DataValue / 3600;
+      TT2 = (DataValue % 3600) / 60;
+      TT3 = DataValue % 60;
+    }
+    else
+    {
+      DataValue %= 6000;
+      TT1 = DataValue / 60;
+      TT2 = DataValue % 60;
+      TT3 = -1;
+    }
+
+    if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMM_12_ampm) ||
+        (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_ampm) ||
+        (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMM_12_AMPM) ||
+        (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_AMPM))
+    {
+      am = ((TT1%24) < 12);
+      TT1 %= 12;
+      if (TT1 == 0)
+        TT1 = 12;
+    }
+    else
+      am = 0;   // To avoid compiler warning
+
+    if (ZeroPadding && (TT1 < 10))
+#ifdef GuiConst_CODEVISION_COMPILER
+      strcatf(sgl.VarNumTextStr, "0");
+#else
+      strcat(sgl.VarNumTextStr, "0");
+#endif
+    ConvertIntToStr(TT1, sgl.VarNumTextStr + strlen(sgl.VarNumTextStr), 10);
+
+#ifdef GuiConst_CODEVISION_COMPILER
+    strcatf(sgl.VarNumTextStr, ":");
+#else
+    strcat(sgl.VarNumTextStr, ":");
+#endif
+
+    if (TT2 < 10)
+#ifdef GuiConst_CODEVISION_COMPILER
+      strcatf(sgl.VarNumTextStr, "0");
+#else
+      strcat(sgl.VarNumTextStr, "0");
+#endif
+    ConvertIntToStr(TT2, sgl.VarNumTextStr + strlen(sgl.VarNumTextStr), 10);
+
+    if (TT3 >= 0)
+    {
+#ifdef GuiConst_CODEVISION_COMPILER
+      strcatf(sgl.VarNumTextStr, ":");
+#else
+      strcat(sgl.VarNumTextStr, ":");
+#endif
+
+      if (TT3 < 10)
+#ifdef GuiConst_CODEVISION_COMPILER
+        strcatf(sgl.VarNumTextStr, "0");
+#else
+        strcat(sgl.VarNumTextStr, "0");
+#endif
+      ConvertIntToStr(TT3, sgl.VarNumTextStr + strlen(sgl.VarNumTextStr), 10);
+    }
+
+    if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMM_12_ampm) ||
+        (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_ampm))
+    {
+      if (am)
+#ifdef GuiConst_CODEVISION_COMPILER
+        strcatf(sgl.VarNumTextStr, "am");
+#else
+        strcat(sgl.VarNumTextStr, "am");
+#endif
+      else
+#ifdef GuiConst_CODEVISION_COMPILER
+        strcatf(sgl.VarNumTextStr, "pm");
+#else
+        strcat(sgl.VarNumTextStr, "pm");
+#endif
+    }
+    else if ((sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMM_12_AMPM) ||
+             (sgl.CurItem.FormatFormat == GuiLib_FORMAT_TIME_HHMMSS_12_AMPM))
+    {
+      if (am)
+#ifdef GuiConst_CODEVISION_COMPILER
+        strcatf(sgl.VarNumTextStr, "AM");
+#else
+        strcat(sgl.VarNumTextStr, "AM");
+#endif
+      else
+#ifdef GuiConst_CODEVISION_COMPILER
+        strcatf(sgl.VarNumTextStr, "PM");
+#else
+        strcat(sgl.VarNumTextStr, "PM");
+#endif
+    }
+  }
+  else
+    return (0);
+
+  StrLen = 0;
+  S1 = sgl.VarNumTextStr;
+  while (*S1 != 0)
+  {
+    StrLen++;
+    S1++;
+  }
+
+  if (DecimalsPos > 0)
+  {
+    L = DecimalsPos + 1;
+    if (StrLen < L)
+    {
+      if (L > GuiConst_MAX_VARNUM_TEXT_LEN)
+        return (0);
+      for (N = 1; N <= StrLen; N++)
+        sgl.VarNumTextStr[L - N] = sgl.VarNumTextStr[StrLen - N];
+      for (N = 0; N < L - StrLen; N++)
+        sgl.VarNumTextStr[N] = '0';
+
+      StrLen = L;
+    }
+
+    if ((!TrailingZeros) && (!Time) && (VarType != GuiLib_VAR_BOOL))
+    {
+      L = StrLen;
+      for (N = L - 1; N > L - sgl.CurItem.FormatDecimals; N--)
+        if (sgl.VarNumTextStr[N] == '0')
+        {
+          DecimalsPos--;
+          StrLen--;
+        }
+        else
+          break;
+    }
+
+    if (StrLen >= GuiConst_MAX_VARNUM_TEXT_LEN)
+      return (0);
+    P = StrLen - DecimalsPos;
+    for (N = StrLen; N > P; N--)
+      sgl.VarNumTextStr[N] = sgl.VarNumTextStr[N - 1];
+    if (ReadByte(GuiFont_DecimalChar[GuiLib_LanguageIndex]) == GuiLib_DECIMAL_PERIOD)
+      sgl.VarNumTextStr[P] = '.';
+    else
+      sgl.VarNumTextStr[P] = ',';
+    StrLen++;
+    sgl.VarNumTextStr[StrLen] = 0;
+  }
+  else
+    P = StrLen;
+
+  if (ThousandsSeparator)
+  {
+    I = 0;
+    while (P > 0)
+    {
+      if ((I > 0) && (I % 3 ==0 ))
+      {
+        for (N = StrLen; N > P; N--)
+          sgl.VarNumTextStr[N] = sgl.VarNumTextStr[N - 1];
+        if (ReadByte(GuiFont_DecimalChar[GuiLib_LanguageIndex]) == GuiLib_DECIMAL_PERIOD)
+          sgl.VarNumTextStr[P] = ',';
+        else
+          sgl.VarNumTextStr[P] = '.';
+        StrLen++;
+        if (StrLen >= GuiConst_MAX_VARNUM_TEXT_LEN)
+          return (0);
+        sgl.VarNumTextStr[StrLen] = 0;
+      }
+      I++;
+      P--;
+    }
+  }
+
+  if (Sign || ShowSign)
+  {
+    if (StrLen > GuiConst_MAX_VARNUM_TEXT_LEN)
+      return (0);
+    for (N = StrLen; N >= 1; N--)
+      sgl.VarNumTextStr[N] = sgl.VarNumTextStr[N - 1];
+    if (Sign)
+      sgl.VarNumTextStr[0] = '-';
+    else
+      sgl.VarNumTextStr[0] = '+';
+    StrLen++;
+    sgl.VarNumTextStr[StrLen] = 0;
+  }
+
+#ifdef GuiConst_FLOAT_SUPPORT_ON
+  if (sgl.CurItem.FormatFormat == GuiLib_FORMAT_EXP)
+  {
+    N = sgl.VarExponent;
+    if (N < 0)
+      N = -N;
+    ConvertIntToStr(N, ExponentStr, 10);
+    S1 = ExponentStr;
+    N = 0;
+    while (*S1 != 0)
+    {
+      S1++;
+      N++;
+    }
+    if (N == 1)
+      I = 2;
+    else
+      I = N;
+    if (StrLen + 2 + I >= GuiConst_MAX_VARNUM_TEXT_LEN)
+      return (0);
+#ifdef GuiConst_CODEVISION_COMPILER
+    strcatf(sgl.VarNumTextStr, "E");
+#else
+    strcat(sgl.VarNumTextStr, "E");
+#endif
+    StrLen++;
+    if (sgl.VarExponent >= 0)
+#ifdef GuiConst_CODEVISION_COMPILER
+      strcatf(sgl.VarNumTextStr, "+");
+#else
+      strcat(sgl.VarNumTextStr, "+");
+#endif
+    else
+#ifdef GuiConst_CODEVISION_COMPILER
+      strcatf(sgl.VarNumTextStr, "-");
+#else
+      strcat(sgl.VarNumTextStr, "-");
+#endif
+    StrLen++;
+    if (N == 1)
+    {
+#ifdef GuiConst_CODEVISION_COMPILER
+      strcatf(sgl.VarNumTextStr, "0");
+#else
+      strcat(sgl.VarNumTextStr, "0");
+#endif
+      StrLen++;
+    }
+    strcat(sgl.VarNumTextStr, ExponentStr);
+    StrLen += N;
+  }
+#endif
+
+  if (sgl.CurItem.FormatFieldWidth > 0)
+  {
+    if (StrLen > sgl.CurItem.FormatFieldWidth)
+    {
+      for (N = 0; N < sgl.CurItem.FormatFieldWidth; N++)
+        sgl.VarNumTextStr[N] = '-';
+    }
+    else
+    {
+      if (sgl.CurItem.FormatFieldWidth > GuiConst_MAX_VARNUM_TEXT_LEN)
+        return (0);
+      if (ZeroPadding && (!Time))
+      {
+        if ((sgl.VarNumTextStr[0] == '-') || (sgl.VarNumTextStr[0] == '+'))
+          Offset = 1;
+        else
+          Offset = 0;
+        for (N = 1; N <= StrLen - Offset; N++)
+          sgl.VarNumTextStr[sgl.CurItem.FormatFieldWidth - N] =
+            sgl.VarNumTextStr[StrLen - N];
+        for (N = 0; N < sgl.CurItem.FormatFieldWidth - StrLen; N++)
+          sgl.VarNumTextStr[N + Offset] = '0';
+      }
+      else if (sgl.CurItem.FormatAlignment == GuiLib_FORMAT_ALIGNMENT_LEFT)
+      {
+        for (N = StrLen; N < sgl.CurItem.FormatFieldWidth; N++)
+          sgl.VarNumTextStr[N] = ' ';
+      }
+      else if (sgl.CurItem.FormatAlignment == GuiLib_FORMAT_ALIGNMENT_CENTER)
+      {
+        Offset = (sgl.CurItem.FormatFieldWidth - StrLen) / 2;
+        if (Offset > 0)
+        {
+          for (N = StrLen - 1; N >= 0; N--)
+            sgl.VarNumTextStr[N + Offset] = sgl.VarNumTextStr[N];
+          for (N = 0; N < Offset; N++)
+            sgl.VarNumTextStr[N] = ' ';
+        }
+        Offset = sgl.CurItem.FormatFieldWidth - StrLen - Offset;
+        if (Offset > 0)
+          for (N = sgl.CurItem.FormatFieldWidth - Offset;
+               N < sgl.CurItem.FormatFieldWidth; N++)
+            sgl.VarNumTextStr[N] = ' ';
+      }
+      else if (sgl.CurItem.FormatAlignment == GuiLib_FORMAT_ALIGNMENT_RIGHT)
+      {
+        for (N = 1; N <= StrLen; N++)
+          sgl.VarNumTextStr[sgl.CurItem.FormatFieldWidth - N] =
+            sgl.VarNumTextStr[StrLen - N];
+        for (N = 0; N < sgl.CurItem.FormatFieldWidth - StrLen; N++)
+          sgl.VarNumTextStr[N] = ' ';
+      }
+    }
+    sgl.VarNumTextStr[sgl.CurItem.FormatFieldWidth] = 0;
+    return (sgl.CurItem.FormatFieldWidth);
+  }
+  else
+  {
+    sgl.VarNumTextStr[StrLen] = 0;
+    return (StrLen);
+  }
+}
+
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+//------------------------------------------------------------------------------
+static GuiLib_StructPtr GetRemoteStructData(
+   GuiConst_INT32S StructIndex)
+{
+  sgl.RemoteStructOffset =
+     (GuiConst_INT32U PrefixRom)GuiStruct_StructPtrList[StructIndex];
+  GuiLib_RemoteDataReadBlock(
+     sgl.RemoteStructOffset,
+     1,
+     sgl.GuiLib_RemoteStructBuffer);
+  sgl.RemoteStructOffset++;
+  return((GuiLib_StructPtr)&sgl.GuiLib_RemoteStructBuffer[0]);
+}
+
+#ifdef GuiConst_REMOTE_TEXT_DATA
+//------------------------------------------------------------------------------
+static GuiConst_INT16U GetRemoteText(
+   GuiConst_INT16U TextIndex)
+{
+  GuiConst_INT32S TextOfs;
+
+  if (TextIndex != sgl.CurRemoteText)
+  {
+    if (sgl.RemoteTextTableOfs == -1)
+      GuiLib_RemoteTextReadBlock(4, 4, &sgl.RemoteTextTableOfs);
+
+    GuiLib_RemoteTextReadBlock(sgl.RemoteTextTableOfs + 6 * TextIndex, 4, &TextOfs);
+    GuiLib_RemoteTextReadBlock(
+       sgl.RemoteTextTableOfs + 6 * TextIndex + 4, 2, &sgl.RemoteTextLen);
+
+#ifdef GuiConst_CHARMODE_ANSI
+    GuiLib_RemoteTextReadBlock(TextOfs, sgl.RemoteTextLen, sgl.GuiLib_RemoteTextBuffer);
+#else
+    GuiLib_RemoteTextReadBlock(TextOfs, 2 * sgl.RemoteTextLen, sgl.GuiLib_RemoteTextBuffer);
+#endif
+    sgl.CurRemoteText = TextIndex;
+  }
+  return(sgl.RemoteTextLen);
+}
+#endif
+
+#endif
+
+#ifdef GuiConst_CHARMODE_UNICODE
+//------------------------------------------------------------------------------
+static void ExtractUnicodeString(
+   GuiConst_INT8U PrefixLocate *ItemTextPtr,
+   GuiConst_INT16U TextLength)
+{
+  GuiConst_INT16U P;
+
+  for (P = 0; P < TextLength; P++)
+    sgl.UnicodeTextBuf[P] = GetItemWord(&ItemTextPtr);
+  sgl.UnicodeTextBuf[TextLength] = 0;
+}
+#endif
+
+//------------------------------------------------------------------------------
+static void SetCurFont(
+   GuiConst_INT8U FontIndex)
+{
+  if (FontIndex >= GuiFont_FontCnt)
+    sgl.CurFont = (GuiLib_FontRecPtr)ReadWord(GuiFont_FontList[0]);
+  else
+    sgl.CurFont = (GuiLib_FontRecPtr)ReadWord(GuiFont_FontList[FontIndex]);
+}
+
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+//------------------------------------------------------------------------------
+static void UpdateBackgroundBitmap(void)
+{
+  GuiConst_INT8U BackgroundOn;
+  GuiConst_INT16U BackgroundX1, BackgroundY1, BackgroundX2, BackgroundY2;
+  GuiConst_INT16S N;
+
+  for (N = 0; N < GuiConst_MAX_BACKGROUND_BITMAPS; N++)
+    if (sgl.BackgrBitmapAry[N].InUse)
+    {
+      BackgroundOn = 0;
+      switch (sgl.CurItem.ItemType)
+      {
+        case GuiLib_ITEM_TEXT:
+        case GuiLib_ITEM_VAR:
+          BackgroundOn = 1;
+          if (sgl.CurItem.TextPar[0].BackBoxSizeX == 0)
+          {
+            BackgroundX1 = sgl.CurItem.DrawnX1;
+            BackgroundY1 = sgl.CurItem.DrawnY1;
+            BackgroundX2 = sgl.CurItem.DrawnX2;
+            BackgroundY2 = sgl.CurItem.DrawnY2;
+          }
+          else
+          {
+            SetCurFont(sgl.CurItem.TextPar[0].FontIndex);
+            SetBackBox(0);
+            BackgroundX1 = sgl.BbX1;
+            BackgroundY1 = sgl.BbY1;
+            BackgroundX2 = sgl.BbX2;
+            BackgroundY2 = sgl.BbY2;
+          }
+          break;
+
+        case GuiLib_ITEM_STRUCTURE:
+        case GuiLib_ITEM_STRUCTARRAY:
+        case GuiLib_ITEM_STRUCTCOND:
+          if (sgl.CurItem.Drawn)
+          {
+            BackgroundOn = 1;
+            BackgroundX1 = sgl.CurItem.DrawnX1;
+            BackgroundY1 = sgl.CurItem.DrawnY1;
+            BackgroundX2 = sgl.CurItem.DrawnX2;
+            BackgroundY2 = sgl.CurItem.DrawnY2;
+          }
+          break;
+
+        case GuiLib_ITEM_TEXTBLOCK:
+        case GuiLib_ITEM_VARBLOCK:
+        case GuiLib_ITEM_CHECKBOX:
+        case GuiLib_ITEM_BUTTON:
+        case GuiLib_ITEM_EDITBOX:
+        case GuiLib_ITEM_PANEL:
+        case GuiLib_ITEM_MEMO:
+        case GuiLib_ITEM_LISTBOX:
+        case GuiLib_ITEM_COMBOBOX:
+        case GuiLib_ITEM_SCROLLBOX:
+        case GuiLib_ITEM_SCROLLAREA:
+        case GuiLib_ITEM_PROGRESSBAR:
+          if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_TRANSPARENT)
+          {
+            BackgroundOn = 1;
+            SetBackColorBox(sgl.CurItem.X1, sgl.CurItem.Y1,
+                            sgl.CurItem.X2, sgl.CurItem.Y2,
+                            0);
+            BackgroundX1 = sgl.BbX1;
+            BackgroundY1 = sgl.BbY1;
+            BackgroundX2 = sgl.BbX2;
+            BackgroundY2 = sgl.BbY2;
+          }
+          break;
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+        case GuiLib_ITEM_RADIOBUTTON:
+          if (sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_TRANSPARENT)
+          {
+            BackgroundOn = 1;
+            SetBackColorBox(sgl.CurItem.X1,
+                            sgl.CurItem.Y1,
+                            sgl.CurItem.X2,
+                            sgl.CurItem.Y2 +
+                              (sgl.CurItem.CompPars.CompRadioButton.Count - 1) *
+                               sgl.CurItem.CompPars.CompRadioButton.InterDistance,
+                            0);
+            BackgroundX1 = sgl.BbX1;
+            BackgroundY1 = sgl.BbY1;
+            BackgroundX2 = sgl.BbX2;
+            BackgroundY2 = sgl.BbY2;
+          }
+          break;
+#endif
+      }
+      if (BackgroundOn)
+        GuiLib_ShowBitmapArea(sgl.BackgrBitmapAry[N].Index,
+           sgl.BackgrBitmapAry[N].X, sgl.BackgrBitmapAry[N].Y,
+           BackgroundX1, BackgroundY1, BackgroundX2, BackgroundY2, -1);
+    }
+}
+#endif
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+//------------------------------------------------------------------------------
+static void StartClipping(
+   GuiConst_INT8U Clipping)
+{
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+  sgl.CurItem.ClipRectX1 += sgl.CoordOrigoX;
+  sgl.CurItem.ClipRectY1 += sgl.CoordOrigoY;
+  sgl.CurItem.ClipRectX2 += sgl.CoordOrigoX;
+  sgl.CurItem.ClipRectY2 += sgl.CoordOrigoY;
+#endif
+  if (Clipping)
+  {
+    OrderCoord(&sgl.CurItem.ClipRectX1, &sgl.CurItem.ClipRectX2);
+    OrderCoord(&sgl.CurItem.ClipRectY1, &sgl.CurItem.ClipRectY2);
+    if (sgl.CurItem.ClipRectX1 < sgl.ActiveAreaX1)
+      sgl.CurItem.ClipRectX1 = sgl.ActiveAreaX1;
+    if (sgl.CurItem.ClipRectY1 < sgl.ActiveAreaY1)
+      sgl.CurItem.ClipRectY1 = sgl.ActiveAreaY1;
+    if (sgl.CurItem.ClipRectX2 > sgl.ActiveAreaX2)
+      sgl.CurItem.ClipRectX2 = sgl.ActiveAreaX2;
+    if (sgl.CurItem.ClipRectY2 > sgl.ActiveAreaY2)
+      sgl.CurItem.ClipRectY2 = sgl.ActiveAreaY2;
+  }
+  else
+  {
+    sgl.CurItem.ClipRectX1 = sgl.ActiveAreaX1;
+    sgl.CurItem.ClipRectY1 = sgl.ActiveAreaY1;
+    sgl.CurItem.ClipRectX2 = sgl.ActiveAreaX2;
+    sgl.CurItem.ClipRectY2 = sgl.ActiveAreaY2;
+  }
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+  sgl.CurItem.ClipRectX1 -= sgl.CoordOrigoX;
+  sgl.CurItem.ClipRectY1 -= sgl.CoordOrigoY;
+  sgl.CurItem.ClipRectX2 -= sgl.CoordOrigoX;
+  sgl.CurItem.ClipRectY2 -= sgl.CoordOrigoY;
+#endif
+  GuiLib_SetClipping(sgl.CurItem.ClipRectX1, sgl.CurItem.ClipRectY1,
+                     sgl.CurItem.ClipRectX2, sgl.CurItem.ClipRectY2);
+}
+#endif
+
+//------------------------------------------------------------------------------
+static void PrepareInternalStruct(void)
+{
+  sgl.Memory.X[GuiLib_MEMORY_CNT] = sgl.CurItem.X1;
+  sgl.Memory.Y[GuiLib_MEMORY_CNT] = sgl.CurItem.Y1;
+}
+
+//------------------------------------------------------------------------------
+static void DrawSubStruct(
+   GuiConst_INT16U SubStructIndex,
+   GuiConst_INT8U ColorInvert,
+   GuiConst_INT8U SubInt)
+{
+  GuiLib_ItemRec RemCurItem;
+  GuiLib_StructPtr StructToCall;
+  GuiConst_INT8U RemBackBox;
+  GuiConst_INT16S RemBbX1, RemBbX2;
+  GuiConst_INT16S RemBbY1, RemBbY2;
+  GuiConst_INT8U RemDrawn;
+  GuiConst_INT16S RemDrawnX1, RemDrawnY1, RemDrawnX2, RemDrawnY2;
+  GuiConst_INT16S RemAutoRedrawSaveIndex;
+  GuiConst_INT16S RemAutoRedrawParent;
+  GuiConst_INT16S RemAutoRedrawLatest;
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  GuiConst_INT32U RemRemoteStructOffset;
+#endif
+
+  if (SubStructIndex != 0xFFFF)
+  {
+    RemAutoRedrawParent = sgl.AutoRedrawParent;
+    RemAutoRedrawLatest = sgl.AutoRedrawLatest;
+
+    sgl.AutoRedrawParent = sgl.AutoRedrawLatest;
+
+    if (SubInt)
+      memcpy(&RemCurItem, &sgl.CurItem, sizeof(GuiLib_ItemRec));
+
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+    RemRemoteStructOffset = sgl.RemoteStructOffset;
+#endif
+    RemBackBox = (sgl.CurItem.TextPar[0].BackBoxSizeX);
+    RemBbX1 = sgl.BbX1;
+    RemBbX2 = sgl.BbX2;
+    RemBbY1 = sgl.BbY1;
+    RemBbY2 = sgl.BbY2;
+    RemDrawn = gl.Drawn;
+    RemDrawnX1 = gl.DrawnX1;
+    RemDrawnY1 = gl.DrawnY1;
+    RemDrawnX2 = gl.DrawnX2;
+    RemDrawnY2 = gl.DrawnY2;
+    ResetDrawLimits();
+    RemAutoRedrawSaveIndex = sgl.AutoRedrawSaveIndex;
+
+    sgl.DisplayLevel++;
+    StructToCall =
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+       GetRemoteStructData(SubStructIndex);
+#else
+       (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[SubStructIndex]);
+#endif
+    DrawStructure(StructToCall, ColorInvert);
+    sgl.DisplayLevel--;
+
+    if (RemBackBox)
+    {
+      sgl.CurItem.Drawn = 1;
+      sgl.CurItem.DrawnX1 = RemBbX1;
+      sgl.CurItem.DrawnY1 = RemBbY1;
+      sgl.CurItem.DrawnX2 = RemBbX2;
+      sgl.CurItem.DrawnY2 = RemBbY2;
+
+      gl.DrawnX1 = GuiLib_GET_MIN(sgl.BbX1, RemDrawnX1);
+      gl.DrawnY1 = GuiLib_GET_MIN(sgl.BbY1, RemDrawnY1);
+      gl.DrawnX2 = GuiLib_GET_MAX(sgl.BbX2, RemDrawnX2);
+      gl.DrawnY2 = GuiLib_GET_MAX(sgl.BbY2, RemDrawnY2);
+    }
+    else if (gl.Drawn)
+    {
+      sgl.CurItem.Drawn = 1;
+      sgl.CurItem.DrawnX1 = gl.DrawnX1;
+      sgl.CurItem.DrawnY1 = gl.DrawnY1;
+      sgl.CurItem.DrawnX2 = gl.DrawnX2;
+      sgl.CurItem.DrawnY2 = gl.DrawnY2;
+
+      gl.DrawnX1 = GuiLib_GET_MIN(gl.DrawnX1, RemDrawnX1);
+      gl.DrawnY1 = GuiLib_GET_MIN(gl.DrawnY1, RemDrawnY1);
+      gl.DrawnX2 = GuiLib_GET_MAX(gl.DrawnX2, RemDrawnX2);
+      gl.DrawnY2 = GuiLib_GET_MAX(gl.DrawnY2, RemDrawnY2);
+    }
+    else
+    {
+      gl.Drawn = RemDrawn;
+      gl.DrawnX1 = RemDrawnX1;
+      gl.DrawnY1 = RemDrawnY1;
+      gl.DrawnX2 = RemDrawnX2;
+      gl.DrawnY2 = RemDrawnY2;
+    }
+    sgl.AutoRedrawSaveIndex = RemAutoRedrawSaveIndex;
+
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+    sgl.RemoteStructOffset = RemRemoteStructOffset;
+#endif
+
+    if (SubInt)
+      memcpy(&sgl.CurItem, &RemCurItem, sizeof(GuiLib_ItemRec));
+
+    sgl.AutoRedrawLatest = RemAutoRedrawLatest;
+    sgl.AutoRedrawParent = RemAutoRedrawParent;
+  }
+}
+
+#include "GuiItems.h"
+
+//------------------------------------------------------------------------------
+static void DrawStructure(
+   GuiLib_StructPtr Structure,
+   GuiConst_INT8U ColorInvert) PrefixReentrant
+{
+  GuiConst_INT16S ItemNdx;
+  GuiConst_INT16S X, RemAutoRedrawLatest;
+  void PrefixLocate *XVarPtr;
+  void PrefixLocate *YVarPtr;
+  GuiConst_INT8U ItemCnt;
+  GuiConst_INT8U PrefixLocate *LocalItemDataPtr;
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  GuiConst_INT16S I;
+#endif
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  GuiConst_INT8U ItemSizeBuf[2];
+  GuiConst_INT16U ItemSize;
+#endif
+
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  LocalItemDataPtr = sgl.GuiLib_RemoteStructBuffer;
+#else
+  LocalItemDataPtr = (GuiConst_INT8U PrefixLocate *)Structure;
+#endif
+  ItemCnt = GetItemByte(&LocalItemDataPtr);
+
+  for (ItemNdx = 0; ItemNdx < ItemCnt; ItemNdx++)
+  {
+    RemAutoRedrawLatest = sgl.AutoRedrawLatest;
+
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+    GuiLib_RemoteDataReadBlock(
+       sgl.RemoteStructOffset,
+       2,
+       (GuiConst_INT8U*)&ItemSizeBuf);
+    ItemSize = (256 * (GuiConst_INT16U)ItemSizeBuf[1]) + ItemSizeBuf[0];
+    sgl.RemoteStructOffset += 2;
+    GuiLib_RemoteDataReadBlock(
+       sgl.RemoteStructOffset,
+       ItemSize,
+       sgl.GuiLib_RemoteItemBuffer);
+    sgl.RemoteStructOffset += ItemSize;
+    LocalItemDataPtr = &sgl.GuiLib_RemoteItemBuffer[0];
+#endif
+
+    sgl.ItemDataPtr = LocalItemDataPtr;
+    ReadItem(GuiLib_LanguageIndex);
+    LocalItemDataPtr = sgl.ItemDataPtr;
+
+    if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_CLEARAREA +
+                             GuiLib_ITEMBIT_TEXT +
+                             GuiLib_ITEMBIT_TEXTBLOCK +
+                             GuiLib_ITEMBIT_DOT +
+                             GuiLib_ITEMBIT_LINE +
+                             GuiLib_ITEMBIT_FRAME +
+                             GuiLib_ITEMBIT_BLOCK +
+                             GuiLib_ITEMBIT_CIRCLE +
+                             GuiLib_ITEMBIT_ELLIPSE +
+                             GuiLib_ITEMBIT_BITMAP +
+                             GuiLib_ITEMBIT_BACKGROUND +
+                             GuiLib_ITEMBIT_STRUCTURE +
+                             GuiLib_ITEMBIT_STRUCTARRAY +
+                             GuiLib_ITEMBIT_ACTIVEAREA +
+                             GuiLib_ITEMBIT_CLIPRECT +
+                             GuiLib_ITEMBIT_VAR +
+                             GuiLib_ITEMBIT_VARBLOCK +
+                             GuiLib_ITEMBIT_TOUCHAREA +
+                             GuiLib_ITEMBIT_SCROLLBOX +
+                             GuiLib_ITEMBIT_GRAPH +
+                             GuiLib_ITEMBIT_GRAPHICSLAYER)) ||
+        (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                             GuiLib_ITEMBIT_ROUNDEDBLOCK +
+                             GuiLib_ITEMBIT_QUARTERCIRCLE +
+                             GuiLib_ITEMBIT_QUARTERELLIPSE +
+                             GuiLib_ITEMBIT_CHECKBOX +
+                             GuiLib_ITEMBIT_RADIOBUTTON +
+                             GuiLib_ITEMBIT_BUTTON +
+                             GuiLib_ITEMBIT_EDITBOX +
+                             GuiLib_ITEMBIT_PANEL +
+                             GuiLib_ITEMBIT_MEMO +
+                             GuiLib_ITEMBIT_LISTBOX +
+                             GuiLib_ITEMBIT_COMBOBOX +
+                             GuiLib_ITEMBIT_SCROLLAREA +
+                             GuiLib_ITEMBIT_PROGRESSBAR +
+                             GuiLib_ITEMBIT_STRUCTCOND +
+                             GuiLib_ITEMBIT_POSCALLBACK)))
+    {
+      if (sgl.CommonByte2 & 0x10)
+      {
+        XVarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[sgl.X1VarIdx]);
+        sgl.X1VarType = ReadByte(GuiStruct_VarTypeList[sgl.X1VarIdx]);
+      }
+      else
+        XVarPtr = 0;
+      if (XVarPtr != 0)
+        sgl.ItemX1 += ReadVar(XVarPtr, sgl.X1VarType);
+      if (sgl.X1MemoryRead > 0)
+        sgl.ItemX1 += sgl.Memory.X[sgl.X1MemoryRead - 1];
+      if (sgl.X1Mode == GuiLib_COOR_REL)
+        sgl.ItemX1 += sgl.CurItem.RX;
+      else if (sgl.X1Mode == GuiLib_COOR_REL_1)
+        sgl.ItemX1 += sgl.CurItem.RX1;
+      else if (sgl.X1Mode == GuiLib_COOR_REL_2)
+        sgl.ItemX1 += sgl.CurItem.RX2;
+      if (sgl.X1MemoryWrite > 0)
+        sgl.Memory.X[sgl.X1MemoryWrite - 1] = sgl.ItemX1;
+      sgl.CurItem.X1 = sgl.ItemX1;
+
+      if (sgl.CommonByte2 & 0x20)
+      {
+        YVarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[sgl.Y1VarIdx]);
+        sgl.Y1VarType = ReadByte(GuiStruct_VarTypeList[sgl.Y1VarIdx]);
+      }
+      else
+        YVarPtr = 0;
+      if (YVarPtr != 0)
+        sgl.ItemY1 += ReadVar(YVarPtr, sgl.Y1VarType);
+      if (sgl.Y1MemoryRead > 0)
+        sgl.ItemY1 += sgl.Memory.Y[sgl.Y1MemoryRead - 1];
+      if (sgl.Y1Mode == GuiLib_COOR_REL)
+        sgl.ItemY1 += sgl.CurItem.RY;
+      else if (sgl.Y1Mode == GuiLib_COOR_REL_1)
+        sgl.ItemY1 += sgl.CurItem.RY1;
+      else if (sgl.Y1Mode == GuiLib_COOR_REL_2)
+        sgl.ItemY1 += sgl.CurItem.RY2;
+      if (sgl.Y1MemoryWrite > 0)
+        sgl.Memory.Y[sgl.Y1MemoryWrite - 1] = sgl.ItemY1;
+      sgl.CurItem.Y1 = sgl.ItemY1;
+
+      sgl.CurItem.RX = sgl.CurItem.X1;
+      sgl.CurItem.RY = sgl.CurItem.Y1;
+    }
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+    if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_SCROLLBOX)
+    {
+      sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].X1 = sgl.CurItem.X1;
+      sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].Y1 = sgl.CurItem.Y1;
+      sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].BackColor = sgl.CurItem.BackColor;
+
+#ifndef GuiConst_SCROLLITEM_BAR_NONE
+      if ((sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].BarMode & 0x03) ==
+         GuiLib_COOR_REL)
+        sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].BarPositionX += sgl.CurItem.X1;
+      if (((sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].BarMode >> 2) & 0x03) ==
+         GuiLib_COOR_REL)
+        sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].BarPositionY += sgl.CurItem.Y1;
+#endif
+#ifndef GuiConst_SCROLLITEM_INDICATOR_NONE
+      if ((sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].IndicatorMode & 0x03) ==
+         GuiLib_COOR_REL)
+        sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].IndicatorPositionX += sgl.CurItem.X1;
+      if (((sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].IndicatorMode >> 2) & 0x03) ==
+         GuiLib_COOR_REL)
+        sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].IndicatorPositionY += sgl.CurItem.Y1;
+#endif
+    }
+#endif
+
+    if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_CLEARAREA +
+                             GuiLib_ITEMBIT_TEXTBLOCK +
+                             GuiLib_ITEMBIT_VARBLOCK +
+                             GuiLib_ITEMBIT_LINE +
+                             GuiLib_ITEMBIT_FRAME +
+                             GuiLib_ITEMBIT_BLOCK +
+                             GuiLib_ITEMBIT_BITMAP +
+                             GuiLib_ITEMBIT_BACKGROUND +
+                             GuiLib_ITEMBIT_ACTIVEAREA +
+                             GuiLib_ITEMBIT_CLIPRECT +
+                             GuiLib_ITEMBIT_TOUCHAREA +
+                             GuiLib_ITEMBIT_GRAPH +
+                             GuiLib_ITEMBIT_GRAPHICSLAYER)) ||
+        (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                             GuiLib_ITEMBIT_ROUNDEDBLOCK +
+                             GuiLib_ITEMBIT_BUTTON +
+                             GuiLib_ITEMBIT_EDITBOX +
+                             GuiLib_ITEMBIT_PANEL +
+                             GuiLib_ITEMBIT_MEMO +
+                             GuiLib_ITEMBIT_LISTBOX +
+                             GuiLib_ITEMBIT_COMBOBOX +
+                             GuiLib_ITEMBIT_SCROLLAREA +
+                             GuiLib_ITEMBIT_PROGRESSBAR)))
+    {
+      if (sgl.CommonByte2 & 0x40)
+      {
+        XVarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[sgl.X2VarIdx]);
+        sgl.X2VarType = ReadByte(GuiStruct_VarTypeList[sgl.X2VarIdx]);
+      }
+      else
+        XVarPtr = 0;
+      if (XVarPtr != 0)
+        sgl.ItemX2 += ReadVar(XVarPtr, sgl.X2VarType);
+      if (sgl.X2MemoryRead > 0)
+        sgl.ItemX2 += sgl.Memory.X[sgl.X2MemoryRead - 1];
+      if (sgl.X2Mode == GuiLib_COOR_REL)
+        sgl.ItemX2 += sgl.CurItem.X1;
+      else if (sgl.X2Mode == GuiLib_COOR_REL_1)
+        sgl.ItemX2 += sgl.CurItem.RX1;
+      else if (sgl.X2Mode == GuiLib_COOR_REL_2)
+        sgl.ItemX2 += sgl.CurItem.RX2;
+      if (sgl.X2MemoryWrite > 0)
+        sgl.Memory.X[sgl.X2MemoryWrite - 1] = sgl.ItemX2;
+      sgl.CurItem.X2 = sgl.ItemX2;
+
+      if (sgl.CommonByte2 & 0x80)
+      {
+        YVarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[sgl.Y2VarIdx]);
+        sgl.Y2VarType = ReadByte(GuiStruct_VarTypeList[sgl.Y2VarIdx]);
+      }
+      else
+        YVarPtr = 0;
+      if (YVarPtr != 0)
+        sgl.ItemY2 += ReadVar(YVarPtr, sgl.Y2VarType);
+      if (sgl.Y2MemoryRead > 0)
+        sgl.ItemY2 += sgl.Memory.Y[sgl.Y2MemoryRead - 1];
+      if (sgl.Y2Mode == GuiLib_COOR_REL)
+        sgl.ItemY2 += sgl.CurItem.Y1;
+      else if (sgl.Y2Mode == GuiLib_COOR_REL_1)
+        sgl.ItemY2 += sgl.CurItem.RY1;
+      else if (sgl.Y2Mode == GuiLib_COOR_REL_2)
+        sgl.ItemY2 += sgl.CurItem.RY2;
+      if (sgl.Y2MemoryWrite > 0)
+        sgl.Memory.Y[sgl.Y2MemoryWrite - 1] = sgl.ItemY2;
+      sgl.CurItem.Y2 = sgl.ItemY2;
+    }
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+    else if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_CHECKBOX)
+    {
+      switch (sgl.CurItem.CompPars.CompCheckBox.Style)
+      {
+        case GuiLib_CHECKBOX_FLAT:
+        case GuiLib_CHECKBOX_3D:
+        case GuiLib_CHECKBOX_NONE:
+          sgl.CurItem.X2 = sgl.CurItem.X1 +
+                           sgl.CurItem.CompPars.CompCheckBox.Size - 1;
+          sgl.CurItem.Y2 = sgl.CurItem.Y1 +
+                           sgl.CurItem.CompPars.CompCheckBox.Size - 1;
+          break;
+        case GuiLib_CHECKBOX_ICON:
+          sgl.CurItem.X2 = sgl.CurItem.X1;
+          sgl.CurItem.Y2 = sgl.CurItem.Y1;
+          break;
+        case GuiLib_CHECKBOX_BITMAP:
+          sgl.CurItem.X2 = sgl.CurItem.X1;
+          sgl.CurItem.Y2 = sgl.CurItem.Y1;
+          break;
+      }
+    }
+#endif
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+    else if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_RADIOBUTTON)
+    {
+      switch (sgl.CurItem.CompPars.CompRadioButton.Style)
+      {
+        case GuiLib_RADIOBUTTON_FLAT:
+        case GuiLib_RADIOBUTTON_3D:
+          sgl.CurItem.X2 = sgl.CurItem.X1 +
+                           2 * sgl.CurItem.CompPars.CompRadioButton.Size;
+          sgl.CurItem.Y2 = sgl.CurItem.Y1 +
+                           2 * sgl.CurItem.CompPars.CompRadioButton.Size;
+          break;
+        case GuiLib_RADIOBUTTON_ICON:
+          sgl.CurItem.X2 = sgl.CurItem.X1;
+          sgl.CurItem.Y2 = sgl.CurItem.Y1;
+          break;
+        case GuiLib_RADIOBUTTON_BITMAP:
+          sgl.CurItem.X2 = sgl.CurItem.X1;
+          sgl.CurItem.Y2 = sgl.CurItem.Y1;
+          break;
+      }
+    }
+#endif
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+    else if (sgl.ItemTypeBit2 & GuiLib_ITEMBIT_BUTTON)
+    {
+      sgl.CurItem.X2 = sgl.CurItem.X1;
+      sgl.CurItem.Y2 = sgl.CurItem.Y1;
+    }
+#endif
+
+    if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_CIRCLE +
+                             GuiLib_ITEMBIT_ELLIPSE)) ||
+        (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                             GuiLib_ITEMBIT_ROUNDEDBLOCK +
+                             GuiLib_ITEMBIT_QUARTERCIRCLE +
+                             GuiLib_ITEMBIT_QUARTERELLIPSE +
+                             GuiLib_ITEMBIT_BUTTON +
+                             GuiLib_ITEMBIT_PANEL)))
+    {
+      if (sgl.CommonByte6 & 0x40)
+      {
+        XVarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[sgl.R1VarIdx]);
+        sgl.R1VarType = ReadByte(GuiStruct_VarTypeList[sgl.R1VarIdx]);
+      }
+      else
+        XVarPtr = 0;
+      if (XVarPtr != 0)
+        sgl.ItemR1 += ReadVar(XVarPtr, sgl.R1VarType);
+      if (sgl.R1MemoryRead > 0)
+        sgl.ItemR1 += sgl.Memory.X[sgl.R1MemoryRead - 1];
+      if (sgl.R1Mode == GuiLib_COOR_REL)
+        sgl.ItemR1 += sgl.CurItem.X1;
+      else if (sgl.R1Mode == GuiLib_COOR_REL_1)
+        sgl.ItemR1 += sgl.CurItem.RX1;
+      else if (sgl.R1Mode == GuiLib_COOR_REL_2)
+        sgl.ItemR1 += sgl.CurItem.RX2;
+      if (sgl.R1MemoryWrite > 0)
+        sgl.Memory.X[sgl.R1MemoryWrite - 1] = sgl.ItemR1;
+      sgl.CurItem.R1 = sgl.ItemR1;
+    }
+
+    if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_ELLIPSE)) ||
+        (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_QUARTERELLIPSE)))
+    {
+      if (sgl.CommonByte6 & 0x80)
+      {
+        YVarPtr = (void PrefixLocate *)ReadWord(GuiStruct_VarPtrList[sgl.R2VarIdx]);
+        sgl.R2VarType = ReadByte(GuiStruct_VarTypeList[sgl.R2VarIdx]);
+      }
+      else
+        YVarPtr = 0;
+      if (YVarPtr != 0)
+        sgl.ItemR2 += ReadVar(YVarPtr, sgl.R2VarType);
+      if (sgl.R2MemoryRead > 0)
+        sgl.ItemR2 += sgl.Memory.Y[sgl.R2MemoryRead - 1];
+      if (sgl.R2Mode == GuiLib_COOR_REL)
+        sgl.ItemR2 += sgl.CurItem.Y1;
+      else if (sgl.R2Mode == GuiLib_COOR_REL_1)
+        sgl.ItemR2 += sgl.CurItem.RY1;
+      else if (sgl.R2Mode == GuiLib_COOR_REL_2)
+        sgl.ItemR2 += sgl.CurItem.RY2;
+      if (sgl.R2MemoryWrite > 0)
+        sgl.Memory.Y[sgl.R2MemoryWrite - 1] = sgl.ItemR2;
+      sgl.CurItem.R2 = sgl.ItemR2;
+    }
+
+    if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_CLEARAREA +
+                             GuiLib_ITEMBIT_TEXTBLOCK +
+                             GuiLib_ITEMBIT_VARBLOCK +
+                             GuiLib_ITEMBIT_LINE +
+                             GuiLib_ITEMBIT_FRAME +
+                             GuiLib_ITEMBIT_BLOCK +
+                             GuiLib_ITEMBIT_BITMAP +
+                             GuiLib_ITEMBIT_BACKGROUND +
+                             GuiLib_ITEMBIT_ACTIVEAREA +
+                             GuiLib_ITEMBIT_CLIPRECT +
+                             GuiLib_ITEMBIT_TOUCHAREA +
+                             GuiLib_ITEMBIT_GRAPH +
+                             GuiLib_ITEMBIT_GRAPHICSLAYER)) ||
+        (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_ROUNDEDFRAME +
+                             GuiLib_ITEMBIT_ROUNDEDBLOCK +
+                             GuiLib_ITEMBIT_CHECKBOX +
+                             GuiLib_ITEMBIT_RADIOBUTTON +
+                             GuiLib_ITEMBIT_BUTTON +
+                             GuiLib_ITEMBIT_EDITBOX +
+                             GuiLib_ITEMBIT_PANEL +
+                             GuiLib_ITEMBIT_MEMO +
+                             GuiLib_ITEMBIT_LISTBOX +
+                             GuiLib_ITEMBIT_COMBOBOX +
+                             GuiLib_ITEMBIT_SCROLLAREA +
+                             GuiLib_ITEMBIT_PROGRESSBAR)))
+    {
+      X = sgl.CurItem.X2 - sgl.CurItem.X1;
+      if (sgl.CurItem.TextPar[0].Alignment == GuiLib_ALIGN_CENTER)
+      {
+        sgl.CurItem.X1 -= X / 2;
+        sgl.CurItem.X2 -= X / 2;
+      }
+      else if (sgl.CurItem.TextPar[0].Alignment == GuiLib_ALIGN_RIGHT)
+      {
+        sgl.CurItem.X1 -= X;
+        sgl.CurItem.X2 -= X;
+      }
+    }
+    else if ((sgl.ItemTypeBit1 & (GuiLib_ITEMBIT_CIRCLE +
+                                  GuiLib_ITEMBIT_ELLIPSE)) ||
+             (sgl.ItemTypeBit2 & (GuiLib_ITEMBIT_QUARTERCIRCLE +
+                                  GuiLib_ITEMBIT_QUARTERELLIPSE)))
+    {
+      if (sgl.CurItem.TextPar[0].Alignment == GuiLib_ALIGN_CENTER)
+        sgl.CurItem.X1 -= sgl.CurItem.R1;
+      else if (sgl.CurItem.TextPar[0].Alignment == GuiLib_ALIGN_RIGHT)
+        sgl.CurItem.X1 -= 2 * sgl.CurItem.R1;
+    }
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+    if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_SCROLLBOX)
+      memcpy(&sgl.ScrollBoxesAry[sgl.GlobalScrollBoxIndex].ScrollBoxItem, &sgl.CurItem,
+         sizeof(GuiLib_ItemRec));
+#endif
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+    if (sgl.ItemTypeBit1 & GuiLib_ITEMBIT_GRAPH)
+    {
+      memcpy(&sgl.GraphAry[sgl.GlobalGraphIndex].GraphItem, &sgl.CurItem,
+         sizeof(GuiLib_ItemRec));
+      OrderCoord(&sgl.GraphAry[sgl.GlobalGraphIndex].GraphItem.X1,
+                 &sgl.GraphAry[sgl.GlobalGraphIndex].GraphItem.X2);
+      OrderCoord(&sgl.GraphAry[sgl.GlobalGraphIndex].GraphItem.Y1,
+                 &sgl.GraphAry[sgl.GlobalGraphIndex].GraphItem.Y2);
+      sgl.GraphAry[sgl.GlobalGraphIndex].OrigoX =
+         sgl.GraphAry[sgl.GlobalGraphIndex].GraphItem.X1 +
+         sgl.GraphAry[sgl.GlobalGraphIndex].OriginOffsetX;
+      sgl.GraphAry[sgl.GlobalGraphIndex].OrigoY =
+         sgl.GraphAry[sgl.GlobalGraphIndex].GraphItem.Y2 -
+         sgl.GraphAry[sgl.GlobalGraphIndex].OriginOffsetY;
+    }
+#endif
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+    if (sgl.NextScrollLineReading)
+      sgl.DisplayWriting = 0;
+    else
+#endif
+      sgl.DisplayWriting = 1;
+    DrawItem(ColorInvert);
+
+    sgl.DisplayWriting = 1;
+
+    switch (sgl.CurItem.ItemType)
+    {
+      case GuiLib_ITEM_TEXT:
+      case GuiLib_ITEM_VAR:
+        sgl.CurItem.RX1 = sgl.FontWriteX1;
+        sgl.CurItem.RY1 = sgl.FontWriteY1;
+        sgl.CurItem.RX2 = sgl.FontWriteX2 + 1;
+        sgl.CurItem.RY2 = sgl.FontWriteY2;
+        break;
+      case GuiLib_ITEM_DOT:
+        sgl.CurItem.RX1 = sgl.CurItem.X1;
+        sgl.CurItem.RY1 = sgl.CurItem.Y1;
+        sgl.CurItem.RX2 = sgl.CurItem.X1 + 1;
+        sgl.CurItem.RY2 = sgl.CurItem.Y1;
+        break;
+      case GuiLib_ITEM_CIRCLE:
+      case GuiLib_ITEM_QUARTERCIRCLE:
+        sgl.CurItem.RX1 = sgl.CurItem.X1;
+        sgl.CurItem.RY1 = sgl.CurItem.Y1 - sgl.CurItem.R1;
+        sgl.CurItem.RX2 = sgl.CurItem.X1 + (2 * sgl.CurItem.R1) + 1;
+        sgl.CurItem.RY2 = sgl.CurItem.Y1 + sgl.CurItem.R1;
+        break;
+      case GuiLib_ITEM_ELLIPSE:
+      case GuiLib_ITEM_QUARTERELLIPSE:
+        sgl.CurItem.RX1 = sgl.CurItem.X1;
+        sgl.CurItem.RY1 = sgl.CurItem.Y1 - sgl.CurItem.R2;
+        sgl.CurItem.RX2 = sgl.CurItem.X1 + (2 * sgl.CurItem.R1) + 1;
+        sgl.CurItem.RY2 = sgl.CurItem.Y1 + sgl.CurItem.R2;
+        break;
+      case GuiLib_ITEM_CLEARAREA:
+      case GuiLib_ITEM_LINE:
+      case GuiLib_ITEM_FRAME:
+      case GuiLib_ITEM_ROUNDEDFRAME:
+      case GuiLib_ITEM_BLOCK:
+      case GuiLib_ITEM_ROUNDEDBLOCK:
+      case GuiLib_ITEM_BITMAP:
+      case GuiLib_ITEM_BACKGROUND:
+      case GuiLib_ITEM_ACTIVEAREA:
+      case GuiLib_ITEM_CLIPRECT:
+      case GuiLib_ITEM_TEXTBLOCK:
+      case GuiLib_ITEM_VARBLOCK:
+      case GuiLib_ITEM_CHECKBOX:
+      case GuiLib_ITEM_BUTTON:
+      case GuiLib_ITEM_EDITBOX:
+      case GuiLib_ITEM_PANEL:
+      case GuiLib_ITEM_MEMO:
+      case GuiLib_ITEM_LISTBOX:
+      case GuiLib_ITEM_COMBOBOX:
+      case GuiLib_ITEM_SCROLLAREA:
+      case GuiLib_ITEM_PROGRESSBAR:
+      case GuiLib_ITEM_TOUCHAREA:
+      case GuiLib_ITEM_SCROLLBOX:
+      case GuiLib_ITEM_GRAPH:
+      case GuiLib_ITEM_GRAPHICSLAYER:
+        sgl.CurItem.RX1 = sgl.CurItem.X1;
+        sgl.CurItem.RY1 = sgl.CurItem.Y1;
+        sgl.CurItem.RX2 = sgl.CurItem.X2 + 1;
+        sgl.CurItem.RY2 = sgl.CurItem.Y2;
+        break;
+      case GuiLib_ITEM_POSCALLBACK:
+        sgl.CurItem.RX1 = sgl.CurItem.X1;
+        sgl.CurItem.RY1 = sgl.CurItem.Y1;
+        sgl.CurItem.RX2 = sgl.CurItem.X1;
+        sgl.CurItem.RY2 = sgl.CurItem.Y1;
+        break;
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+      case GuiLib_ITEM_RADIOBUTTON:
+        sgl.CurItem.RX1 = sgl.CurItem.X1;
+        sgl.CurItem.RY1 = sgl.CurItem.Y1;
+        sgl.CurItem.RX2 = sgl.CurItem.X2 + 1;
+        sgl.CurItem.RY2 = sgl.CurItem.Y2 +
+                         (sgl.CurItem.CompPars.CompRadioButton.Count - 1) *
+                          sgl.CurItem.CompPars.CompRadioButton.InterDistance;
+        break;
+#endif
+    }
+
+    sgl.AutoRedrawLatest = RemAutoRedrawLatest;
+  }
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_ShowScreen(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16S CursorFieldToShow,
+   GuiConst_INT8U ResetAutoRedraw)
+{
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+  GuiConst_INT16S M;
+#endif
+  GuiConst_INT16S N;
+  GuiLib_StructPtr StructureToCall;
+
+  GuiDisplay_Lock();
+
+  GuiLib_CurStructureNdx = StructureNdx;
+  StructureToCall =
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+     GetRemoteStructData(StructureNdx);
+#else
+     (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[StructureNdx]);
+#endif
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  sgl.CursorFieldFound = -1;
+  sgl.CursorActiveFieldFound = 0;
+  GuiLib_ActiveCursorFieldNo = CursorFieldToShow;
+  sgl.CursorInUse = (GuiLib_ActiveCursorFieldNo >= 0);
+#else
+  gl.Dummy1_16S = CursorFieldToShow;   // To avoid compiler warning
+#endif
+
+  if ((GuiLib_StructPtr)StructureToCall != 0)
+  {
+    sgl.CurItem.X1 = 0;
+    sgl.CurItem.Y1 = 0;
+    sgl.CurItem.X2 = 0;
+    sgl.CurItem.Y2 = 0;
+    sgl.CurItem.R1 = 0;
+    sgl.CurItem.R2 = 0;
+
+    sgl.CurItem.RX = 0;
+    sgl.CurItem.RY = 0;
+    sgl.CurItem.RX1 = 0;
+    sgl.CurItem.RY1 = 0;
+    sgl.CurItem.RX2 = 0;
+    sgl.CurItem.RY2 = 0;
+
+    for (N = 0; N < 2 * GuiLib_MEMORY_CNT; N++)
+    {
+      sgl.Memory.X[N] = 0;
+      sgl.Memory.Y[N] = 0;
+    }
+    for (N = 0; N < GuiLib_MEMORY_CNT; N++)
+      sgl.Memory.C[N] = 0;
+    sgl.ThicknessMemory = 1;
+
+    sgl.CurItem.ForeColor = GuiConst_PIXEL_ON;
+    sgl.CurItem.BackColor = GuiConst_PIXEL_OFF;
+    sgl.CurItem.BarForeColor = GuiConst_PIXEL_OFF;
+    sgl.CurItem.BarBackColor = GuiConst_PIXEL_ON;
+    sgl.CurItem.ForeColorIndex = 0xFFFF;
+    sgl.CurItem.BackColorIndex = 0xFFFF;
+    sgl.CurItem.BarForeColorIndex = 0xFFFF;
+    sgl.CurItem.BarBackColorIndex = 0xFFFF;
+
+
+    for (N = 0; N < 3; N++)
+    {
+      sgl.CurItem.TextPar[N].BitFlags = GuiLib_BITFLAG_TRANSPARENT;
+      sgl.CurItem.TextPar[N].Alignment = GuiLib_ALIGN_LEFT;
+      sgl.CurItem.TextPar[N].BackBoxSizeX = 0;
+      sgl.CurItem.TextPar[N].FontIndex = 0;
+      sgl.CurItem.TextPar[N].Ps = GuiLib_PS_ON;
+    }
+
+    sgl.CurItem.FormatFieldWidth = 10;
+    sgl.CurItem.FormatDecimals = 0;
+    sgl.CurItem.FormatAlignment = GuiLib_FORMAT_ALIGNMENT_RIGHT;
+    sgl.CurItem.FormatFormat = GuiLib_FORMAT_DEC;
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+    for (N = 0; N < GuiConst_BLINK_FIELDS_MAX; N++)
+    {
+      sgl.BlinkTextItems[N].InUse = 0;
+      sgl.BlinkTextItems[N].Active = 0;
+    }
+#endif
+#endif
+
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+    sgl.TouchAreaCnt = 0;
+#endif
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+    for (M = 0; M < GuiConst_SCROLLITEM_BOXES_MAX; M++)
+    {
+      sgl.ScrollBoxesAry[M].InUse = GuiLib_SCROLL_STRUCTURE_UNDEF;
+      for (N = 0; N < GuiConst_SCROLLITEM_MARKERS_MAX; N++)
+      {
+        sgl.ScrollBoxesAry[M].MarkerColor[N] = GuiConst_PIXEL_ON;
+        sgl.ScrollBoxesAry[M].MarkerColorTransparent[N] = 1;
+      }
+    }
+#endif
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+    for (N = 0; N < GuiConst_GRAPH_MAX; N++)
+      sgl.GraphAry[N].InUse = GuiLib_GRAPH_STRUCTURE_UNDEF;
+#endif
+
+    sgl.BaseLayerDrawing = 1;
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+    GraphicsLayer_Pop(GuiLib_GRAPHICS_LAYER_BASE);
+    for (N = 0; N < GuiConst_GRAPHICS_LAYER_MAX; N++)
+    {
+      sgl.GraphicsLayerList[N].InUse = GuiLib_GRAPHICS_LAYER_UNDEF;
+      sgl.GraphicsFilterList[N].InUse = GuiLib_GRAPHICS_FILTER_UNDEF;
+    }
+#endif
+
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+    sgl.GlobalBackgrBitmapIndex = 0;
+    for (N = 0; N < GuiConst_MAX_BACKGROUND_BITMAPS; N++)
+      sgl.BackgrBitmapAry[N].InUse = 0;
+#endif
+
+    if (ResetAutoRedraw)
+      AutoRedraw_Destroy();
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+    else
+      AutoRedraw_ResetCursor();
+#endif
+
+    sgl.DrawingLevel = 0;
+    sgl.TopLevelStructure = 0;
+
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+    sgl.CurItem.CompPars.CompTextBox.ScrollIndex = 0;
+    sgl.CurItem.CompPars.CompTextBox.ScrollPos = 0;
+    for (N = 0; N < GuiConst_TEXTBOX_FIELDS_MAX; N++)
+      sgl.TextBoxScrollPositions[N].index = -1;
+#endif
+
+    sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+    sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    sgl.CurItem.ClipRectX1 = sgl.DisplayActiveAreaX1;
+    sgl.CurItem.ClipRectY1 = sgl.DisplayActiveAreaY1;
+    sgl.CurItem.ClipRectX2 = sgl.DisplayActiveAreaX2;
+    sgl.CurItem.ClipRectY2 = sgl.DisplayActiveAreaY2;
+    sgl.ActiveAreaX1 = sgl.DisplayActiveAreaX1;
+    sgl.ActiveAreaY1 = sgl.DisplayActiveAreaY1;
+    sgl.ActiveAreaX2 = sgl.DisplayActiveAreaX2;
+    sgl.ActiveAreaY2 = sgl.DisplayActiveAreaY2;
+    if (sgl.DisplayWriting)
+    {
+      if ((sgl.DisplayActiveAreaX1 != 0) || (sgl.DisplayActiveAreaY1 != 0) ||
+          (sgl.DisplayActiveAreaX2 != GuiConst_DISPLAY_WIDTH - 1) ||
+          (sgl.DisplayActiveAreaY2 != GuiConst_DISPLAY_HEIGHT - 1))
+        GuiLib_SetClipping(sgl.DisplayActiveAreaX1, sgl.DisplayActiveAreaY1,
+                           sgl.DisplayActiveAreaX2, sgl.DisplayActiveAreaY2);
+      else
+        GuiLib_ResetClipping();
+    }
+#endif
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+    sgl.CurItem.CursorFieldLevel = 0;
+#endif
+    sgl.DisplayLevel = 0;
+    sgl.InitialDrawing = 1;
+    sgl.SwapColors = 0;
+    DrawStructure((GuiLib_StructPtr) StructureToCall,
+                   GuiLib_COL_INVERT_IF_CURSOR);
+    ResetLayerBufPtr();
+    sgl.InitialDrawing = 0;
+    sgl.CoordOrigoX = sgl.DisplayOrigoX + sgl.LayerOrigoX;
+    sgl.CoordOrigoY = sgl.DisplayOrigoY + sgl.LayerOrigoY;
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+    if (sgl.DisplayWriting)
+      GuiLib_ResetClipping();
+#endif
+  }
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  if (sgl.CursorFieldFound == -1)
+  {
+    sgl.CursorInUse = 0;
+    GuiLib_ActiveCursorFieldNo = -1;
+  }
+  else if (sgl.CursorInUse)
+  {
+    if (sgl.CursorActiveFieldFound == 0)
+    {
+      GuiLib_ActiveCursorFieldNo = sgl.CursorFieldFound;
+
+      DrawCursorItem(1);
+    }
+  }
+#endif
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+  sgl.BlinkBoxInverted = 0;
+#endif
+
+  GuiDisplay_Unlock();
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT16S CheckLanguageIndex(
+   GuiConst_INT16S LanguageIndex)
+{
+  if ((LanguageIndex < 0) || (LanguageIndex > GuiConst_LANGUAGE_CNT - 1))
+    LanguageIndex = 0;
+
+#ifdef GuiConst_LANGUAGE_SOME_ACTIVE
+  if (!ReadByte(GuiFont_LanguageActive[LanguageIndex]))
+    LanguageIndex = GuiConst_LANGUAGE_FIRST;
+#endif
+
+  return(LanguageIndex);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_TEXT PrefixLocate *GuiLib_GetTextLanguagePtr(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16U TextNo,
+   GuiConst_INT16S LanguageIndex)
+{
+  GuiConst_INT16U I;
+  GuiConst_INT16S ItemNdx;
+  GuiConst_INT8U ItemCnt;
+  GuiLib_StructPtr StructureToCall;
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  GuiConst_INT8U ItemSizeBuf[2];
+  GuiConst_INT16U ItemSize;
+#endif
+
+  StructureToCall =
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+     GetRemoteStructData(StructureNdx);
+#else
+     (GuiLib_StructPtr)ReadWord(GuiStruct_StructPtrList[StructureNdx]);
+#endif
+
+  if (StructureToCall != 0)
+  {
+    LanguageIndex = CheckLanguageIndex(LanguageIndex);
+
+    sgl.ItemDataPtr = (GuiConst_INT8U PrefixLocate *)StructureToCall;
+    ItemCnt = GetItemByte(&sgl.ItemDataPtr);
+
+    I = 0;
+    for (ItemNdx = 0; ItemNdx < ItemCnt; ItemNdx++)
+    {
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+      GuiLib_RemoteDataReadBlock(
+         sgl.RemoteStructOffset,
+         2,
+         (GuiConst_INT8U*)&ItemSizeBuf);
+      ItemSize = (256 * (GuiConst_INT16U)ItemSizeBuf[1]) + ItemSizeBuf[0];
+      sgl.RemoteStructOffset += 2;
+      GuiLib_RemoteDataReadBlock(
+         sgl.RemoteStructOffset,
+         ItemSize,
+         sgl.GuiLib_RemoteItemBuffer);
+      sgl.RemoteStructOffset += ItemSize;
+      sgl.ItemDataPtr = &sgl.GuiLib_RemoteItemBuffer[0];
+#endif
+
+      ReadItem(LanguageIndex);
+
+      if ((sgl.CurItem.ItemType == GuiLib_ITEM_TEXT) ||
+          (sgl.CurItem.ItemType == GuiLib_ITEM_TEXTBLOCK))
+      {
+        if (I == TextNo)
+        {
+#ifdef GuiConst_CHARMODE_ANSI
+          return (GuiConst_TEXT PrefixLocate *) sgl.CurItem.TextPtr[0];
+#else
+          #ifdef GuiConst_ICC_COMPILER
+          ExtractUnicodeString((GuiConst_INT8U *)sgl.CurItem.TextPtr[0],
+                               sgl.CurItem.TextLength[0]);
+          #else
+          #ifdef GuiConst_CODEVISION_COMPILER
+          ExtractUnicodeString((GuiConst_INT8U *)sgl.CurItem.TextPtr[0],
+                               sgl.CurItem.TextLength[0]);
+          #else
+          ExtractUnicodeString((GuiConst_INT8U PrefixRom *)sgl.CurItem.TextPtr[0],
+                               sgl.CurItem.TextLength[0]);
+          #endif
+          #endif
+
+          return (sgl.UnicodeTextBuf);
+#endif
+        }
+        I++;
+      }
+    }
+  }
+
+  return (0);
+}
+
+//------------------------------------------------------------------------------
+GuiConst_TEXT PrefixLocate *GuiLib_GetTextPtr(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16U TextNo)
+{
+  return (GuiLib_GetTextLanguagePtr(StructureNdx, TextNo, GuiLib_LanguageIndex));
+}
+
+//------------------------------------------------------------------------------
+GuiConst_INT16U GuiLib_GetTextWidth(
+   GuiConst_TEXT PrefixLocate *String,
+   GuiLib_FontRecConstPtr Font,
+   GuiConst_INT8U PsWriting)
+{
+  GuiLib_ItemRec TextData;
+  GuiConst_INT16U CharCnt;
+
+  if ((String[0] != 0) && (Font != 0))
+  {
+    TextData.TextPar[0].Ps = PsWriting;
+    sgl.CurItem.TextPar[0].Ps = TextData.TextPar[0].Ps;
+#ifdef GuiConst_CHARMODE_ANSI
+    CharCnt = strlen(String);
+#else
+    CharCnt = GuiLib_UnicodeStrLen(String);
+#endif
+    sgl.CurFont = (GuiLib_FontRecPtr)Font;
+#ifdef GuiConst_DISP_VAR_NOW
+    displayVarNow = 1;
+#endif
+
+#ifdef GuiConst_CODEVISION_COMPILER
+    PrepareText((GuiConst_TEXT *)String, CharCnt, 0);
+#else
+#ifdef GuiConst_RENESAS_COMPILER_FAR
+    PrepareText((GuiConst_TEXT PrefixGeneric *)String, CharCnt, 0);
+#else
+    PrepareText(String, CharCnt, 0);
+#endif
+#endif
+#ifdef GuiConst_DISP_VAR_NOW
+    displayVarNow = 0;
+#endif
+
+    return (TextPixelLength(TextData.TextPar[0].Ps, CharCnt, 0));
+  }
+
+  return (0);
+}
+
+//---------------------------------------------------------------
+static GuiConst_TEXT GetCharCode(
+   GuiConst_TEXT PrefixRom * CharPtr,
+   GuiConst_INT16U CharCnt,
+   GuiConst_INT16U CharNo,
+   GuiConst_INT16U OmitCtrlCode)
+{
+  GuiConst_INT16U P;
+  GuiConst_TEXT CharCode, PreviousCharCode;
+
+  if (CharCnt > GuiConst_MAX_TEXT_LEN)
+    CharCnt = GuiConst_MAX_TEXT_LEN;
+
+  if (CharNo > CharCnt)
+    return 0;
+
+  if (CharCnt > GuiConst_MAX_TEXT_LEN)
+    CharCnt = GuiConst_MAX_TEXT_LEN;
+
+  if (OmitCtrlCode)
+  {
+    for (P = 0; P < CharNo + 1; P++)
+    {
+#ifdef GuiConst_CHARMODE_ANSI
+  #ifdef GuiConst_AVRGCC_COMPILER
+      CharCode = (unsigned GuiConst_CHAR) ReadBytePtr(CharPtr);
+  #else
+  #ifdef GuiConst_ICC_COMPILER
+      CharCode = *((GuiConst_INT8U PrefixRom *)CharPtr);
+  #else
+  #ifdef GuiConst_CODEVISION_COMPILER
+      CharCode = *((GuiConst_INT8U PrefixRom *)CharPtr);
+  #else
+      CharCode = (unsigned GuiConst_TEXT) *CharPtr;
+  #endif
+  #endif
+  #endif
+#else
+      CharCode = *((GuiConst_INT16U PrefixLocate *)CharPtr);
+#endif
+
+      if (P)
+      {
+        if ((CharCode == GuiLib_LINEFEED) ||
+           ((CharCode == ' ') && (PreviousCharCode == ' ')) ||
+           ((CharCode == ' ') && (PreviousCharCode == '-')))
+          CharNo++;
+      }
+      PreviousCharCode = CharCode;
+
+      CharPtr++;
+    }
+  }
+  else
+  {
+    CharPtr += CharNo;
+
+#ifdef GuiConst_CHARMODE_ANSI
+  #ifdef GuiConst_AVRGCC_COMPILER
+    CharCode = (unsigned GuiConst_CHAR) ReadBytePtr(CharPtr);
+  #else
+  #ifdef GuiConst_ICC_COMPILER
+    CharCode = *((GuiConst_INT8U PrefixRom *)CharPtr);
+  #else
+  #ifdef GuiConst_CODEVISION_COMPILER
+    CharCode = *((GuiConst_INT8U PrefixRom *)CharPtr);
+  #else
+    CharCode = (unsigned GuiConst_TEXT) *CharPtr;
+  #endif
+  #endif
+  #endif
+#else
+    CharCode = *((GuiConst_INT16U PrefixLocate *)CharPtr);
+#endif
+  }
+
+  return (GuiConst_TEXT)CharCode;
+}
+
+//------------------------------------------------------------------------------
+GuiConst_TEXT GuiLib_GetCharCode(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16U TextNo,
+   GuiConst_INT16U CharNo,
+   GuiConst_INT16U OmitCtrlCode)
+{
+  GuiConst_TEXT PrefixRom * CharPtr;
+
+  CharPtr = GuiLib_GetTextPtr(StructureNdx, TextNo);
+
+  if (CharPtr == 0) return 0;
+
+#ifdef GuiConst_CHARMODE_ANSI
+  return GetCharCode(CharPtr,
+                     strlen(CharPtr),
+                     CharNo,
+                     OmitCtrlCode);
+#else
+  return GetCharCode(CharPtr,
+                     GuiLib_UnicodeStrLen(CharPtr),
+                     CharNo,
+                     OmitCtrlCode);
+#endif
+}
+
+//------------------------------------------------------------------------------
+#ifdef GuiConst_BLINK_SUPPORT_ON
+GuiConst_TEXT GuiLib_GetBlinkingCharCode(
+   GuiConst_INT16U BlinkFieldNo,
+   GuiConst_INT16U CharNo,
+   GuiConst_INT16U OmitCtrlCode)
+{
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  GuiConst_INT16U StrLen;
+
+  if (BlinkFieldNo >= GuiConst_BLINK_FIELDS_MAX)
+    return 0;
+
+  if (sgl.BlinkTextItems[BlinkFieldNo].InUse)
+  {
+    #ifdef GuiConst_CHARMODE_ANSI
+    StrLen = strlen((GuiConst_TEXT*)sgl.BlinkTextItems[BlinkFieldNo].TextPtr);
+    #else
+    #ifdef GuiConst_CODEVISION_COMPILER
+    StrLen = GuiLib_UnicodeStrLen(
+       (GuiConst_TEXT*)sgl.BlinkTextItems[BlinkFieldNo].TextPtr);
+    #else
+    StrLen = GuiLib_UnicodeStrLen((GuiConst_TEXT*)sgl.BlinkTextItems[BlinkFieldNo].TextPtr);
+    #endif
+    #endif
+
+    return GetCharCode((GuiConst_TEXT PrefixRom *)sgl.BlinkTextItems[BlinkFieldNo].TextPtr,
+                       StrLen,
+                       CharNo,
+                       OmitCtrlCode);
+  }
+  else
+#endif
+    return 0;
+}
+#endif
+
+//------------------------------------------------------------------------------
+void GuiLib_SetLanguage(
+   GuiConst_INT16S NewLanguage)
+{
+  GuiLib_LanguageIndex = CheckLanguageIndex(NewLanguage);
+}
+
+//------------------------------------------------------------------------------
+static void InvertBox(void)
+{
+  if (sgl.DisplayWriting)
+    GuiLib_InvertBox(sgl.InvertBoxX1, sgl.InvertBoxY1, sgl.InvertBoxX2, sgl.InvertBoxY2);
+  sgl.InvertBoxOn = !sgl.InvertBoxOn;
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_InvertBoxStart(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2)
+{
+  GuiLib_InvertBoxStop();
+  sgl.InvertBoxX1 = X1;
+  sgl.InvertBoxY1 = Y1;
+  sgl.InvertBoxX2 = X2;
+  sgl.InvertBoxY2 = Y2;
+  InvertBox();
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_InvertBoxStop(void)
+{
+  if (sgl.InvertBoxOn)
+    InvertBox();
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_Refresh(void)
+{
+#ifdef WANT_DOUBLE_BUFFERING // Otherwise we are writing direct to the display - no need for this code
+  GuiConst_INT16S N, L;
+  GuiConst_INT8U RedrawBottomLevel;
+  ItemMemory     RemMemory;
+  GuiConst_INT8U ColorInvert;
+
+  GuiDisplay_Lock();
+
+  sgl.RefreshClock++;
+
+  RedrawBottomLevel = 0;
+
+  N = AutoRedraw_Reset();
+
+  memcpy(&RemMemory, &sgl.Memory, sizeof(ItemMemory));
+
+  while (N != -1)
+  {
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+    if (!AutoRedraw_IsOnlyCursor(N))
+#endif
+    {
+      if (AutoRedraw_VarChanged(N) != 0)
+      {
+        memcpy(&sgl.CurItem, AutoRedraw_GetItem(N), sizeof(GuiLib_ItemRec));
+        memcpy(&sgl.Memory, AutoRedraw_GetItemMemory(N), sizeof(ItemMemory));
+
+        AutoRedraw_UpdateVar(N);
+
+        ColorInvert = GuiLib_COL_INVERT_IF_CURSOR;
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+        if (AutoRedraw_CheckCursorInheritance(N) == 0)
+          ColorInvert = GuiLib_COL_INVERT_ON;
+#endif
+
+        L = AutoRedraw_GetLevel(N);
+
+        if (AutoRedraw_ItemIsStruct(N))
+        {
+          N = AutoRedraw_DeleteStruct(N);
+          sgl.AutoRedrawUpdate = GuiLib_TRUE;
+          if (sgl.AutoRedrawInsertPoint >= 0)
+            N = AutoRedraw_GetNext(N);
+        }
+        else
+        {
+          sgl.AutoRedrawUpdate = GuiLib_FALSE;
+          N = AutoRedraw_GetNext(N);
+        }
+
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+        UpdateBackgroundBitmap();
+#endif
+
+        sgl.DisplayLevel = 0;
+        sgl.SwapColors = 0;
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+        if ((sgl.CurItem.TextPar[0].BitFlags & GuiLib_BITFLAG_BLINKTEXTFIELD) &&
+            (sgl.CurItem.BlinkFieldNo < GuiConst_BLINK_FIELDS_MAX) &&
+             sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].InUse &&
+             sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].Active &&
+             sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].BlinkBoxInverted)
+           GuiLib_InvertBox(sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].BlinkBoxX1,
+                            sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].BlinkBoxY1,
+                            sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].BlinkBoxX2,
+                            sgl.BlinkTextItems[sgl.CurItem.BlinkFieldNo].BlinkBoxY2);
+#endif
+#endif
+
+        DrawItem(ColorInvert);
+
+        if (L == 0)
+          RedrawBottomLevel = 1;
+
+        sgl.AutoRedrawUpdate = GuiLib_FALSE;
+      }
+      else
+        N = AutoRedraw_GetNext(N);
+    }
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+    else
+      N = AutoRedraw_GetNext(N);
+#endif
+  }
+
+  memcpy(&sgl.Memory, &RemMemory, sizeof(ItemMemory));
+
+
+  if ((sgl.DrawingLevel > 0) && RedrawBottomLevel && (sgl.TopLevelStructure != 0))
+  {
+    sgl.DisplayLevel = 0;
+    sgl.SwapColors = 0;
+    DrawStructure(sgl.TopLevelStructure, GuiLib_COL_INVERT_IF_CURSOR);
+    ResetLayerBufPtr();
+  }
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+  for (N = 0; N < GuiConst_BLINK_FIELDS_MAX; N++)
+    if (sgl.BlinkTextItems[N].InUse &&
+        sgl.BlinkTextItems[N].Active)
+    {
+      if (sgl.BlinkTextItems[N].BlinkBoxInverted !=
+          sgl.BlinkTextItems[N].BlinkBoxLast)
+      {
+         GuiLib_InvertBox(sgl.BlinkTextItems[N].BlinkBoxX1,
+                          sgl.BlinkTextItems[N].BlinkBoxY1,
+                          sgl.BlinkTextItems[N].BlinkBoxX2,
+                          sgl.BlinkTextItems[N].BlinkBoxY2);
+         sgl.BlinkTextItems[N].BlinkBoxInverted =
+            sgl.BlinkTextItems[N].BlinkBoxLast;
+      }
+      if (sgl.BlinkTextItems[N].BlinkBoxState < 255)
+      {
+        sgl.BlinkTextItems[N].BlinkBoxState--;
+        if (sgl.BlinkTextItems[N].BlinkBoxState == 0)
+        {
+          sgl.BlinkTextItems[N].BlinkBoxState = sgl.BlinkTextItems[N].BlinkBoxRate;
+          if (sgl.DisplayWriting)
+          {
+            GuiLib_InvertBox(sgl.BlinkTextItems[N].BlinkBoxX1,
+                             sgl.BlinkTextItems[N].BlinkBoxY1,
+                             sgl.BlinkTextItems[N].BlinkBoxX2,
+                             sgl.BlinkTextItems[N].BlinkBoxY2);
+            sgl.BlinkTextItems[N].BlinkBoxInverted =
+               !sgl.BlinkTextItems[N].BlinkBoxInverted;
+            sgl.BlinkTextItems[N].BlinkBoxLast =
+               sgl.BlinkTextItems[N].BlinkBoxInverted;
+          }
+        }
+      }
+    }
+  if (sgl.BlinkBoxRate)
+  {
+    if (sgl.BlinkBoxState < 255)
+      sgl.BlinkBoxState--;
+    if (sgl.BlinkBoxState == 0)
+    {
+      sgl.BlinkBoxState = sgl.BlinkBoxRate;
+      BlinkBox();
+    }
+  }
+#endif
+#endif
+
+  GuiDisplay_Unlock();
+
+  GuiDisplay_Refresh();
+#endif // WANT_DOUBLE_BUFFERING 
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_DrawChar(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U FontNo,
+   GuiConst_TEXT Character,
+   GuiConst_INTCOLOR Color)
+{
+  GuiLib_FontRecPtr Font;
+#ifndef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT8U PrefixRom *CharPtr;
+#endif
+  GuiConst_INT16S X1,Y1,X2,Y2;
+#ifdef GuiConst_REMOTE_FONT_DATA
+  GuiConst_INT32U CharNdx;
+#else
+#ifdef GuiConst_CHARMODE_UNICODE
+  GuiConst_INT32U CharNdx;
+#endif
+#endif
+
+  Font = (GuiLib_FontRecPtr) ReadWord(GuiFont_FontList[FontNo]);
+
+  Y -= ReadByte(Font->BaseLine);
+
+#ifdef GuiConst_CHARMODE_ANSI
+  #ifdef GuiConst_REMOTE_FONT_DATA
+  if ((Character < Font->FirstChar) || (Character > Font->LastChar))
+    CharNdx =
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[Font->IllegalCharNdx];
+  else
+    CharNdx =
+       (GuiConst_INT32U PrefixRom)GuiFont_ChPtrList[Font->FirstCharNdx +
+       (GuiConst_INT16U)Character - (GuiConst_INT16U)Font->FirstChar];
+  DrawChar(X, Y, Font, CharNdx, Color, 0);
+  #else
+  if ((Character < ReadByte(Font->FirstChar)) ||
+     (Character > ReadByte(Font->LastChar)))
+    CharPtr = (GuiConst_INT8U PrefixRom *)ReadWord(
+       GuiFont_ChPtrList[ReadWord(Font->IllegalCharNdx)]);
+  else
+    CharPtr = (GuiConst_INT8U PrefixRom *)ReadWord(
+       GuiFont_ChPtrList[ReadWord(Font->FirstCharNdx) +
+       (GuiConst_INT16U)Character -
+       (GuiConst_INT16U)ReadByte(Font->FirstChar)]);
+  DrawChar(X, Y, Font, CharPtr, Color, 0);
+  #endif
+#else
+  CharNdx = GetCharNdx(Font, Character);
+  #ifdef GuiConst_REMOTE_FONT_DATA
+  DrawChar(X, Y, Font, CharNdx, Color, 0);
+  #else
+  CharPtr = (GuiConst_INT8U PrefixRom *)ReadWord(GuiFont_ChPtrList[CharNdx]);
+  DrawChar(X, Y, Font, CharPtr, Color, 0);
+  #endif
+#endif
+
+#ifdef GuiConst_REMOTE_FONT_DATA
+  X1 = X + sgl.GuiLib_RemoteFontBuffer[GuiLib_CHR_XLEFT_OFS];
+  X2 = X1 + sgl.GuiLib_RemoteFontBuffer[GuiLib_CHR_XWIDTH_OFS] - 1;
+  Y1 = Y + sgl.GuiLib_RemoteFontBuffer[GuiLib_CHR_YTOP_OFS];
+  Y2 = Y1 + sgl.GuiLib_RemoteFontBuffer[GuiLib_CHR_YHEIGHT_OFS] - 1;
+#else
+  X1 = X + ReadBytePtr(CharPtr + GuiLib_CHR_XLEFT_OFS);
+  X2 = X1 + ReadBytePtr(CharPtr + GuiLib_CHR_XWIDTH_OFS) - 1;
+  Y1 = Y + ReadBytePtr(CharPtr + GuiLib_CHR_YTOP_OFS);
+  Y2 = Y1 + ReadBytePtr(CharPtr + GuiLib_CHR_YHEIGHT_OFS) - 1;
+#endif
+
+  GuiLib_MarkDisplayBoxRepaint(X1,Y1,X2,Y2);
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_DrawStr(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U FontNo,
+   GuiConst_TEXT *String,
+   GuiConst_INT8U Alignment,
+   GuiConst_INT8U PsWriting,
+   GuiConst_INT8U Transparent,
+   GuiConst_INT8U Underlining,
+   GuiConst_INT16S BackBoxSizeX,
+   GuiConst_INT16S BackBoxSizeY1,
+   GuiConst_INT16S BackBoxSizeY2,
+   GuiConst_INT8U BackBorderPixels,
+   GuiConst_INTCOLOR ForeColor,
+   GuiConst_INTCOLOR BackColor)
+{
+  if (FontNo >= GuiFont_FontCnt)
+    return;
+  if (*String == 0)
+    return;
+
+  SetCurFont(FontNo);
+
+#ifdef GuiConst_AVRGCC_COMPILER
+  #ifdef GuiConst_CHARMODE_ANSI
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT8U *)String;
+  #else
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT16U *)String;
+  #endif
+#else
+#ifdef GuiConst_ICC_COMPILER
+  #ifdef GuiConst_CHARMODE_ANSI
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT8U *)String;
+  #else
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT16U *)String;
+  #endif
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+  #ifdef GuiConst_CHARMODE_ANSI
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT8U *)String;
+  #else
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT16U *)String;
+  #endif
+#else
+#ifdef GuiConst_RENESAS_COMPILER_FAR
+  #ifdef GuiConst_CHARMODE_ANSI
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT8U PrefixLocate *)String;
+  #else
+  sgl.CurItem.TextPtr[0] = (GuiConst_INT16U PrefixLocate *)String;
+  #endif
+#else
+  sgl.CurItem.TextPtr[0] = String;
+#endif
+#endif
+#endif
+#endif
+
+  sgl.CurItem.TextLength[0] = 0;
+  while (*String != 0)
+  {
+    sgl.CurItem.TextLength[0]++;
+    String++;
+  }
+  sgl.CurItem.X1 = X;
+  sgl.CurItem.Y1 = Y;
+  sgl.CurItem.TextPar[0].FontIndex = FontNo;
+  sgl.CurItem.TextPar[0].Alignment = Alignment;
+  sgl.CurItem.TextPar[0].Ps = PsWriting;
+  sgl.CurItem.TextPar[0].BitFlags = 0;
+  if (Underlining)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_UNDERLINE;
+  sgl.CurItem.TextPar[0].BackBoxSizeX = BackBoxSizeX;
+  sgl.CurItem.TextPar[0].BackBoxSizeY1 = BackBoxSizeY1;
+  sgl.CurItem.TextPar[0].BackBoxSizeY2 = BackBoxSizeY2;
+  sgl.CurItem.TextPar[0].BackBorderPixels = BackBorderPixels;
+  if (sgl.CurItem.TextPar[0].BackBoxSizeX > 0)
+    DrawBackBox(BackColor, Transparent, 0);
+
+#ifdef GuiConst_DISP_VAR_NOW
+  displayVarNow = 1;
+#endif
+
+  DrawText(sgl.CurItem.TextPtr[0],
+           sgl.CurItem.TextLength[0],
+           0,
+           ForeColor,
+           BackColor,
+           Transparent);
+
+#ifdef GuiConst_DISP_VAR_NOW
+  displayVarNow = 0;
+#endif
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_DrawVar(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U FontNo,
+   void PrefixLocate *VarPtr,
+   GuiConst_INT8U VarType,
+   GuiConst_INT8U FormatterFormat,
+   GuiConst_INT8U FormatterFieldWidth,
+   GuiConst_INT8U FormatterAlignment,
+   GuiConst_INT8U FormatterDecimals,
+   GuiConst_INT8U FormatterShowSign,
+   GuiConst_INT8U FormatterZeroPadding,
+   GuiConst_INT8U FormatterTrailingZeros,
+   GuiConst_INT8U FormatterThousandsSeparator,
+   GuiConst_INT8U Alignment,
+   GuiConst_INT8U PsWriting,
+   GuiConst_INT8U Transparent,
+   GuiConst_INT8U Underlining,
+   GuiConst_INT16S BackBoxSizeX,
+   GuiConst_INT16S BackBoxSizeY1,
+   GuiConst_INT16S BackBoxSizeY2,
+   GuiConst_INT8U BackBorderPixels,
+   GuiConst_INTCOLOR ForeColor,
+   GuiConst_INTCOLOR BackColor)
+{
+  GuiConst_INT32S VarValue;
+  GuiConst_INT16U StrLen;
+#ifndef GuiConst_CHARMODE_ANSI
+  GuiConst_INT16U P;
+#endif
+  GuiConst_TEXT PrefixGeneric *CharPtr;
+
+  if (FontNo >= GuiFont_FontCnt)
+    return;
+
+  SetCurFont(FontNo);
+
+  sgl.CurItem.VarPtr = VarPtr;
+  sgl.CurItem.VarType = VarType;
+  sgl.CurItem.FormatFormat = FormatterFormat;
+  sgl.CurItem.FormatFieldWidth = FormatterFieldWidth;
+  sgl.CurItem.FormatAlignment = FormatterAlignment;
+  sgl.CurItem.FormatDecimals = FormatterDecimals;
+  sgl.CurItem.TextPar[0].BitFlags = 0;
+  if (FormatterShowSign)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATSHOWSIGN;
+  if (FormatterZeroPadding)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATZEROPADDING;
+  if (FormatterTrailingZeros)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATTRAILINGZEROS;
+  if (FormatterThousandsSeparator)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_FORMATTHOUSANDSSEP;
+  sgl.CurItem.X1 = X;
+  sgl.CurItem.Y1 = Y;
+  sgl.CurItem.TextPar[0].FontIndex = FontNo;
+  sgl.CurItem.TextPar[0].Alignment = Alignment;
+  sgl.CurItem.TextPar[0].Ps = PsWriting;
+  if (Underlining)
+    sgl.CurItem.TextPar[0].BitFlags |= GuiLib_BITFLAG_UNDERLINE;
+  sgl.CurItem.TextPar[0].BackBoxSizeX = BackBoxSizeX;
+  sgl.CurItem.TextPar[0].BackBoxSizeY1 = BackBoxSizeY1;
+  sgl.CurItem.TextPar[0].BackBoxSizeY2 = BackBoxSizeY2;
+  sgl.CurItem.TextPar[0].BackBorderPixels = BackBorderPixels;
+  if (sgl.CurItem.TextPar[0].BackBoxSizeX > 0)
+    DrawBackBox(BackColor, Transparent, 0);
+
+#ifdef GuiConst_DISP_VAR_NOW
+  displayVarNow = 1;
+#endif
+
+  if (sgl.CurItem.VarType == GuiLib_VAR_STRING)
+  {
+    CharPtr = (GuiConst_TEXT PrefixLocate *)sgl.CurItem.VarPtr;
+#ifdef GuiConst_CHARMODE_ANSI
+    StrLen = strlen(CharPtr);
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+    StrLen = GuiLib_UnicodeStrLen((GuiConst_TEXT*)CharPtr);
+#else
+    StrLen = GuiLib_UnicodeStrLen(CharPtr);
+#endif
+#endif
+  }
+  else
+  {
+    VarValue = ReadVar(sgl.CurItem.VarPtr, sgl.CurItem.VarType);
+    StrLen = DataNumStr(VarValue, sgl.CurItem.VarType, 0);
+#ifdef GuiConst_CHARMODE_ANSI
+    CharPtr = (GuiConst_TEXT PrefixGeneric *) sgl.VarNumTextStr;
+#else
+    for (P = 0; P <= StrLen; P++)
+      sgl.VarNumUnicodeTextStr[P] = sgl.VarNumTextStr[P];
+    CharPtr = (GuiConst_TEXT PrefixGeneric *) sgl.VarNumUnicodeTextStr;
+#endif
+  }
+
+  DrawText(CharPtr,
+           StrLen,
+           0,
+           ForeColor,
+           BackColor,
+           Transparent);
+
+#ifdef GuiConst_DISP_VAR_NOW
+  displayVarNow = 0;
+#endif
+}
+
+//------------------------------------------------------------------------------
+void GuiLib_TestPattern(void)
+{
+  GuiLib_HLine(0, 31, 0, GuiConst_PIXEL_ON);
+  GuiLib_VLine(0, 1, 31, GuiConst_PIXEL_ON);
+  GuiLib_HLine(2, 8, 2, GuiConst_PIXEL_ON);
+  GuiLib_HLine(11, 16, 2, GuiConst_PIXEL_ON);
+  GuiLib_VLine(4, 4, 10, GuiConst_PIXEL_ON);
+  GuiLib_VLine(4, 13, 18, GuiConst_PIXEL_ON);
+}
+
+#include "GuiComponents.h"
+
+#ifdef GuiConst_REMOTE_DATA
+//------------------------------------------------------------------------------
+GuiConst_INT8U GuiLib_RemoteCheck(void)
+{
+  union
+  {
+    GuiConst_INT8U Bytes[4];
+    GuiConst_INT32U IdInFile;
+  } RemoteIdUnion;
+  GuiConst_INT8U ok;
+
+  GuiLib_RemoteDataReadBlock(0, 4, RemoteIdUnion.Bytes);
+  ok = (RemoteIdUnion.IdInFile == GuiConst_REMOTE_ID);
+
+#ifdef GuiConst_REMOTE_TEXT_DATA
+  GuiLib_RemoteTextReadBlock(0, 4, RemoteIdUnion.Bytes);
+  ok = ok && (RemoteIdUnion.IdInFile == GuiConst_REMOTE_ID);
+#endif
+
+  return (ok);
+}
+#endif
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiLib.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,3742 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2015 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                               v6.0.9.005                                 */
+/*                                                                          */
+/* ************************************************************************ */
+
+
+// =============================================================================
+#ifndef __GUILIB_H
+#define __GUILIB_H
+#include "GuiConst.h"
+#include "GuiVar.h"
+#include "GuiDisplay.h"
+
+
+#ifdef __cplusplus /* If this is a C++ compiler, use C linkage */
+extern "C" {
+#endif
+
+// =============================================================================
+#ifdef GuiConst_CODEVISION_COMPILER
+// Remove warnings about unused functions
+#pragma used+
+#endif
+
+
+// =============================================================================
+#ifdef GuiConst_COLOR_DEPTH_5
+  #define GuiLib_COLOR_UNIT_8
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+#ifdef GuiConst_COLOR_DEPTH_8
+  #define GuiLib_COLOR_UNIT_8
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+#ifdef GuiConst_COLOR_DEPTH_12
+  #define GuiLib_COLOR_UNIT_16
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+#ifdef GuiConst_COLOR_DEPTH_15
+  #define GuiLib_COLOR_UNIT_16
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+#ifdef GuiConst_COLOR_DEPTH_16
+  #define GuiLib_COLOR_UNIT_16
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+#ifdef GuiConst_COLOR_DEPTH_18
+  #define GuiLib_COLOR_UNIT_24
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+#ifdef GuiConst_COLOR_DEPTH_24
+  #define GuiLib_COLOR_UNIT_24
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+#ifdef GuiConst_COLOR_DEPTH_32
+  #define GuiLib_COLOR_UNIT_32
+  #define GuiLib_LAYERS_SUPPORTED
+#endif
+
+
+// =============================================================================
+#ifdef GuiConst_AVR_COMPILER_FLASH_RAM
+  #define PrefixRom __flash
+  #define PrefixGeneric __generic
+  #define PrefixReentrant
+  #define PrefixLocate
+#else
+#ifdef GuiConst_PICC_COMPILER_ROM
+  #define PrefixRom rom
+  #define PrefixGeneric
+  #define PrefixReentrant
+  #define PrefixLocate
+#else
+#ifdef GuiConst_KEIL_COMPILER_REENTRANT
+  #define PrefixRom
+  #define PrefixGeneric
+  #define PrefixReentrant reentrant
+  #define PrefixLocate
+#else
+#ifdef GuiConst_ICC_COMPILER
+  #define PrefixRom const
+  #define PrefixGeneric
+  #define PrefixReentrant
+  #define PrefixLocate
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+  #define PrefixRom flash
+  #define PrefixGeneric
+  #define PrefixReentrant
+  #define PrefixLocate
+#else
+#ifdef GuiConst_RENESAS_COMPILER_FAR
+  #define PrefixRom _far
+  #define PrefixGeneric _far
+  #define PrefixReentrant
+  #define PrefixLocate _far
+#else
+  #define PrefixRom
+  #define PrefixGeneric
+  #define PrefixReentrant
+  #define PrefixLocate
+#endif
+#endif
+#endif
+#endif
+#endif
+#endif
+
+
+// =============================================================================
+#ifdef GuiConst_COLOR_DEPTH_1
+  #define GuiLib_COLOR_BYTESIZE_1
+#endif
+#ifdef GuiConst_COLOR_DEPTH_2
+  #define GuiLib_COLOR_BYTESIZE_1
+#endif
+#ifdef GuiConst_COLOR_DEPTH_4
+  #define GuiLib_COLOR_BYTESIZE_1
+#endif
+#ifdef GuiConst_COLOR_DEPTH_5
+  #define GuiLib_COLOR_BYTESIZE_1
+#endif
+#ifdef GuiConst_COLOR_DEPTH_8
+  #define GuiLib_COLOR_BYTESIZE_1
+#endif
+#ifdef GuiConst_COLOR_DEPTH_12
+  #define GuiLib_COLOR_BYTESIZE_2
+#endif
+#ifdef GuiConst_COLOR_DEPTH_15
+  #define GuiLib_COLOR_BYTESIZE_2
+#endif
+#ifdef GuiConst_COLOR_DEPTH_16
+  #define GuiLib_COLOR_BYTESIZE_2
+#endif
+#ifdef GuiConst_COLOR_DEPTH_18
+  #define GuiLib_COLOR_BYTESIZE_3
+#endif
+#ifdef GuiConst_COLOR_DEPTH_24
+  #define GuiLib_COLOR_BYTESIZE_3
+#endif
+#ifdef GuiConst_COLOR_DEPTH_32
+  #define GuiLib_COLOR_BYTESIZE_3
+#endif
+
+#define GuiLib_NO_CURSOR                    -1
+
+#define GuiLib_NO_RESET_AUTO_REDRAW         0
+#define GuiLib_RESET_AUTO_REDRAW            1
+
+#define GuiLib_ALIGN_NOCHANGE               0
+#define GuiLib_ALIGN_LEFT                   1
+#define GuiLib_ALIGN_CENTER                 2
+#define GuiLib_ALIGN_RIGHT                  3
+
+#define GuiLib_PS_NOCHANGE                  0
+#define GuiLib_PS_OFF                       1
+#define GuiLib_PS_ON                        2
+#define GuiLib_PS_NUM                       3
+
+#define GuiLib_TRANSPARENT_OFF              0
+#define GuiLib_TRANSPARENT_ON               1
+
+#define GuiLib_UNDERLINE_OFF                0
+#define GuiLib_UNDERLINE_ON                 1
+
+#define GuiLib_BBP_NONE                     0
+#define GuiLib_BBP_LEFT                     1
+#define GuiLib_BBP_RIGHT                    2
+#define GuiLib_BBP_TOP                      4
+#define GuiLib_BBP_BOTTOM                   8
+
+#define GuiLib_VAR_BOOL                     0
+#define GuiLib_VAR_UNSIGNED_CHAR            1
+#define GuiLib_VAR_SIGNED_CHAR              2
+#define GuiLib_VAR_UNSIGNED_INT             3
+#define GuiLib_VAR_SIGNED_INT               4
+#define GuiLib_VAR_UNSIGNED_LONG            5
+#define GuiLib_VAR_SIGNED_LONG              6
+#define GuiLib_VAR_FLOAT                    7
+#define GuiLib_VAR_DOUBLE                   8
+#define GuiLib_VAR_STRING                   9
+#define GuiLib_VAR_COLOR                    10
+#define GuiLib_VAR_NONE                     255
+
+#define GuiLib_FORMAT_DEC                   0
+#define GuiLib_FORMAT_EXP                   1
+#define GuiLib_FORMAT_HEX_POSTFIX_H         2
+#define GuiLib_FORMAT_TIME_MMSS             3
+#define GuiLib_FORMAT_TIME_HHMM_24          4
+#define GuiLib_FORMAT_TIME_HHMMSS_24        5
+#define GuiLib_FORMAT_TIME_HHMM_12_ampm     6
+#define GuiLib_FORMAT_TIME_HHMMSS_12_ampm   7
+#define GuiLib_FORMAT_TIME_HHMM_12_AMPM     8
+#define GuiLib_FORMAT_TIME_HHMMSS_12_AMPM   9
+#define GuiLib_FORMAT_HEX_PREFIX_0X         10
+#define GuiLib_FORMAT_HEX_CLEAN             11
+
+#define GuiLib_FORMAT_ALIGNMENT_LEFT        0
+#define GuiLib_FORMAT_ALIGNMENT_CENTER      1
+#define GuiLib_FORMAT_ALIGNMENT_RIGHT       2
+
+#define GuiLib_DECIMAL_PERIOD               0
+#define GuiLib_DECIMAL_COMMA                1
+
+#define GuiLib_LANGUAGE_TEXTDIR_LEFTTORIGHT 0
+#define GuiLib_LANGUAGE_TEXTDIR_RIGHTTOLEFT 1
+
+#define GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX   0
+#define GuiLib_TEXTBOX_SCROLL_INSIDE_BLOCK  1
+#define GuiLib_TEXTBOX_SCROLL_AT_HOME       2
+#define GuiLib_TEXTBOX_SCROLL_AT_END        3
+#define GuiLib_TEXTBOX_SCROLL_ABOVE_HOME    4
+#define GuiLib_TEXTBOX_SCROLL_BELOW_END     5
+
+#define GuiLib_BUTTON_STATE_UP              0
+#define GuiLib_BUTTON_STATE_DOWN            1
+#define GuiLib_BUTTON_STATE_DISABLED        2
+
+#define GuiLib_CHECKBOX_OFF                 0
+#define GuiLib_CHECKBOX_ON                  1
+
+#define GuiLib_RADIOBUTTON_OFF             -1
+
+
+#define GuiLib_NO_COLOR                     0x10000000
+
+
+// =============================================================================
+typedef struct
+{
+  GuiConst_INT16S ByteBegin;
+  GuiConst_INT16S ByteEnd;
+}
+GuiLib_DisplayLineRec;
+
+#ifdef GuiConst_CODEVISION_COMPILER
+typedef flash struct
+#else
+typedef struct
+#endif
+{
+#ifdef GuiConst_CHARMODE_ANSI
+  GuiConst_INT8U FirstChar;
+  GuiConst_INT8U LastChar;
+  GuiConst_INT16U FirstCharNdx;
+  GuiConst_INT16U IllegalCharNdx;
+#else
+  GuiConst_INT16U CharCount;
+  GuiConst_INT32U FirstCharNdx;
+#endif
+  GuiConst_INT8U XSize, YSize;
+#ifdef GuiConst_ADV_FONTS_ON
+  GuiConst_INT8U ColorDepth;
+#endif
+  GuiConst_INT8U TopLine, MidLine, BaseLine;
+  GuiConst_INT8U Cursor1, Cursor2;
+  GuiConst_INT8U Underline1, Underline2;
+  GuiConst_INT8U BoxWidth;
+  GuiConst_INT8U PsNumWidth;
+  GuiConst_INT8U PsSpace;
+  GuiConst_INT8U LineSize;
+}
+GuiLib_FontRec;
+
+#ifdef GuiConst_ICC_COMPILER
+typedef GuiLib_FontRec PrefixRom *GuiLib_FontRecPtr;
+typedef const GuiLib_FontRec * GuiLib_FontRecConstPtr;
+#else
+#ifdef GuiConst_CODEVISION_COMPILER
+typedef flash GuiLib_FontRec *GuiLib_FontRecPtr;
+typedef flash GuiLib_FontRec *GuiLib_FontRecConstPtr;
+#else
+typedef GuiLib_FontRec PrefixRom *GuiLib_FontRecPtr;
+typedef const GuiLib_FontRec PrefixRom *GuiLib_FontRecConstPtr;
+#endif
+#endif
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+typedef struct
+{
+  GuiConst_INT32S X;
+  GuiConst_INT32S Y;
+} GuiLib_GraphDataPoint;
+#endif
+
+// =============================================================================
+#ifdef GuiConst_DISPLAY_BUFFER_EASYGUI
+#ifdef GuiConst_COLOR_DEPTH_1
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#ifdef GuiConst_COLOR_DEPTH_2
+#ifdef GuiConst_COLOR_PLANES_2
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[2][GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#else
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#endif
+#ifdef GuiConst_COLOR_DEPTH_4
+#ifdef GuiConst_COLOR_PLANES_4
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[4][GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#else
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#endif
+#ifdef GuiConst_COLOR_DEPTH_5
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#ifdef GuiConst_COLOR_DEPTH_8
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#ifdef GuiConst_COLOR_DEPTH_12
+typedef union
+{
+  GuiConst_INT8U  Bytes[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+  GuiConst_INT16U Words[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE / 2];
+} DisplayBufUnion;
+extern DisplayBufUnion GuiLib_DisplayBuf;
+#endif
+#ifdef GuiConst_COLOR_DEPTH_15
+typedef union
+{
+  GuiConst_INT8U  Bytes[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+  GuiConst_INT16U Words[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE / 2];
+} DisplayBufUnion;
+extern DisplayBufUnion GuiLib_DisplayBuf;
+#endif
+#ifdef GuiConst_COLOR_DEPTH_16
+typedef union
+{
+  GuiConst_INT8U  Bytes[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+  GuiConst_INT16U Words[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE / 2];
+} DisplayBufUnion;
+extern DisplayBufUnion GuiLib_DisplayBuf;
+#endif
+#ifdef GuiConst_COLOR_DEPTH_18
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#ifdef GuiConst_COLOR_DEPTH_24
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#ifdef GuiConst_COLOR_DEPTH_32
+extern GuiConst_INT8U
+  GuiLib_DisplayBuf[GuiConst_BYTE_LINES][GuiConst_BYTES_PR_LINE];
+#endif
+#endif
+
+extern GuiLib_DisplayLineRec GuiLib_DisplayRepaint[GuiConst_BYTE_LINES];
+#ifdef GuiConst_VNC_REMOTE_SUPPORT_ON
+extern GuiLib_DisplayLineRec GuiLib_VncRepaint[GuiConst_BYTE_LINES];
+#endif // GuiConst_VNC_REMOTE_SUPPORT_ON
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+extern GuiConst_INT16S GuiLib_ActiveCursorFieldNo;
+#endif
+extern GuiConst_INT16S GuiLib_LanguageIndex;
+extern GuiConst_INT16S GuiLib_CurStructureNdx;
+#ifdef GuiConst_ALLOW_UPSIDEDOWN_AT_RUNTIME
+extern GuiConst_INT8U GuiLib_DisplayUpsideDown;
+#endif
+
+#ifdef GuiConst_REMOTE_DATA
+extern void (*GuiLib_RemoteDataReadBlock) (
+   GuiConst_INT32U SourceOffset,
+   GuiConst_INT32U SourceSize,
+   GuiConst_INT8U * TargetAddr);
+#ifdef GuiConst_REMOTE_TEXT_DATA
+extern void (*GuiLib_RemoteTextReadBlock) (
+   GuiConst_INT32U SourceOffset,
+   GuiConst_INT32U SourceSize,
+   void * TargetAddr);
+#endif
+#endif
+
+
+// =============================================================================
+#include "GuiFont.h"
+#include "GuiStruct.h"
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_DegToRad
+// ===============
+//
+// Converts angle from degrees to radians.
+//
+// Input:
+// ------
+// Angle in degrees * 10 (1° = 10)
+//
+// Output:
+// -------
+// Angle in radians * 4096 (1 rad = 4096)
+//
+extern GuiConst_INT32S GuiLib_DegToRad(
+   GuiConst_INT32S Angle);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_RadToDeg
+// ===============
+//
+// Converts angle from radians to degrees.
+//
+// Input:
+// ------
+// Angle in radians * 4096 (1 rad = 4096)
+//
+// Output:
+// -------
+// Angle in degrees * 10 (1° = 10)
+//
+extern GuiConst_INT32S GuiLib_RadToDeg(
+   GuiConst_INT32S Angle);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_SinRad
+// =============
+//
+// Calculates Sin(angle), where angle is in radians (factored).
+//
+// Input:
+// ------
+// Angle in radians * 4096 (1 rad = 4096)
+//
+// Output:
+// -------
+// Sine of angle in 1/4096 units
+//
+extern GuiConst_INT32S GuiLib_SinRad(
+   GuiConst_INT32S Angle);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_SinDeg
+// =============
+//
+// Calculates Sin(angle), where angle is in degrees (factored).
+//
+// Input:
+// ------
+// Angle in degrees * 10 (1° = 10)
+//
+// Output:
+// -------
+// Sine of angle in 1/4096 units
+//
+extern GuiConst_INT32S GuiLib_SinDeg(
+   GuiConst_INT32S Angle);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_CosRad
+// =============
+//
+// Calculates Cos(angle), where angle is in radians (factored).
+//
+// Input:
+// ------
+// Angle in radians * 4096 (1 rad = 4096)
+//
+// Output:
+// -------
+// Cosine of angle in 1/4096 units
+//
+extern GuiConst_INT32S GuiLib_CosRad(
+   GuiConst_INT32S Angle);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_CosDeg
+// =============
+//
+// Calculates Cos(angle), where angle is in degrees (factored).
+//
+// Input:
+// ------
+// Angle in degrees * 10 (1° = 10)
+//
+// Output:
+// -------
+// Cosine of angle in 1/4096 units
+//
+extern GuiConst_INT32S GuiLib_CosDeg(
+   GuiConst_INT32S Angle);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Sqrt
+// ===========
+//
+// Returns Square root of argument.
+//
+// Input:
+// ------
+// Argument
+//
+// Output:
+// -------
+// Square root of argument
+//
+extern GuiConst_INT32U GuiLib_Sqrt(
+   GuiConst_INT32U X);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetRedRgbColor
+// =====================
+//
+// Extracts red component from RGB color.
+//
+// Input:
+// ------
+// 24 bit RGB color
+//
+// Output:
+// -------
+// 8 bit red color component
+//
+extern GuiConst_INT8U GuiLib_GetRedRgbColor(
+   GuiConst_INT32U RgbColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_SetRedRgbColor
+// =====================
+//
+// Sets red component from RGB color.
+//
+// Input:
+// ------
+// 24 bit RGB color
+// 8 bit red color component
+//
+// Output:
+// -------
+// 24 bit RGB color
+//
+extern GuiConst_INT32U GuiLib_SetRedRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT8U RedColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetGreenRgbColor
+// =======================
+//
+// Extracts green component from RGB color.
+//
+// Input:
+// ------
+// 24 bit RGB color
+//
+// Output:
+// -------
+// 8 bit green color component
+//
+extern GuiConst_INT8U GuiLib_GetGreenRgbColor(
+   GuiConst_INT32U RgbColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_SetGreenRgbColor
+// =======================
+//
+// Sets green component from RGB color.
+//
+// Input:
+// ------
+// 24 bit RGB color
+// 8 bit green color component
+//
+// Output:
+// -------
+// 24 bit RGB color
+//
+extern GuiConst_INT32U GuiLib_SetGreenRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT8U GreenColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetBlueRgbColor
+// ======================
+//
+// Extracts blue component from RGB color.
+//
+// Input:
+// ------
+// 24 bit RGB color
+//
+// Output:
+// -------
+// 8 bit blue color component
+//
+extern GuiConst_INT8U GuiLib_GetBlueRgbColor(
+   GuiConst_INT32U RgbColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_SetBlueRgbColor
+// ======================
+//
+// Sets blue component from RGB color.
+//
+// Input:
+// ------
+// 24 bit RGB color
+// 8 bit blue color component
+//
+// Output:
+// -------
+// 24 bit RGB color
+//
+extern GuiConst_INT32U GuiLib_SetBlueRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT8U BlueColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_RgbToPixelColor
+// ======================
+//
+// Translates from RGB color to proper pixel value for display controller
+// color setup.
+//
+// Input:
+// ------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+extern GuiConst_INTCOLOR GuiLib_RgbToPixelColor(
+   GuiConst_INT32U RgbColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Rgb888ToPixelColor
+// =========================
+//
+// Translates from RGB color components to proper pixel value for display
+// controller color setup.
+//
+// Input:
+// ------
+// Red color value
+// Green color value
+// Blue color value
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+GuiConst_INTCOLOR GuiLib_Rgb888ToPixelColor(
+   GuiConst_INT8U Red, GuiConst_INT8U Green, GuiConst_INT8U Blue);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_PixelToRgbColor
+// ======================
+//
+// Translates from pixel value for display controller color setup to RGB color.
+//
+// Input:
+// ------
+// Encoded pixel color value
+//
+// Output:
+// -------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+extern GuiConst_INT32U GuiLib_PixelToRgbColor(
+   GuiConst_INTCOLOR PixelColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_RgbColorToGrayScale
+// ==========================
+//
+// Translates from RGB color to 0~255 gray scale value.
+//
+// Input:
+// ------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+// Output:
+// -------
+// Gray scale value, 0~255
+//
+extern GuiConst_INT8U GuiLib_RgbColorToGrayScale(
+   GuiConst_INT32U RgbColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Rgb888ColorToGrayScale
+// =============================
+//
+// Translates from RGB color components to a 0~255 grayscale value.
+//
+// Input:
+// ------
+// Red color value
+// Green color value
+// Blue color value
+//
+// Output:
+// -------
+// Gray scale value, 0~255
+//
+GuiConst_INT8U GuiLib_Rgb888ColorToGrayScale(
+   GuiConst_INT8U Red, GuiConst_INT8U Green, GuiConst_INT8U Blue);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GrayScaleToRgbColor
+// ==========================
+//
+// Translates from 0~255 gray scale value to RGB color.
+//
+// Input:
+// ------
+// Gray scale value, 0~255
+//
+// Output:
+// -------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+extern GuiConst_INT32U GuiLib_GrayScaleToRgbColor(
+   GuiConst_INT8U GrayValue);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_PixelColorToGrayScale
+// ============================
+//
+// Translates from pixel value for display controller color setup to 0~255 gray
+// scale value.
+//
+// Input:
+// ------
+// Encoded pixel color value
+//
+// Output:
+// -------
+// Gray scale value, 0~255
+//
+extern GuiConst_INT8U GuiLib_PixelColorToGrayScale(
+   GuiConst_INTCOLOR PixelColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GrayScaleToPixelColor
+// ============================
+//
+// Translates from gray scale value to display controller color setup.
+//
+// Input:
+// ------
+// Gray scale value, 0~255
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+extern GuiConst_INTCOLOR GuiLib_GrayScaleToPixelColor(
+   GuiConst_INT8U GrayValue);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_BrightenRgbColor
+// =======================
+//
+// Brightens RGB color 0~1000‰, 1000‰ results in pure white.
+//
+// Input:
+// ------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+// Brighten value, 0 ~ 1000‰
+//
+// Output:
+// -------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+extern GuiConst_INT32U GuiLib_BrightenRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_BrightenPixelColor
+// =========================
+//
+// Brightens color in display controller color setup 0~1000‰, 1000‰ results in
+// pure white.
+//
+// Input:
+// ------
+// Encoded pixel color value
+// Brighten value, 0 ~ 1000‰
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+extern GuiConst_INTCOLOR GuiLib_BrightenPixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_DarkenRgbColor
+// =====================
+//
+// Darkens RGB color 0~1000‰, 1000‰ results in pure black.
+//
+// Input:
+// ------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+// Darken value, 0 ~ 1000‰
+//
+// Output:
+// -------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+extern GuiConst_INT32U GuiLib_DarkenRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_DarkenPixelColor
+// =======================
+//
+// Darkens color in display controller color setup 0~1000‰, 1000‰ results in
+// pure black.
+//
+// Input:
+// ------
+// Encoded pixel color value
+// Darken value, 0 ~ 1000‰
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+extern GuiConst_INTCOLOR GuiLib_DarkenPixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_MiddleRgbColor
+// =====================
+//
+// Gives middle color, between color 1 and color 2.
+// Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives color 2.
+//
+// Input:
+// ------
+// RGB color 1 value
+// RGB color 2 value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+// Color ratio, 0 ~ 1000‰
+//
+// Output:
+// -------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+extern GuiConst_INT32U GuiLib_MiddleRgbColor(
+   GuiConst_INT32U RgbColor1,
+   GuiConst_INT32U RgbColor2,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_MiddlePixelColor
+// =======================
+//
+// Gives middle color in display controller color setup,
+// between color 1 and color 2.
+// Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives color 2.
+//
+// Input:
+// ------
+// Encoded pixel color 1 value
+// Encoded pixel color 2 value
+// Color ratio, 0 ~ 1000‰
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+extern GuiConst_INTCOLOR GuiLib_MiddlePixelColor(
+   GuiConst_INTCOLOR PixelColor1,
+   GuiConst_INTCOLOR PixelColor2,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_DesaturateRgbColor
+// =========================
+//
+// Removes saturation from color, turning it towards gray color.
+// Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives gray.
+//
+// Input:
+// ------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+// Desaturation ratio, 0 ~ 1000‰
+//
+// Output:
+// -------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+extern GuiConst_INT32U GuiLib_DesaturateRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_DesaturatePixelColor
+// ===========================
+//
+// Removes saturation from color, turning it towards gray color.
+// Ratio in 0~1000‰, 0‰ gives color 1, 1000‰ gives gray.
+//
+// Input:
+// ------
+// Encoded pixel color value
+// Color ratio, 0 ~ 1000‰
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+extern GuiConst_INTCOLOR GuiLib_DesaturatePixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_AccentuateRgbColor
+// =========================
+//
+// Accentuates RGB color. Colors with less than 50% mean gray are made darker,
+// otherwise brighter. Amount in ‰, 0‰ gives no change, 1000‰ gives pure black
+// or white.
+//
+// Input:
+// ------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+// Accentuate value, 0 ~ 1000‰
+//
+// Output:
+// -------
+// RGB color value
+// (32 bit, 24 bits used, low byte = Red, middle byte = Green, high byte = Blue)
+//
+extern GuiConst_INT32U GuiLib_AccentuateRgbColor(
+   GuiConst_INT32U RgbColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_AccentuatePixelColor
+// ===========================
+//
+// Accentuates color in display controller color setup. Colors with less than
+// 50% mean gray are made darker, otherwise brighter. Amount in ‰, 0‰ gives no
+// change, 1000‰ gives pure black or white.
+//
+// Input:
+// ------
+// Encoded pixel color value
+// Accentuate value, 0 ~ 1000‰
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+extern GuiConst_INTCOLOR GuiLib_AccentuatePixelColor(
+   GuiConst_INTCOLOR PixelColor,
+   GuiConst_INT16U Amount);
+// -----------------------------------------------------------------------------
+
+// =============================================================================
+// GuiLib_SetButtonDisabledColor
+// =============================
+//
+// Override automatic generation of button disabled color with the specified
+// pixel color value.
+//
+// Input:
+// ------
+// Encoded pixel color value
+//
+// Output:
+// -------
+// Encoded pixel color value
+//
+GuiConst_INTCOLOR GuiLib_SetButtonDisabledColor(GuiConst_INTCOLOR PixelColor);
+// -----------------------------------------------------------------------------
+
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+
+// =============================================================================
+// GuiLib_ResetClipping
+// ====================
+//
+// Resets clipping.
+// Drawing can be limited to a rectangular portion of the screen,
+// this routine resets the clipping limits to the entire screen.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ResetClipping(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_SetClipping
+// ==================
+//
+// Sets clipping.
+// Drawing can be limited to a rectangular portion of the screen,
+// this routine sets the clipping limits expressed as two opposite
+// corner coordinates.
+//
+// Input:
+// ------
+// Rectangle coordinates
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_SetClipping(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+// =============================================================================
+// GuiLib_ResetDisplayRepaint
+// ==========================
+//
+// Resets all repainting scan line markers.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ResetDisplayRepaint(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_MarkDisplayBoxRepaint
+// ============================
+//
+// Sets the repainting scan line markers, indicating that all pixels inside the
+// specified rectangle must be repainted.
+//
+// Input:
+// ------
+// Rectangle coordinates
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_MarkDisplayBoxRepaint(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ClearDisplay
+// ===================
+//
+// Clears the screen.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ClearDisplay(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Dot
+// ==========
+//
+// Draws a single pixel.
+//
+// Input:
+// ------
+// Coordinates
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Dot(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetDot
+// =============
+//
+// Returns the color of a single pixel.
+//
+// Input:
+// ------
+// Coordinates
+//
+// Output:
+// -------
+// Color
+//
+extern GuiConst_INTCOLOR GuiLib_GetDot(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Line
+// ===========
+//
+// Draws a line.
+//
+// Input:
+// ------
+// Coordinates
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Line(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_LinePattern
+// ==================
+//
+// Draws a patterned line.
+//
+// Input:
+// ------
+// Coordinates
+// Line pattern (8 pixel pattern)
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_LinePattern(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INT8U LinePattern,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_HLine
+// ============
+//
+// Draws a horizontal line.
+//
+// Input:
+// ------
+// Coordinates
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_HLine(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_VLine
+// ============
+//
+// Draws a vertical line.
+//
+// Input:
+// ------
+// Coordinates
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_VLine(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Box
+// ==========
+//
+// Draws a single pixel wide rectangle.
+//
+// Input:
+// ------
+// Coordinates
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Box(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_FillBox
+// ==============
+//
+// Draws a filled rectangle.
+//
+// Input:
+// ------
+// Coordinates
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_FillBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_BorderBox
+// ================
+//
+// Draws a filled rectangle with single pixel border.
+//
+// Input:
+// ------
+// Coordinates
+// Border and fill colors
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_BorderBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INTCOLOR BorderColor,
+   GuiConst_INTCOLOR FillColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_InvertBox
+// ================
+//
+// Inverts a block.
+//
+// Input:
+// ------
+// Coordinates
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_InvertBox(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Circle
+// =============
+//
+// Draws a filled or framed circle with single pixel width border.
+//
+// Input:
+// ------
+// Center coordinate
+// Radius
+// Border color, GuiLib_NO_COLOR means same color as fill color
+// Fill color, GuiLib_NO_COLOR means no filling
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Circle(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U Radius,
+   GuiConst_INT32S BorderColor,
+   GuiConst_INT32S FillColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Ellipse
+// ==============
+//
+// Draws a filled or framed ellipse with single pixel width border.
+//
+// Input:
+// ------
+// Center coordinate
+// Horizontal and vertical radii
+// Border color, GuiLib_NO_COLOR means same color as fill color
+// Fill color, GuiLib_NO_COLOR means no filling
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Ellipse(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U Radius1,
+   GuiConst_INT16U Radius2,
+   GuiConst_INT32S BorderColor,
+   GuiConst_INT32S FillColor);
+// -----------------------------------------------------------------------------
+
+
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+
+// =============================================================================
+// GuiLib_ShowBitmap
+// =================
+//
+// Displays a stored bitmap.
+//
+// Input:
+// ------
+// Bitmap index in GuiStruct_BitmapPtrList
+// Coordinates for upper left corner
+// Transparent background color, -1 means no transparency
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ShowBitmap(
+   GuiConst_INT16U BitmapIndex,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT32S TranspColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ShowBitmapAt
+// ===================
+//
+// Displays a bitmap at a specific address.
+// The data in the memory area must conform to the format explained in the
+// easyGUI user manual.
+//
+// Input:
+// ------
+// Pointer to memory area
+// Coordinates for upper left corner
+// Transparent background color, -1 means no transparency
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ShowBitmapAt(
+   GuiConst_INT8U * BitmapPtr,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT32S TranspColor);
+// -----------------------------------------------------------------------------
+
+
+// ============================================================================
+// GuiLib_ShowBitmapArea
+// =====================
+//
+// Displays part of a stored bitmap.
+//
+// Input:
+// ------
+// Bitmap index in GuiStruct_BitmapPtrList
+// Starting coordinates for upper left corner of bitmap
+// Absolute coordinates for upper left and lower right corner of displayed area
+// Transparent background color, -1 means no transparency
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ShowBitmapArea(
+   GuiConst_INT16U BitmapIndex,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S AX1,
+   GuiConst_INT16S AY1,
+   GuiConst_INT16S AX2,
+   GuiConst_INT16S AY2,
+   GuiConst_INT32S TranspColor);
+// -----------------------------------------------------------------------------
+
+
+// ============================================================================
+// GuiLib_ShowBitmapAreaAt
+// =======================
+//
+// Displays part of a bitmap at a specific address.
+// The data in the memory area must conform to the format explained in the
+// easyGUI user manual.
+//
+// Input:
+// ------
+// Pointer to memory area
+// Starting coordinates for upper left corner of bitmap
+// Absolute coordinates for upper left and lower right corner of displayed area
+// Transparent background color, -1 means no transparency
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ShowBitmapAreaAt(
+   GuiConst_INT8U * BitmapPtr,
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S AX1,
+   GuiConst_INT16S AY1,
+   GuiConst_INT16S AX2,
+   GuiConst_INT16S AY2,
+   GuiConst_INT32S TranspColor);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+// =============================================================================
+// GuiLib_DrawChar
+// ===============
+//
+// Draws a single character on the display.
+//
+// Input:
+// ------
+// Coordinates
+// Font index
+// Character
+// Color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_DrawChar(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U FontNo,
+   GuiConst_TEXT Character,
+   GuiConst_INTCOLOR Color);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_DrawStr
+// ==============
+//
+// Draws a text string on the display.
+//
+// Input:
+// ------
+// Coordinates
+// Font index
+// Text string
+// Alignment
+// Ps mode
+// Transparent
+// Underlining
+// Back box size X (0 = none)
+// Back box size Y1 (height above base line, 0 = default font box)
+// Back box size Y2 (height below base line, 0 = default font box)
+// Extra back box pixels
+// Text color
+// Background box color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_DrawStr(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U FontNo,
+   GuiConst_TEXT PrefixLocate *String,
+   GuiConst_INT8U Alignment,
+   GuiConst_INT8U PsWriting,
+   GuiConst_INT8U Transparent,
+   GuiConst_INT8U Underlining,
+   GuiConst_INT16S BackBoxSizeX,
+   GuiConst_INT16S BackBoxSizeY1,
+   GuiConst_INT16S BackBoxSizeY2,
+   GuiConst_INT8U BackBorderPixels,
+   GuiConst_INTCOLOR ForeColor,
+   GuiConst_INTCOLOR BackColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_DrawVar
+// ==============
+//
+// Draws a variable on the display.
+//
+// Input:
+// ------
+// Coordinates
+// Font index
+// Variable pointer reference
+// Variable type - can be:
+//                   GuiLib_VAR_BOOL
+//                   GuiLib_VAR_UNSIGNED_CHAR
+//                   GuiLib_VAR_SIGNED_CHAR
+//                   GuiLib_VAR_UNSIGNED_INT
+//                   GuiLib_VAR_SIGNED_INT
+//                   GuiLib_VAR_UNSIGNED_LONG
+//                   GuiLib_VAR_SIGNED_LONG
+//                   GuiLib_VAR_FLOAT
+//                   GuiLib_VAR_DOUBLE
+//                   GuiLib_VAR_STRING
+// Variable format - can be:
+//                   GuiLib_FORMAT_DEC
+//                   GuiLib_FORMAT_EXP
+//                   GuiLib_FORMAT_HEX
+//                   GuiLib_FORMAT_TIME_MMSS
+//                   GuiLib_FORMAT_TIME_HHMM_24
+//                   GuiLib_FORMAT_TIME_HHMMSS_24
+//                   GuiLib_FORMAT_TIME_HHMM_12_ampm
+//                   GuiLib_FORMAT_TIME_HHMMSS_12_ampm
+//                   GuiLib_FORMAT_TIME_HHMM_12_AMPM
+//                   GuiLib_FORMAT_TIME_HHMMSS_12_AMPM
+// Variable format field width
+// Variable format alignment - can be:
+//                   GuiLib_FORMAT_ALIGNMENT_LEFT
+//                   GuiLib_FORMAT_ALIGNMENT_CENTER
+//                   GuiLib_FORMAT_ALIGNMENT_RIGHT
+// Variable format decimals
+// Variable format show sign (true or false)
+// Variable format zero padding (true or false)
+// Variable format trailing zeros (true or false)
+// Variable format thousands separator (true or false)
+// Alignment
+// Ps mode
+// Transparent
+// Underlining
+// Back box size X (0 = none)
+// Back box size Y1 (height above base line, 0 = default font box)
+// Back box size Y2 (height below base line, 0 = default font box)
+// Extra back box pixels
+// Text color
+// Background box color
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_DrawVar(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16U FontNo,
+   void PrefixLocate *VarPtr,
+   GuiConst_INT8U VarType,
+   GuiConst_INT8U FormatterFormat,
+   GuiConst_INT8U FormatterFieldWidth,
+   GuiConst_INT8U FormatterAlignment,
+   GuiConst_INT8U FormatterDecimals,
+   GuiConst_INT8U FormatterShowSign,
+   GuiConst_INT8U FormatterZeroPadding,
+   GuiConst_INT8U FormatterTrailingZeros,
+   GuiConst_INT8U FormatterThousandsSeparator,
+   GuiConst_INT8U Alignment,
+   GuiConst_INT8U PsWriting,
+   GuiConst_INT8U Transparent,
+   GuiConst_INT8U Underlining,
+   GuiConst_INT16S BackBoxSizeX,
+   GuiConst_INT16S BackBoxSizeY1,
+   GuiConst_INT16S BackBoxSizeY2,
+   GuiConst_INT8U BackBorderPixels,
+   GuiConst_INTCOLOR ForeColor,
+   GuiConst_INTCOLOR BackColor);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Init
+// ===========
+//
+// Initialises the easyGUI library module.
+// MUST be called at application startup, before using the easyGUI library.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Init(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Clear
+// ============
+//
+// Clears the screen, and resets the easyGUI system.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Clear(void);
+// -----------------------------------------------------------------------------
+
+
+#ifdef GuiConst_CHARMODE_UNICODE
+
+// =============================================================================
+// GuiLib_UnicodeStrLen
+// ====================
+//
+// Calculates length of Unicode string.
+// This function is equivalent to the ANSI character mode strlen function.
+//
+// Input:
+// ------
+// Unicode string reference
+//
+// Output:
+// -------
+// Length in characters, excluding zero termination
+//
+extern GuiConst_INT16U GuiLib_UnicodeStrLen(
+   GuiConst_TEXT PrefixLocate *S);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_StrAnsiToUnicode
+// =======================
+//
+// Converts ANSI string to Unicode string.
+//
+// Input:
+// ------
+// ANSI and Unicode string references
+// Unicode string must have sufficient space
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_StrAnsiToUnicode(
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_CHAR PrefixLocate *S1);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_UnicodeStrCmp
+// ====================
+//
+// Compares two Unicode strings.
+// This function is equivalent to the ANSI character mode strcmp function.
+//
+// Input:
+// ------
+// Unicode string references
+//
+// Output:
+// -------
+// <0: S1 is less than S2
+// =0: S1 and S2 are equal
+// >0: S1 is greater than S2
+//
+GuiConst_INT16S GuiLib_UnicodeStrCmp(
+   GuiConst_TEXT PrefixLocate *S1,
+   GuiConst_TEXT PrefixLocate *S2);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_UnicodeStrNCmp
+// =====================
+//
+// Compares two Unicode strings, until the N'th character.
+// This function is equivalent to the ANSI character mode strncmp function.
+//
+// Input:
+// ------
+// Unicode string references
+// Character count to compare
+//
+// Output:
+// -------
+// <0: S1 is less than S2 inside the N characters
+// =0: S1 and S2 are equal inside the N characters
+// >0: S1 is greater than S2 inside the N characters
+//
+GuiConst_INT16S GuiLib_UnicodeStrNCmp(
+   GuiConst_TEXT PrefixLocate *S1,
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_INT16U StrLen);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_UnicodeStrCpy
+// ====================
+//
+// Copy from one Unicode string to another.
+// This function is equivalent to the ANSI character mode strcpy function
+//
+// Input:
+// ------
+// S1: Unicode source string reference
+// S2: Unicode destination string reference
+// Unicode destination string must have sufficient space
+//
+// Output:
+// -------
+// None
+//
+void GuiLib_UnicodeStrCpy(
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_TEXT PrefixLocate *S1);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_UnicodeStrNCpy
+// =====================
+//
+// Copy from one Unicode string to another. No more than source StrLen bytes are
+// copied.
+// Bytes following a source null byte are not copied.
+// If needed target is padded with null bytes until reaching StrLen.
+// This function is equivalent to the ANSI character mode strncpy function.
+//
+// Input:
+// ------
+// S1: Unicode source string reference
+// S2: Unicode destination string reference
+// StrLen: Number of characters to copy
+// Unicode destination string must have sufficient space
+//
+// Output:
+// -------
+// None
+//
+void GuiLib_UnicodeStrNCpy(
+   GuiConst_TEXT PrefixLocate *S2,
+   GuiConst_TEXT PrefixLocate *S1,
+   GuiConst_INT16U StrLen);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+// =============================================================================
+// GuiLib_ShowScreen
+// =================
+//
+// Instructs structure drawing task to draw a complete structure.
+//
+// Input:
+// ------
+// Structure ID
+// Active cursor field No. -
+//    use GuiLib_NO_CURSOR if there is no cursor to show
+// Maintain or erase old AutoReadraw fields -
+//    use GuiLib_NO_RESET_AUTO_REDRAW or GuiLib_RESET_AUTO_REDRAW
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ShowScreen(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16S CursorFieldToShow,
+   GuiConst_INT8U ResetAutoRedraw);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetTextLanguagePtr
+// =========================
+//
+// Returns pointer to text in structure
+// Language of selected text can be freely selected, no matter what language
+// is active
+//
+// Input:
+// ------
+// Structure ID
+// Text No. - index 0 is first text in structure, Item types other than Texts
+// and Paragraph are ignored
+//
+// Output:
+// -------
+// Pointer to text based on structure, text No. and current language
+// Returns Nil if no text was found
+//
+extern GuiConst_TEXT PrefixLocate *GuiLib_GetTextLanguagePtr(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16U TextNo,
+   GuiConst_INT16S LanguageIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetTextPtr
+// =================
+//
+// Returns pointer to text in structure
+//
+// Input:
+// ------
+// Structure ID
+// Text No. - index 0 is first text in the structure, item types other than
+// Text and Paragraph are ignored
+//
+// Output:
+// -------
+// Pointer to text based on structure, text No. and current language
+// Returns Nil if no text was found
+//
+extern GuiConst_TEXT PrefixLocate *GuiLib_GetTextPtr(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16U TextNo);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetTextWidth
+// ===================
+//
+// Returns width of text in pixels
+//
+// Input:
+// ------
+// Pointer to text string
+// Pointer to font
+// PS writing mode - can be:
+//   GuiLib_PS_OFF   No proportional writing
+//   GuiLib_PS_ON    Normal proportional writing
+//   GuiLib_PS_NUM   Numerical proportional writing
+//
+// Output:
+// -------
+// Width of text in pixels, returns zero if an error is encountered
+//
+extern GuiConst_INT16U GuiLib_GetTextWidth(
+   GuiConst_TEXT PrefixLocate *String,
+   GuiLib_FontRecConstPtr Font,
+   GuiConst_INT8U PsWriting);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GetCharCode
+// ==================
+//
+// Returns ANSI or Unicode code of specific character in string
+//
+// Input:
+// ------
+// Structure ID
+// Text No. - index 0 is first text in the structure, item types other than
+// Text and Paragraph are ignored
+// Character position
+// Omit control codes, Control codes are soft and hard line breaks
+//   0 - count all charactes
+//   1 - omit control codes during counting
+//
+// Output:
+// -------
+// ANSI or Unicode code of character, returns zero if an error is encountered
+//
+extern GuiConst_TEXT GuiLib_GetCharCode(
+   const GuiConst_INT16U StructureNdx,
+   GuiConst_INT16U TextNo,
+   GuiConst_INT16U CharNo,
+   GuiConst_INT16U OmitCtrlCode);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_GuiLib_ClearPositionCallbacks
+// ====================================
+//
+// Resets all position callback function references - no callbacks will then
+// happen, until GuiLib_SetPositionCallbackFunc has been called
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_ClearPositionCallbacks(void);
+
+
+// =============================================================================
+// GuiLib_SetPositionCallbackFunc
+// ==============================
+//
+// Defines a callback function for a specific position callback item
+// The callback function will be called each time a structure containing a
+// position callback item with the same index number. The callback will contain
+// the index number and the current X,Y display coordinates.
+//
+// Input:
+// ------
+// Position callback index No.
+// Position callback function - function style is F(IndexNo, X, Y)
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_SetPositionCallbackFunc(
+   GuiConst_INT16U IndexNo,
+   void (*PosCallbackFunc) (GuiConst_INT16U IndexNo,
+                            GuiConst_INT16S X,
+                            GuiConst_INT16S Y));
+
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+
+// =============================================================================
+// GuiLib_GetBlinkingCharCode
+// ==========================
+//
+// Returns ANSI or Unicode code of character in string marked as blinking field
+//
+// Input:
+// ------
+// Blinking item No.
+// Character position
+// Omit control codes, Control codes are soft and hard line breaks
+//   0 - count all charactes
+//   1 - omit control codes during counting
+//
+// Output:
+// -------
+// ANSI or Unicode code of character, returns zero if an error is encountered
+//
+extern GuiConst_TEXT GuiLib_GetBlinkingCharCode(
+   GuiConst_INT16U BlinkFieldNo,
+   GuiConst_INT16U CharNo,
+   GuiConst_INT16U OmitCtrlCode);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+// =============================================================================
+// GuiLib_SetLanguage
+// ==================
+//
+// Selects current language. Index zero is the reference language.
+//
+// Input:
+// ------
+// Language index
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_SetLanguage(
+   GuiConst_INT16S NewLanguage);
+// -----------------------------------------------------------------------------
+
+
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+
+// =============================================================================
+// GuiLib_Cursor_Hide
+// ==================
+//
+// Hides cursor field.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Cursor_Hide(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_IsCursorFieldInUse
+// =========================
+//
+// Reports if a cursor field is active.
+//
+// Input:
+// ------
+// Query cursor field No.
+//
+// Output:
+// -------
+// 0 = Cursor field not active
+// 1 = Cursor field active
+//
+extern GuiConst_INT8U GuiLib_IsCursorFieldInUse(
+   GuiConst_INT16S AskCursorFieldNo);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Cursor_Select
+// ====================
+//
+// Makes requested cursor field active, redrawing both current and new cursor
+// field.
+//
+// Input:
+// ------
+// New cursor field No.
+// -1 hides cursor.
+//
+// Output:
+// -------
+// 0 = No change, requested cursor field is invalid
+// 1 = Cursor moved // extern GuiConst_INT8U GuiLib_Cursor_Select(
+//  GuiConst_INT16S NewCursorFieldNo);
+//
+extern GuiConst_INT8U GuiLib_Cursor_Select(
+   GuiConst_INT16S NewCursorFieldNo);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Cursor_Down
+// ==================
+//
+// Makes next cursor field active, redrawing both current and new cursor field.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// 0 = Cursor at end of range
+// 1 = Cursor moved
+//
+extern GuiConst_INT8U GuiLib_Cursor_Down(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Cursor_Up
+// ================
+//
+// Makes previous cursor field active, redrawing both current and new cursor
+// field.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// 0 = Cursor at end of range
+// 1 = Cursor moved
+//
+extern GuiConst_INT8U GuiLib_Cursor_Up(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Cursor_Home
+// ==================
+//
+// Makes first cursor field active, redrawing both current and new cursor
+// field.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// 0 = No change, first cursor field already active
+// 1 = Cursor moved
+//
+extern GuiConst_INT8U GuiLib_Cursor_Home(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Cursor_End
+// =================
+//
+// Makes last cursor field active, redrawing both current and new cursor
+// field.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// 0 = No change, last cursor field already active
+// 1 = Cursor moved
+//
+extern GuiConst_INT8U GuiLib_Cursor_End(void);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+#ifdef GuiConst_BLINK_SUPPORT_ON
+
+// =============================================================================
+// GuiLib_BlinkBoxStart
+// ====================
+//
+// Sets parameters for blinking box function
+//
+// Input:
+// ------
+// X1, Y1, X2, Y2: Blinking rectangle
+// Rate: Blinking rate, in multiples of refresh rate, valid range 0-255
+//       Rate = 255 disables blinking, but makes an initial inverting of the
+//       rectangle
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_BlinkBoxStart(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2,
+   GuiConst_INT16S Rate);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_BlinkBoxStop
+// ===================
+//
+// Stops blinking box function
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_BlinkBoxStop(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_BlinkBoxMarkedItem
+// =========================
+//
+// Sets parameters for blinking box function based on marked blink text field
+//
+// Input:
+// ------
+// BlinkFieldNo: Index No. to marked blink text field in structure
+// CharNo: Character number in text, first character is No. 1
+//         CharNo = 0 means entire text
+// Rate: Blinking rate, in multiples of refresh rate, valid range 0-255
+//       Rate = 255 disables blinking, but makes an initial marking of the
+//       character/text
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_BlinkBoxMarkedItem(
+   GuiConst_INT16U BlinkFieldNo,
+   GuiConst_INT16U CharNo,
+   GuiConst_INT16S Rate);
+// -----------------------------------------------------------------------------
+
+// =============================================================================
+// GuiLib_BlinkBoxMarkedItemStop
+// =============================
+//
+// Stops blinking box function based on marked blink text field
+//
+// Input:
+// ------
+// BlinkFieldNo: Index No. to marked blink text field in structure
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_BlinkBoxMarkedItemStop(
+   GuiConst_INT16U BlinkFieldNo);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_BlinkBoxMarkedItemUpdate
+// ===============================
+//
+// Update parameters for blinking box function based on marked blink text field
+//
+// Input:
+// ------
+// BlinkFieldNo: Index No. to marked blink text field in structure
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_BlinkBoxMarkedItemUpdate(
+   GuiConst_INT16U BlinkFieldNo);
+
+//------------------------------------------------------------------------------
+
+#endif
+
+
+// =============================================================================
+// GuiLib_InvertBoxStart
+// =====================
+//
+// Sets parameters for inverted box function
+//
+// Input:
+// ------
+// X1, Y1, X2, Y2: Inverted box rectangle
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_InvertBoxStart(
+   GuiConst_INT16S X1,
+   GuiConst_INT16S Y1,
+   GuiConst_INT16S X2,
+   GuiConst_INT16S Y2);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_InvertBoxStop
+// ====================
+//
+// Stops inverted box function
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_InvertBoxStop(void);
+// -----------------------------------------------------------------------------
+
+
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+
+// =============================================================================
+// GuiLib_TouchCheck
+// =================
+//
+// Returns touch area No. corresponding to the supplied coordinates.
+// If no touch area is found at coordinates -1 is returned.
+// Touch coordinates are converted to display coordinates, if conversion
+// parameters have been set with the GuiLib_TouchAdjustSet function.
+//
+// Input:
+// ------
+// X, Y: Touch position in touch interface coordinates
+//
+// Output:
+// -------
+// -1  = No touch area found
+// >=0 = Touch area No.
+//
+//
+extern GuiConst_INT32S GuiLib_TouchCheck(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TouchGet
+// ===============
+//
+// Performs the same action as GuiLib_TouchCheck, and additionally returns
+// touch coordinates in display coordinates:
+// Returns touch area No. corresponding to the supplied coordinates.
+// If no touch area is found at coordinates -1 is returned.
+// Touch coordinates are converted to display coordinates, if conversion
+// parameters have been set with the GuiLib_TouchAdjustSet function.
+// OBS: If no conversion parameters have been set with the GuiLib_TouchAdjustSet
+// function the calculated touch coordinates in display coordinates will be
+// TouchX = X, and TouchY = Y.
+//
+// Input:
+// ------
+// X, Y: Touch position in touch interface coordinates
+// TouchX, TouchY: Addresses of the variables where touch coordinates
+//                 converted to display coordinates will be stored
+//
+// Output:
+// -------
+// -1  = No touch area found
+// >=0 = Touch area No.
+//
+//
+extern GuiConst_INT32S GuiLib_TouchGet(
+   GuiConst_INT16S X,
+   GuiConst_INT16S Y,
+   GuiConst_INT16S* TouchX,
+   GuiConst_INT16S* TouchY);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TouchAdjustReset
+// =======================
+//
+// Resets touch coordinate conversion.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_TouchAdjustReset(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TouchAdjustSet
+// =====================
+//
+// Sets one coordinate pair for touch coordinate conversion.
+// Must be called two times, once for each of two diagonally opposed corners,
+// or four times, once for each of the corners.
+// The corner positions should be as close as possible to the physical display
+// corners, as precision is lowered when going towards the display center.
+//
+// Input:
+// ------
+// XTrue, YTrue        : Position represented in display coordinates
+// XMeasured, YMeasured: Position represented in touch interface coordinates
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_TouchAdjustSet(
+   GuiConst_INT16S XTrue,
+   GuiConst_INT16S YTrue,
+   GuiConst_INT16S XMeasured,
+   GuiConst_INT16S YMeasured);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+// =============================================================================
+// GuiLib_Refresh
+// ==============
+//
+// Refreshes variables and updates display.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_Refresh(void);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TestPattern
+// ==================
+//
+// Makes test pattern for display control error diagnosis. See user manual for
+// further info.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// None
+//
+extern void GuiLib_TestPattern(void);
+// -----------------------------------------------------------------------------
+
+
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+
+// =============================================================================
+// GuiLib_ScrollBox_Init
+// =====================
+//
+// Initializes a scroll box (new item type style).
+//
+// Input:
+// ------
+// Scroll box index
+// DataFuncPtr: Address of scroll line call-back function of type
+//    "void F(GuiConst_INT16S LineIndex)"
+// NoOfLines: Total No. of lines in scroll box
+// ActiveLine: Active scroll line, -1 means no active scroll line
+//
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_Init(
+   GuiConst_INT8U ScrollBoxIndex,
+   void (*DataFuncPtr) (GuiConst_INT16S LineIndex),
+   GuiConst_INT16S NoOfLines,
+   GuiConst_INT16S ActiveLine);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_Redraw
+// =======================
+//
+// Redraws dynamic parts of scroll box (new item type style).
+// For complete redraw use GuiLib_ScrollBox_Init.
+//
+// Input:
+// ------
+// Scroll box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_Redraw(
+   GuiConst_INT8U ScrollBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_RedrawLine
+// ===========================
+//
+// Redraws single line of scroll box (new item type style).
+// If line is not visible no action is performed.
+//
+// Input:
+// ------
+// Scroll box index
+// Scroll line to redraw, index zero is first line in scroll box list
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_RedrawLine(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLine);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_Close
+// ======================
+//
+// Closes a scroll box (new item type style).
+//
+// Input:
+// ------
+// Scroll box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_Close(
+   GuiConst_INT8U ScrollBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_Down
+// =====================
+//
+// Makes next scroll line active, and scrolls list if needed (new item type
+// style).
+//
+// Input:
+// ------
+// Scroll box index
+//
+// Output:
+// -------
+// 0 = No change, list already at bottom
+// 1 = Active scroll line changed
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_Down(
+   GuiConst_INT8U ScrollBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_Up
+// ===================
+//
+// Makes previous scroll line active, and scrolls list if needed (new item type
+// style).
+//
+// Input:
+// ------
+// Scroll box index
+//
+// Output:
+// -------
+// 0 = No change, list already at top
+// 1 = Active scroll line changed
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_Up(
+   GuiConst_INT8U ScrollBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_Home
+// =====================
+//
+// Makes first scroll line active, and scrolls list if needed (new item type
+// style).
+//
+// Input:
+// ------
+// Scroll box index
+//
+// Output:
+// -------
+// 0 = No change, list already at top
+// 1 = Active scroll line changed
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_Home(
+   GuiConst_INT8U ScrollBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_End
+// ====================
+//
+// Makes last scroll line active, and scrolls list if needed (new item type
+// style).
+//
+// Input:
+// ------
+// Scroll box index
+//
+// Output:
+// -------
+// 0 = No change, list already at bottom
+// 1 = Active scroll line changed
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_End(
+   GuiConst_INT8U ScrollBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_To_Line
+// ========================
+//
+// Makes specified scroll line active, and scrolls list if needed (new item type
+// style).
+//
+// Input:
+// ------
+// Scroll box index
+// New scroll line, -1 means no active scroll line
+//
+// Output:
+// -------
+// 0 = No change, list already at specified line
+// 1 = Active scroll line changed
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_To_Line(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16S NewLine);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_SetLineMarker
+// ==============================
+//
+// Sets scroll marker position and line count.
+// Scroll marker index 0 (active scroll line) can only cover 1 scroll line.
+// Display only changes after subsequent GuiLib_ScrollBox_Redraw call.
+//
+// Input:
+// ------
+// Scroll box index
+// Scroll marker index
+// Marker start line, -1 means no marker
+// Marker line count (clipped to a maximum of 1 for marker index 0)
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_SetLineMarker(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLineMarkerIndex,
+   GuiConst_INT16S StartLine,
+   GuiConst_INT16U Size);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_GetActiveLine
+// ==============================
+//
+// Returns topmost scroll marker line of selected scroll box / marker.
+//
+// Input:
+// ------
+// Scroll box index
+// Scroll marker index (0 = active scroll line, >0 = secondary line markers)
+//
+// Output:
+// -------
+// Index of topmost scroll marker line
+// -1 = Error in parameters
+//
+extern GuiConst_INT16S GuiLib_ScrollBox_GetActiveLine(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLineMarkerIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_GetActiveLineCount
+// ===================================
+//
+// Returns number of marked lines in selected scroll box / marker.
+//
+// Input:
+// ------
+// Scroll box index
+// Scroll marker index (0 = active scroll line, >0 = secondary line markers)
+//
+// Output:
+// -------
+// Count of marked scroll lines
+// -1 = Error in parameters
+// Active scroll line (scroll marker index = 0) will always return 1
+//
+extern GuiConst_INT16S GuiLib_ScrollBox_GetActiveLineCount(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16U ScrollLineMarkerIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_SetIndicator
+// =============================
+//
+// Sets scroll indicator position.
+// Display only changes after subsequent GuiLib_ScrollBox_Redraw call.
+//
+// Input:
+// ------
+// Scroll box index
+// Indicator line, -1 means no indicator
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_SetIndicator(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16S StartLine);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_SetTopLine
+// ===========================
+//
+// Sets topmost visible scroll line of selected scroll box.
+// Display only changes after subsequent GuiLib_ScrollBox_Redraw call.
+// If simultaneously setting line marker position make sure top line setting is
+// last action before GuiLib_ScrollBox_Redraw call.
+//
+// Input:
+// ------
+// Scroll box index
+// Index of topmost visible scroll line
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_ScrollBox_SetTopLine(
+   GuiConst_INT8U ScrollBoxIndex,
+   GuiConst_INT16S TopLine);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_ScrollBox_GetTopLine
+// ===========================
+//
+// Returns topmost visible scroll line of selected scroll box.
+//
+// Input:
+// ------
+// Scroll box index
+//
+// Output:
+// -------
+// Index of topmost visible scroll line
+// -1  = Error in parameters
+//
+extern GuiConst_INT16S GuiLib_ScrollBox_GetTopLine(
+   GuiConst_INT8U ScrollBoxIndex);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+
+// =============================================================================
+// GuiLib_Graph_Close
+// ==================
+//
+// Closes a graph, so that no futher actions can be accomplished with it.
+// Memory assigned to datasets must be freed independently.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+GuiConst_INT8U GuiLib_Graph_Close(
+   GuiConst_INT8U GraphIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_AddDataSet
+// =======================
+//
+// Adds a data set to a graph. The data set must be created in the structure,
+// but is not shown before this function is called.
+// Memory must be assigned independently for the data set.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// DataSetIndex: Index of data set in the graph (index is zero based).
+// XAxisIndex: Index of X-axis to use.
+// YAxisIndex: Index of Y-axis to use.
+// DataPtr: Pointer to an array of data points, where each data point is a 32
+//    bit signed X,Y entity of type GuiLib_GraphDataPoint.
+// DataSize: Maximum number of data points possible in the data set.
+// DataCount: Number of active data points in the data set.
+// DataFirst: Index of first active data point (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_AddDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex,
+   GuiConst_INT8U XAxisIndex,
+   GuiConst_INT8U YAxisIndex,
+   GuiLib_GraphDataPoint *DataPtr,
+   GuiConst_INT16U DataSize,
+   GuiConst_INT16U DataCount,
+   GuiConst_INT16U DataFirst);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_RemoveDataSet
+// ==========================
+//
+// Removes a data set from a graph.
+// Memory must be released independently for the data set.
+// Nothing is drawn in this function.
+//
+//------------------------------------------------------------------------------
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// DataSetIndex: Index of data set in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_RemoveDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_AddDataPoint
+// =========================
+//
+// Adds a data point to a data set. The data set must have sufficient space for
+// the new data point.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// DataSetIndex: Index of data set in the graph (index is zero based).
+// DataPointX, DataPointY: The data point.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_AddDataPoint(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex,
+   GuiConst_INT32S DataPointX,
+   GuiConst_INT32S DataPointY);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_ShowDataSet
+// ========================
+//
+// Marks a data set as visible.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// DataSetIndex: Index of data set in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_ShowDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_HideDataSet
+// ========================
+//
+// Marks a data set as invisible.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// DataSetIndex: Index of data set in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_HideDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_ShowXAxis
+// ======================
+//
+// Marks an X-axis as visible.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of X axis in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_ShowXAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_HideXAxis
+// ======================
+//
+// Marks an X-axis as invisible.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of X axis in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_HideXAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_ShowYAxis
+// ======================
+//
+// Marks an Y-axis as visible.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of Y axis in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_ShowYAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_HideYAxis
+// ======================
+//
+// Marks an Y-axis as invisible.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of Y axis in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_HideYAxis(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_SetXAxisRange
+// ==========================
+//
+// Changes an X-axis range.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of X axis in the graph (index is zero based).
+// MinValue, MaxValue: Limits of the X axis range.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_SetXAxisRange(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex,
+   GuiConst_INT32S MinValue,
+   GuiConst_INT32S MaxValue);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_SetYAxisRange
+// ==========================
+//
+// Changes an Y-axis range.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of Y axis in the graph (index is zero based).
+// MinValue, MaxValue: Limits of the Y axis range.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_SetYAxisRange(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U AxisIndex,
+   GuiConst_INT32S MinValue,
+   GuiConst_INT32S MaxValue);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_ResetXAxisOrigin
+// =============================
+//
+// Resets the X-axis origin to the original origin.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of X axis in the graph (index is zero based). Index -1 will
+//            reset all defined X axes.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_ResetXAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_OffsetXAxisOrigin
+// ==============================
+//
+// Adjusts the X-axis origin. Useful for dynamic graphs with moving X-axis.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of X axis in the graph (index is zero based). Index -1 will
+//            offset all defined X axes. This only makes sense if all X axes
+//            have identical scaling.
+// Offset: Amount of movement of the X axis origin.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_OffsetXAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex,
+   GuiConst_INT32S Offset);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_ResetYAxisOrigin
+// =============================
+//
+// Resets the Y-axis origin to the original origin.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of Y axis in the graph (index is zero based). Index -1 will
+//            reset all defined Y axes.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_ResetYAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_OffsetYAxisOrigin
+// ==============================
+//
+// Adjusts the Y-axis origin. Useful for dynamic graphs with moving Y-axis.
+// Nothing is drawn in this function.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// AxisIndex: Index of Y axis in the graph (index is zero based). Index -1 will
+//            offset all defined Y axes. This only makes sense if all Y axes
+//            have identical scaling.
+// Offset: Amount of movement of the Y axis origin.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_OffsetYAxisOrigin(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8S AxisIndex,
+   GuiConst_INT32S Offset);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_Redraw
+// ===================
+//
+// Redraws the complete graph, including background, axes, and data sets.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_Redraw(
+   GuiConst_INT8U GraphIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_DrawAxes
+// =====================
+//
+// Redraws the graph, including background and axes, but excluding data sets.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_DrawAxes(
+   GuiConst_INT8U GraphIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_DrawDataSet
+// ========================
+//
+// Redraws a data set.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// DataSetIndex: Index of data set in the graph (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_DrawDataSet(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex);
+//------------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_Graph_DrawDataPoint
+// ==========================
+//
+// Draws a single data point in a data set.
+//
+// Input:
+// ------
+// GraphIndex: Index of graph (index is zero based).
+// DataSetIndex: Index of data set in the graph (index is zero based).
+// DataIndex: Index of point in the data set (index is zero based).
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_Graph_DrawDataPoint(
+   GuiConst_INT8U GraphIndex,
+   GuiConst_INT8U DataSetIndex,
+   GuiConst_INT16U DataIndex);
+// -----------------------------------------------------------------------------
+
+#endif
+
+
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+
+// =============================================================================
+// GuiLib_GraphicsFilter_Init
+// ==========================
+//
+// Initializes a graphics filter call-back function.
+//
+// Input:
+// ------
+// GraphicsFilterIndex: Index of graphics filter (index is zero based).
+// FilterFuncPtr: Pointer to user-defined call-back filter function.
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+//------------------------------------------------------------------------------
+extern GuiConst_INT8U GuiLib_GraphicsFilter_Init(
+   GuiConst_INT8U GraphicsFilterIndex,
+   void (*FilterFuncPtr)
+     (GuiConst_INT8U *DestAddress,
+      GuiConst_INT16U DestLineSize,
+      GuiConst_INT8U *SourceAddress,
+      GuiConst_INT16U SourceLineSize,
+      GuiConst_INT16U Width,
+      GuiConst_INT16U Height,
+      GuiConst_INT32S FilterPars[10]));
+#endif
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Up
+// ========================
+//
+// Scrolls text box contents one text line up.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Up(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Down
+// ==========================
+//
+// Scrolls text box contents one text line down.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Down(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Home
+// ==========================
+//
+// Scrolls text box contents to the top.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Home(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_End
+// =========================
+//
+// Scrolls text box contents to the bottom.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_End(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_To_Line
+// =============================
+//
+// Scrolls text box contents to a specific text line.
+//
+// Input:
+// ------
+// Text box index
+// Text line
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_To_Line(
+   GuiConst_INT8U TextBoxIndex,
+   GuiConst_INT16S NewLine);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Up_Pixel
+// ==============================
+//
+// Scrolls text box contents one pixel position up.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Up_Pixel(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Down_Pixel
+// ================================
+//
+// Scrolls text box contents one pixel position down.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Down_Pixel(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Home_Pixel
+// ================================
+//
+// Scrolls text box contents to the top.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Home_Pixel(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_End_Pixel
+// ===============================
+//
+// Scrolls text box contents to the bottom.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_End_Pixel(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_To_PixelLine
+// ==================================
+//
+// Scrolls text box contents to a specific pixel position.
+//
+// Input:
+// ------
+// Text box index
+// Pixel line
+//
+// Output:
+// -------
+// 0 = Error in parameters
+// 1 = Ok
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_To_PixelLine(
+   GuiConst_INT8U TextBoxIndex,
+   GuiConst_INT16S NewPixelLine);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Get_Pos
+// =============================
+//
+// Returns status of topmost visible text line of text box.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX   Illegal text box index
+// GuiLib_TEXTBOX_SCROLL_INSIDE_BLOCK  Text box scrolled mid way
+// GuiLib_TEXTBOX_SCROLL_AT_HOME       Text box scrolled to the top
+// GuiLib_TEXTBOX_SCROLL_AT_END        Text box scrolled to the bottom
+// GuiLib_TEXTBOX_SCROLL_ABOVE_HOME    Text box scrolled above the top
+// GuiLib_TEXTBOX_SCROLL_BELOW_END     Text box scrolled below the bottom
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Get_Pos(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_Get_Pos_Pixel
+// ===================================
+//
+// Returns status of topmost visible pixel position of text box.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// GuiLib_TEXTBOX_SCROLL_ILLEGAL_NDX   Illegal text box index
+// GuiLib_TEXTBOX_SCROLL_INSIDE_BLOCK  Text box scrolled mid way
+// GuiLib_TEXTBOX_SCROLL_AT_HOME       Text box scrolled to the top
+// GuiLib_TEXTBOX_SCROLL_AT_END        Text box scrolled to the bottom
+// GuiLib_TEXTBOX_SCROLL_ABOVE_HOME    Text box scrolled above the top
+// GuiLib_TEXTBOX_SCROLL_BELOW_END     Text box scrolled below the bottom
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_Get_Pos_Pixel(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+// =============================================================================
+// GuiLib_TextBox_Scroll_FitsInside
+// ================================
+//
+// Determines if a text fits completely inside a text box without scrolling.
+//
+// Input:
+// ------
+// Text box index
+//
+// Output:
+// -------
+// 0 = No
+// 1 = Yes
+//
+extern GuiConst_INT8U GuiLib_TextBox_Scroll_FitsInside(
+   GuiConst_INT8U TextBoxIndex);
+// -----------------------------------------------------------------------------
+
+
+#ifdef GuiConst_REMOTE_DATA
+// =============================================================================
+// GuiLib_RemoteCheck
+// ==================
+//
+// Checks if binary remote data file has correct ID.
+//
+// Input:
+// ------
+// None
+//
+// Output:
+// -------
+// 0 = Illegal ID
+// 1 = ID accepted
+//
+extern GuiConst_INT8U GuiLib_RemoteCheck(void);
+// -----------------------------------------------------------------------------
+#endif
+
+
+
+#ifdef GuiConst_CODEVISION_COMPILER
+#pragma used-
+#endif
+// -----------------------------------------------------------------------------
+
+
+#ifdef __cplusplus /* If this is a C++ compiler, end C linkage */
+}
+
+#endif
+
+#endif
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIFixed/GuiLibStruct.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,1139 @@
+/* ************************************************************************ */
+/*                                                                          */
+/*                     (C)2004-2015 IBIS Solutions ApS                      */
+/*                            sales@easyGUI.com                             */
+/*                             www.easyGUI.com                              */
+/*                                                                          */
+/*                               v6.0.9.005                                 */
+/*                                                                          */
+/* ************************************************************************ */
+
+#ifndef __GUILIBSTRUCT_H_
+#define __GUILIBSTRUCT_H_
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+
+
+#ifdef __cplusplus /* If this is a C++ compiler, use C linkage */
+extern "C" {
+#endif
+
+#define GuiLib_ITEM_TEXT                   0
+#define GuiLib_ITEM_DOT                    1
+#define GuiLib_ITEM_LINE                   2
+#define GuiLib_ITEM_FRAME                  3
+#define GuiLib_ITEM_BLOCK                  4
+#define GuiLib_ITEM_STRUCTURE              5
+#define GuiLib_ITEM_STRUCTARRAY            6
+#define GuiLib_ITEM_CLIPRECT               7
+#define GuiLib_ITEM_VAR                    8
+#define GuiLib_ITEM_FORMATTER              9
+#define GuiLib_ITEM_BITMAP                 10
+#define GuiLib_ITEM_TEXTBLOCK              11
+#define GuiLib_ITEM_TOUCHAREA              12
+#define GuiLib_ITEM_VARBLOCK               13
+#define GuiLib_ITEM_ACTIVEAREA             14
+#define GuiLib_ITEM_SCROLLBOX              15
+#define GuiLib_ITEM_CIRCLE                 16
+#define GuiLib_ITEM_ELLIPSE                17
+#define GuiLib_ITEM_BACKGROUND             18
+#define GuiLib_ITEM_CLEARAREA              19
+#define GuiLib_ITEM_ADVGRAPH_COORDSYST     20
+#define GuiLib_ITEM_ADVGRAPH_PIXEL         21
+#define GuiLib_ITEM_ADVGRAPH_LINE          22
+#define GuiLib_ITEM_ADVGRAPH_ARC           23
+#define GuiLib_ITEM_ADVGRAPH_RECT          24
+#define GuiLib_ITEM_ADVGRAPH_ELLIPSE       25
+#define GuiLib_ITEM_ADVGRAPH_SEGMENT       26
+#define GuiLib_ITEM_ADVGRAPH_TRIANGLE      27
+#define GuiLib_ITEM_ADVGRAPH_POLYGON       28
+#define GuiLib_ITEM_GRAPH                  29
+#define GuiLib_ITEM_GRAPHICSLAYER          30
+#define GuiLib_ITEM_GRAPHICSFILTER         31
+#define GuiLib_ITEM_ROUNDEDFRAME           32
+#define GuiLib_ITEM_ROUNDEDBLOCK           33
+#define GuiLib_ITEM_QUARTERCIRCLE          34
+#define GuiLib_ITEM_QUARTERELLIPSE         35
+#define GuiLib_ITEM_CHECKBOX               36
+#define GuiLib_ITEM_RADIOBUTTON            37
+#define GuiLib_ITEM_BUTTON                 38
+#define GuiLib_ITEM_EDITBOX                39
+#define GuiLib_ITEM_PANEL                  40
+#define GuiLib_ITEM_MEMO                   41
+#define GuiLib_ITEM_LISTBOX                42
+#define GuiLib_ITEM_COMBOBOX               43
+#define GuiLib_ITEM_SCROLLAREA             44
+#define GuiLib_ITEM_PROGRESSBAR            45
+#define GuiLib_ITEM_STRUCTCOND             46
+#define GuiLib_ITEM_POSCALLBACK            47
+
+#define GuiLib_ITEMBIT_TEXT                0x00000001
+#define GuiLib_ITEMBIT_DOT                 0x00000002
+#define GuiLib_ITEMBIT_LINE                0x00000004
+#define GuiLib_ITEMBIT_FRAME               0x00000008
+#define GuiLib_ITEMBIT_BLOCK               0x00000010
+#define GuiLib_ITEMBIT_STRUCTURE           0x00000020
+#define GuiLib_ITEMBIT_STRUCTARRAY         0x00000040
+#define GuiLib_ITEMBIT_CLIPRECT            0x00000080
+#define GuiLib_ITEMBIT_VAR                 0x00000100
+#define GuiLib_ITEMBIT_FORMATTER           0x00000200
+#define GuiLib_ITEMBIT_BITMAP              0x00000400
+#define GuiLib_ITEMBIT_TEXTBLOCK           0x00000800
+#define GuiLib_ITEMBIT_TOUCHAREA           0x00001000
+#define GuiLib_ITEMBIT_VARBLOCK            0x00002000
+#define GuiLib_ITEMBIT_ACTIVEAREA          0x00004000
+#define GuiLib_ITEMBIT_SCROLLBOX           0x00008000
+#define GuiLib_ITEMBIT_CIRCLE              0x00010000
+#define GuiLib_ITEMBIT_ELLIPSE             0x00020000
+#define GuiLib_ITEMBIT_BACKGROUND          0x00040000
+#define GuiLib_ITEMBIT_CLEARAREA           0x00080000
+#define GuiLib_ITEMBIT_ADVGRAPH_COORDSYST  0x00100000
+#define GuiLib_ITEMBIT_ADVGRAPH_PIXEL      0x00200000
+#define GuiLib_ITEMBIT_ADVGRAPH_LINE       0x00400000
+#define GuiLib_ITEMBIT_ADVGRAPH_ARC        0x00800000
+#define GuiLib_ITEMBIT_ADVGRAPH_RECT       0x01000000
+#define GuiLib_ITEMBIT_ADVGRAPH_ELLIPSE    0x02000000
+#define GuiLib_ITEMBIT_ADVGRAPH_SEGMENT    0x04000000
+#define GuiLib_ITEMBIT_ADVGRAPH_TRIANGLE   0x08000000
+#define GuiLib_ITEMBIT_ADVGRAPH_POLYGON    0x10000000
+#define GuiLib_ITEMBIT_GRAPH               0x20000000
+#define GuiLib_ITEMBIT_GRAPHICSLAYER       0x40000000
+#define GuiLib_ITEMBIT_GRAPHICSFILTER      0x80000000
+#define GuiLib_ITEMBIT_ROUNDEDFRAME        0x00000001
+#define GuiLib_ITEMBIT_ROUNDEDBLOCK        0x00000002
+#define GuiLib_ITEMBIT_QUARTERCIRCLE       0x00000004
+#define GuiLib_ITEMBIT_QUARTERELLIPSE      0x00000008
+#define GuiLib_ITEMBIT_CHECKBOX            0x00000010
+#define GuiLib_ITEMBIT_RADIOBUTTON         0x00000020
+#define GuiLib_ITEMBIT_BUTTON              0x00000040
+#define GuiLib_ITEMBIT_EDITBOX             0x00000080
+#define GuiLib_ITEMBIT_PANEL               0x00000100
+#define GuiLib_ITEMBIT_MEMO                0x00000200
+#define GuiLib_ITEMBIT_LISTBOX             0x00000400
+#define GuiLib_ITEMBIT_COMBOBOX            0x00000800
+#define GuiLib_ITEMBIT_SCROLLAREA          0x00001000
+#define GuiLib_ITEMBIT_PROGRESSBAR         0x00002000
+#define GuiLib_ITEMBIT_STRUCTCOND          0x00004000
+#define GuiLib_ITEMBIT_POSCALLBACK         0x00008000
+
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+  #define GuiLib_GETITEMLONG
+#else
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  #define GuiLib_GETITEMLONG
+#endif
+#endif
+
+#define GuiLib_TRUE                        1
+#define GuiLib_FALSE                       0
+
+#define GuiLib_UPDATE_ALWAYS               0
+#define GuiLib_UPDATE_ON_CHANGE            1
+
+#ifdef GuiConst_AUTOREDRAW_ON_CHANGE
+#define GuiLib_AUTOREDRAW_MODE GuiLib_UPDATE_ON_CHANGE
+#else
+#define GuiLib_AUTOREDRAW_MODE GuiLib_UPDATE_ALWAYS
+#endif
+
+#define GuiLib_COOR_ABS                    0
+#define GuiLib_COOR_REL                    1
+#define GuiLib_COOR_REL_1                  2
+#define GuiLib_COOR_REL_2                  3
+
+#define GuiLib_COLOR_NOCHANGE              0
+#define GuiLib_COLOR_FORE                  1
+#define GuiLib_COLOR_BACK                  2
+#define GuiLib_COLOR_OTHER                 3
+#define GuiLib_COLOR_INVERT                4
+#define GuiLib_COLOR_TRANSP                5
+#define GuiLib_COLOR_TABLE                 6
+#define GuiLib_COLOR_VAR                   7
+
+#define GuiLib_MARKER_NONE                 0
+#define GuiLib_MARKER_ICON                 1
+#define GuiLib_MARKER_BITMAP               2
+#define GuiLib_MARKER_FIXED_BLOCK          3
+#define GuiLib_MARKER_VARIABLE_BLOCK       4
+
+#define GuiLib_MEMORY_MIN                  1
+#define GuiLib_MEMORY_MAX                  3
+#define GuiLib_MEMORY_CNT                  GuiLib_MEMORY_MAX - GuiLib_MEMORY_MIN + 1
+
+#define GuiLib_COL_INVERT_OFF              0
+#define GuiLib_COL_INVERT_ON               1
+#define GuiLib_COL_INVERT_IF_CURSOR        2
+
+#define GuiLib_BITFLAG_INUSE               0x00000001
+#define GuiLib_BITFLAG_TRANSPARENT         0x00000002
+#define GuiLib_BITFLAG_UNDERLINE           0x00000004
+#define GuiLib_BITFLAG_PATTERNEDLINE       0x00000004
+#define GuiLib_BITFLAG_CIRCLE_IF           0x00000004
+#define GuiLib_BITFLAG_FORMATSHOWSIGN      0x00000008
+#define GuiLib_BITFLAG_FORMATZEROPADDING   0x00000010
+#define GuiLib_BITFLAG_AUTOREDRAWFIELD     0x00000020
+#define GuiLib_BITFLAG_NOTINUSE            0x00000040
+#define GuiLib_BITFLAG_TRANSLATION         0x00000080
+#define GuiLib_BITFLAG_BLINKTEXTFIELD      0x00000100
+#define GuiLib_BITFLAG_CLIPPING            0x00000200
+#define GuiLib_BITFLAG_ACTIVEAREARELCOORD  0x00000400
+#define GuiLib_BITFLAG_REVERSEWRITING      0x00000800
+#define GuiLib_BITFLAG_FORMATTRAILINGZEROS 0x00001000
+#define GuiLib_BITFLAG_FORMATTHOUSANDSSEP  0x00002000
+#define GuiLib_BITFLAG_FIELDSCROLLBOX      0x00004000
+#define GuiLib_BITFLAG_BARTRANSPARENT      0x00008000
+
+#define GuiLib_SCROLL_STRUCTURE_UNDEF      0
+#define GuiLib_SCROLL_STRUCTURE_READ       1
+#define GuiLib_SCROLL_STRUCTURE_USED       2
+
+#define GuiLib_GRAPH_STRUCTURE_UNDEF       0
+#define GuiLib_GRAPH_STRUCTURE_USED        1
+
+#define GuiLib_GRAPH_DATATYPE_DOT          0
+#define GuiLib_GRAPH_DATATYPE_LINE         1
+#define GuiLib_GRAPH_DATATYPE_BAR          2
+#define GuiLib_GRAPH_DATATYPE_CROSS        3
+#define GuiLib_GRAPH_DATATYPE_X            4
+
+#define GuiLib_GRAPHAXIS_X                 0
+#define GuiLib_GRAPHAXIS_Y                 1
+
+#define GuiLib_GRAPHICS_LAYER_UNDEF        0
+#define GuiLib_GRAPHICS_LAYER_USED         1
+
+#define GuiLib_GRAPHICS_LAYER_SIZE_COORD   0
+#define GuiLib_GRAPHICS_LAYER_SIZE_SCREEN  1
+#define GuiLib_GRAPHICS_LAYER_SIZE_CLIP    2
+
+#define GuiLib_GRAPHICS_LAYER_INIT_NONE    0
+#define GuiLib_GRAPHICS_LAYER_INIT_COL     1
+#define GuiLib_GRAPHICS_LAYER_INIT_COPY    2
+
+#define GuiLib_GRAPHICS_LAYER_CURRENT      -3
+#define GuiLib_GRAPHICS_LAYER_PREVIOUS     -2
+#define GuiLib_GRAPHICS_LAYER_BASE         -1
+
+#define GuiLib_GRAPHICS_FILTER_UNDEF       0
+#define GuiLib_GRAPHICS_FILTER_USED        1
+
+#define GuiLib_MARKER_NONE                 0
+#define GuiLib_INDICATOR_NONE              0
+#define GuiLib_MARKER_SIZE                 8
+
+#define GuiLib_FULL_BITMAP                 0
+#define GuiLib_AREA_BITMAP                 1
+
+#define GuiLib_LANGUAGE_INACTIVE           9999
+
+#define GuiLib_LINEFEED                    0x0A
+
+#define GuiLib_CHECKBOX_FLAT               0
+#define GuiLib_CHECKBOX_3D                 1
+#define GuiLib_CHECKBOX_ICON               2
+#define GuiLib_CHECKBOX_BITMAP             3
+#define GuiLib_CHECKBOX_NONE               4
+#define GuiLib_CHECKBOX_MARK_CHECKED       0
+#define GuiLib_CHECKBOX_MARK_CROSSED       1
+#define GuiLib_CHECKBOX_MARK_FILLED        2
+#define GuiLib_CHECKBOX_MARK_ICON          3
+#define GuiLib_CHECKBOX_MARK_BITMAP        4
+
+#define GuiLib_RADIOBUTTON_FLAT            0
+#define GuiLib_RADIOBUTTON_3D              1
+#define GuiLib_RADIOBUTTON_ICON            2
+#define GuiLib_RADIOBUTTON_BITMAP          3
+#define GuiLib_RADIOBUTTON_MARK_STANDARD   0
+#define GuiLib_RADIOBUTTON_MARK_ICON       1
+#define GuiLib_RADIOBUTTON_MARK_BITMAP     2
+
+#define GuiLib_BUTTON_LAYOUT_TEXT          0
+#define GuiLib_BUTTON_LAYOUT_GLYPH         1
+#define GuiLib_BUTTON_LAYOUT_GLYPHLEFT     2
+#define GuiLib_BUTTON_LAYOUT_GLYPHRIGHT    3
+#define GuiLib_BUTTON_LAYOUT_GLYPHBOTTOM   4
+#define GuiLib_BUTTON_LAYOUT_GLYPHTOP      5
+
+#define GuiLib_BUTTON_BODY_FLAT            0
+#define GuiLib_BUTTON_BODY_3D              1
+#define GuiLib_BUTTON_BODY_ICON            2
+#define GuiLib_BUTTON_BODY_BITMAP          3
+
+#define GuiLib_BUTTON_GLYPH_ICON           0
+#define GuiLib_BUTTON_GLYPH_BITMAP         1
+
+#define GuiLib_PANEL_FLAT                  0
+#define GuiLib_PANEL_3D_RAISED             1
+#define GuiLib_PANEL_3D_LOWERED            2
+#define GuiLib_PANEL_EMBOSSED_RAISED       3
+#define GuiLib_PANEL_EMBOSSED_LOWERED      4
+
+#define GuiLib_AUTOREDRAW_MAX_VAR_SIZE GuiConst_AUTOREDRAW_MAX_VAR_SIZE
+
+//----------------------X-----------------------
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  typedef GuiConst_PTR *GuiLib_StructPtr;
+#else
+  #ifdef GuiConst_DISP_VAR_NOW
+    unsigned char displayVarNow;
+  #endif
+  #ifdef GuiConst_AVRGCC_COMPILER
+    typedef GuiConst_PTR *GuiLib_StructPtr;
+    #define ReadBytePtr(X) pgm_read_byte(X)
+    #define ReadByte(X)    pgm_read_byte(&X)
+    #define ReadWordPtr(X) pgm_read_word(X)
+    #define ReadWord(X)    pgm_read_word(&X)
+  #else
+    #if defined GuiConst_ICC_COMPILER
+      typedef void PrefixRom *GuiLib_StructPtr;
+    #elif defined GuiConst_CODEVISION_COMPILER
+      typedef void PrefixRom *GuiLib_StructPtr;
+    #elif defined GuiConst_RENESAS_COMPILER_FAR
+      typedef void PrefixRom *GuiLib_StructPtr; 
+    #else
+      typedef GuiConst_PTR *GuiLib_StructPtr;
+    #endif
+  #endif
+#endif
+//----------------------X-----------------------
+#ifndef ReadBytePtr
+#define ReadBytePtr(X) *(X)
+#endif
+#ifndef ReadByte
+#define ReadByte(X)    X
+#endif
+#ifndef ReadWordPtr
+#define ReadWordPtr(X) *(X)
+#endif
+#ifndef ReadWord
+#define ReadWord(X)    X
+#endif
+
+//----------------------X-----------------------
+
+
+//----------------------X-----------------------
+typedef struct
+{
+  GuiConst_INT32U BitFlags;
+  GuiConst_INT16S BackBoxSizeX;
+  GuiConst_INT8U BackBoxSizeY1, BackBoxSizeY2;
+  GuiConst_INT8U FontIndex;
+  GuiConst_INT8U Alignment;
+  GuiConst_INT8U Ps;
+  GuiConst_INT8U BackBorderPixels;
+} TextParRec;
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_STRUCTCOND_INUSE
+typedef struct
+{
+  GuiConst_INT16U IndexCount;
+  GuiConst_INT16S IndexFirst[GuiConst_STRUCTCOND_MAX];
+  GuiConst_INT16S IndexLast[GuiConst_STRUCTCOND_MAX];
+  GuiConst_INT16U CallIndex[GuiConst_STRUCTCOND_MAX];
+} CompStructCallRec;
+#else
+typedef struct
+{
+  GuiConst_INT16U IndexCount;
+} CompStructCallRec;
+#endif // GuiConst_ITEM_STRUCTCOND_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+typedef struct
+{
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  GuiConst_INT16S ScrollPos;
+  GuiConst_INT16U Lines;
+  GuiConst_INT8U ScrollIndex;
+#endif // GuiConst_TEXTBOX_FIELDS_ON
+  GuiConst_INT8U HorzAlignment;
+  GuiConst_INT8U VertAlignment;
+  GuiConst_INT8S LineDist;
+  GuiConst_INT8U LineDistRelToFont;
+} CompTextBoxRec;
+#endif // GuiConst_ITEM_TEXTBLOCK_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+typedef struct
+{
+  GuiConst_INT16U AreaNo;
+} CompTouchRec;
+#endif
+//----------------------X-----------------------
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+typedef struct
+{
+  GuiConst_INTCOLOR TranspColor;
+} CompBitmapRec;
+#endif
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+typedef struct
+{
+  GuiConst_INT16U MarkOffsetX;
+  GuiConst_INT16U MarkOffsetY;
+  GuiConst_INT16U MarkBitmapIndex;
+  GuiConst_INT16U IconOffsetX;
+  GuiConst_INT16U IconOffsetY;
+  GuiConst_INT16U BitmapIndex;
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR BitmapTranspColor;
+  GuiConst_INTCOLOR MarkBitmapTranspColor;
+#endif // GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR MarkColor;
+  GuiConst_INT16U MarkColorIndex;
+  GuiConst_TEXT PrefixLocate *IconPtr;
+  GuiConst_TEXT PrefixLocate *MarkIconPtr;
+  GuiConst_INT8U Style;
+  GuiConst_INT8U Size;
+  GuiConst_INT8U IconFont;
+  GuiConst_INT8U BitmapIsTransparent;
+  GuiConst_INT8U MarkStyle;
+  GuiConst_INT8U MarkIconFont;
+  GuiConst_INT8U MarkBitmapIsTransparent;
+} CompCheckBoxRec;
+#endif // GuiConst_ITEM_CHECKBOX_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+typedef struct
+{
+  GuiConst_INT16U InterDistance;
+  GuiConst_INT16U MarkOffsetX;
+  GuiConst_INT16U MarkOffsetY;
+  GuiConst_INT16U MarkBitmapIndex;
+  GuiConst_INT16U IconOffsetX;
+  GuiConst_INT16U IconOffsetY;
+  GuiConst_INT16U BitmapIndex;
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR BitmapTranspColor;
+  GuiConst_INTCOLOR MarkBitmapTranspColor;
+#endif // GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR MarkColor;
+  GuiConst_INT16U MarkColorIndex;
+  GuiConst_TEXT PrefixLocate *IconPtr;
+  GuiConst_TEXT PrefixLocate *MarkIconPtr;
+  GuiConst_INT8U Style;
+  GuiConst_INT8U Size;
+  GuiConst_INT8U Count;
+  GuiConst_INT8U IconFont;
+  GuiConst_INT8U BitmapIsTransparent;
+  GuiConst_INT8U MarkStyle;
+  GuiConst_INT8U MarkIconFont;
+  GuiConst_INT8U MarkBitmapIsTransparent;
+} CompRadioButtonRec;
+#endif // GuiConst_ITEM_RADIOBUTTON_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+typedef struct
+{
+  GuiConst_INT8U Layout;
+  GuiConst_INT8U BodyStyle;
+  GuiConst_INT8U BodyLikeUp;
+  GuiConst_TEXT PrefixLocate *BodyIconPtr[3];
+  GuiConst_INT8U BodyIconFont[3];
+  GuiConst_INT16U BodyIconOffsetX[3];
+  GuiConst_INT16U BodyIconOffsetY[3];
+  GuiConst_INT16U BodyBitmapIndex[3];
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR BodyBitmapTranspColor[3];
+#endif // GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INT8U BodyBitmapIsTransparent[3];
+  GuiConst_INT8U TextLikeUp;
+  GuiConst_INTCOLOR TextColor[3];
+  GuiConst_INT16U TextColorIndex[3];
+  GuiConst_INT8U GlyphStyle;
+  GuiConst_INT8U GlyphLikeUp;
+  GuiConst_INTCOLOR GlyphIconColor[3];
+  GuiConst_INT16U GlyphIconColorIndex[3];
+  GuiConst_TEXT PrefixLocate *GlyphIconPtr[3];
+  GuiConst_INT8U GlyphIconFont[3];
+  GuiConst_INT16U GlyphIconOffsetX[3];
+  GuiConst_INT16U GlyphIconOffsetY[3];
+  GuiConst_INT16U GlyphBitmapIndex[3];
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR GlyphBitmapTranspColor[3];
+#endif // GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INT8U GlyphBitmapIsTransparent[3];
+  GuiConst_INT16U GlyphBitmapOffsetX[3];
+  GuiConst_INT16U GlyphBitmapOffsetY[3];
+} CompButtonRec;
+#endif // GuiConst_ITEM_BUTTON_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_PANEL_INUSE
+typedef struct
+{
+  GuiConst_INT8U Style;
+} CompPanelRec;
+#endif
+//----------------------X-----------------------
+typedef union
+{
+  CompStructCallRec StructCall;
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+  CompTextBoxRec     CompTextBox;
+#endif
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+  CompTouchRec       CompTouch;
+#endif
+#ifdef GuiConst_ITEM_CHECKBOX_INUSE
+  CompCheckBoxRec    CompCheckBox;
+#endif
+#ifdef GuiConst_ITEM_RADIOBUTTON_INUSE
+  CompRadioButtonRec CompRadioButton;
+#endif
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+  CompButtonRec CompButton;
+#endif
+#ifdef GuiConst_ITEM_PANEL_INUSE
+  CompPanelRec       CompPanel;
+#endif
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  CompBitmapRec      CompBitmap;
+#endif
+} CompUnion;
+//----------------------X-----------------------
+typedef struct
+{
+  TextParRec TextPar[3];
+  void PrefixLocate *VarPtr;
+  GuiConst_INT16U StructToCallIndex;
+  GuiConst_INT16S X1, Y1, X2, Y2;
+  GuiConst_INT16S R1, R2;
+  GuiConst_INT16S RX, RY;
+  GuiConst_INT16S RX1, RY1, RX2, RY2;
+  GuiConst_INT16S DrawnX1, DrawnY1, DrawnX2, DrawnY2;
+  GuiConst_INT16U TextLength[3];
+  GuiConst_INT16S ForeColorEnhance;
+  GuiConst_INT16S BackColorEnhance;
+  GuiConst_INT16S BarForeColorEnhance;
+  GuiConst_INT16S BarBackColorEnhance;
+#ifdef GuiConst_REL_COORD_ORIGO_INUSE
+  GuiConst_INT16S CoordOrigoX, CoordOrigoY;
+#endif
+#ifdef GuiConst_CLIPPING_SUPPORT_ON
+  GuiConst_INT16S ClipRectX1, ClipRectY1, ClipRectX2, ClipRectY2;
+#endif
+  GuiConst_INT16U PosCallbackNo;
+  GuiConst_INTCOLOR ForeColor, BackColor;
+  GuiConst_INTCOLOR BarForeColor, BarBackColor;
+  GuiConst_INT16U ForeColorIndex;
+  GuiConst_INT16U BackColorIndex;
+  GuiConst_INT16U BarForeColorIndex;
+  GuiConst_INT16U BarBackColorIndex;
+  GuiConst_TEXT PrefixGeneric *TextPtr[3];
+#ifdef GuiConst_REMOTE_TEXT_DATA
+  GuiConst_INT32U TextIndex[3];
+#endif
+#ifdef GuiConst_REMOTE_STRUCT_DATA
+  GuiConst_INT32U TextOffset[3];
+#endif
+  GuiConst_INT8U TextCnt;
+  GuiConst_INT8U Drawn;
+  GuiConst_INT8U ItemType;
+  GuiConst_INT8U FrameThickness;
+  GuiConst_INT8U FormatFieldWidth;
+  GuiConst_INT8U FormatDecimals;
+  GuiConst_INT8U FormatAlignment;
+  GuiConst_INT8U FormatFormat;
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  GuiConst_INT8S CursorFieldNo;
+  GuiConst_INT8U CursorFieldLevel;
+#endif
+#ifdef GuiConst_BLINK_SUPPORT_ON
+  GuiConst_INT8S BlinkFieldNo;
+#endif
+  GuiConst_INT8U UpdateType;
+  GuiConst_INT8U VarType;
+  GuiConst_INT8U LinePattern;
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+  GuiConst_INT8U CursorScrollBoxIndex;
+#endif
+  CompUnion CompPars;
+} GuiLib_ItemRec;
+typedef GuiLib_ItemRec PrefixLocate * GuiLib_ItemRecPtr;
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+typedef struct
+{
+  GuiConst_INT16S X1, Y1, X2, Y2;
+  GuiConst_INT16U IndexNo;
+} GuiLib_TouchAreaRec;
+#endif
+//----------------------X-----------------------
+typedef struct
+{
+  void (*PosCallbackFunc) (GuiConst_INT16U IndexNo,
+                           GuiConst_INT16S X,
+                           GuiConst_INT16S Y);
+  GuiConst_INT16U IndexNo;
+  GuiConst_INT8U InUse;
+} GuiLib_PosCallbackRec;
+
+//----------------------X-----------------------
+#ifdef GuiConst_BLINK_SUPPORT_ON
+#ifndef GuiConst_BLINK_FIELDS_OFF
+typedef struct
+{
+  TextParRec TextPar;
+  GuiConst_INT16U CharNo;
+  GuiConst_INT16U CharCnt;
+  GuiConst_INT16S X1, X2;
+  GuiConst_INT16S Y1, Y2;
+  GuiConst_INT16S BlinkBoxX1, BlinkBoxX2;
+  GuiConst_INT16S BlinkBoxY1, BlinkBoxY2;
+  GuiConst_INT16S LineCnt;
+  GuiConst_INT16S BlindLinesAtTop;
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+  GuiConst_INT16S TextBoxScrollPos;
+#endif
+  GuiConst_TEXT PrefixGeneric *TextPtr;
+  GuiConst_INT8U InUse;
+  GuiConst_INT8U Active;
+  GuiConst_INT8U XSize;
+  GuiConst_INT8U ItemType;
+  GuiConst_INT8U VarType;
+  GuiConst_INT8U FormatFieldWidth;
+  GuiConst_INT8U FormatDecimals;
+  GuiConst_INT8U FormatAlignment;
+  GuiConst_INT8U FormatFormat;
+  GuiConst_INT8U PsNumWidth;
+  GuiConst_INT8U PsSpace;
+  GuiConst_INT8U BlinkBoxRate;
+  GuiConst_INT8U BlinkBoxState;
+  GuiConst_INT8U BlinkBoxInverted;
+  GuiConst_INT8U BlinkBoxLast;
+#ifdef GuiConst_ITEM_TEXTBLOCK_INUSE
+  GuiConst_INT8U YSize;
+  GuiConst_INT8S TextBoxLineDist;
+  GuiConst_INT8U TextBoxHorzAlignment;
+  GuiConst_INT8U TextBoxVertAlignment;
+#endif
+} GuiLib_BlinkTextItemRec;
+#endif // GuiConst_BLINK_FIELDS_OFF
+#endif // GuiConst_BLINK_SUPPORT_ON
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+typedef struct
+{
+  void (*ScrollLineDataFunc) (GuiConst_INT16S LineIndex);
+  GuiLib_ItemRec ScrollBoxItem;
+  GuiConst_INT16S X1;
+  GuiConst_INT16S Y1;
+  GuiConst_INT16S ScrollTopLine;
+  GuiConst_INT16U LastScrollTopLine;
+  GuiConst_INT16S LastMarkerLine;
+  GuiConst_INT16U ScrollActiveLine;
+  GuiConst_INT16U NumberOfLines;
+  GuiConst_INT16U MakeUpStructIndex;
+  GuiConst_INT16U ScrollVisibleLines;
+  GuiConst_INT16S LineVerticalOffset;
+  GuiConst_INT16S LineOffsetX;
+  GuiConst_INT16S LineOffsetY;
+  GuiConst_INT16S LineSizeX;
+  GuiConst_INT16S LineSizeY;
+  GuiConst_INT16S LineSizeY2;
+  GuiConst_INT16U LineStructIndex;
+  GuiConst_INT16S LineStructOffsetX;
+  GuiConst_INT16S LineStructOffsetY;
+  GuiConst_INT16U MarkerStructIndex[GuiConst_SCROLLITEM_MARKERS_MAX];
+  GuiConst_INT16S MarkerStartLine[GuiConst_SCROLLITEM_MARKERS_MAX];
+  GuiConst_INT16S MarkerSize[GuiConst_SCROLLITEM_MARKERS_MAX];
+  GuiConst_INTCOLOR LineColor;
+  GuiConst_INT16U LineColorIndex;
+  GuiConst_INTCOLOR BackColor;
+  GuiConst_INT16U BackColorIndex;
+  GuiConst_INTCOLOR MarkerColor[GuiConst_SCROLLITEM_MARKERS_MAX];
+  GuiConst_INT16U MarkerColorIndex[GuiConst_SCROLLITEM_MARKERS_MAX];
+  GuiConst_INT8U InUse;
+  GuiConst_INT8U ScrollBoxType;
+  GuiConst_INT8U LineColorTransparent;
+  GuiConst_INT8U WrapMode;
+  GuiConst_INT8U ScrollStartOfs;
+  GuiConst_INT8U ScrollMode;
+  GuiConst_INT8U LineMarkerCount;
+  GuiConst_INT8U MarkerColorTransparent[GuiConst_SCROLLITEM_MARKERS_MAX];
+  GuiConst_INT8U MarkerDrawingOrder[GuiConst_SCROLLITEM_MARKERS_MAX];
+  GuiConst_INT8U BarType;
+  GuiConst_INT8U IndicatorType;
+#ifndef GuiConst_SCROLLITEM_BAR_NONE
+  GuiConst_INT16S BarPositionX;
+  GuiConst_INT16S BarPositionY;
+  GuiConst_INT16S BarSizeX;
+  GuiConst_INT16S BarSizeY;
+  GuiConst_INT16U BarStructIndex;
+  GuiConst_INT16S BarMarkerLeftOffset;
+  GuiConst_INT16S BarMarkerRightOffset;
+  GuiConst_INT16S BarMarkerTopOffset;
+  GuiConst_INT16S BarMarkerBottomOffset;
+  GuiConst_INT16U BarMarkerIconOffsetX;
+  GuiConst_INT16U BarMarkerIconOffsetY;
+  GuiConst_INT16U BarMarkerBitmapIndex;
+  GuiConst_INT16U BarMarkerBitmapHeight;
+  GuiConst_INTCOLOR BarForeColor;
+  GuiConst_INT16U BarForeColorIndex;
+  GuiConst_INTCOLOR BarBackColor;
+  GuiConst_INT16U BarBackColorIndex;
+  GuiConst_INTCOLOR BarMarkerForeColor;
+  GuiConst_INT16U BarMarkerForeColorIndex;
+  GuiConst_INTCOLOR BarMarkerBackColor;
+  GuiConst_INT16U BarMarkerBackColorIndex;
+  GuiConst_INT8U BarMarkerBitmapIsTransparent;
+  GuiConst_INT8U BarMode;
+  GuiConst_INT8U BarTransparent;
+  GuiConst_INT8U BarThickness;
+  GuiConst_INT8U BarMarkerIconFont;
+  GuiConst_INT8U BarMarkerTransparent;
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR BarMarkerBitmapTranspColor;
+#endif // GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_TEXT PrefixLocate *BarIconPtr;
+#endif // GuiConst_SCROLLITEM_BAR_NONE
+#ifndef GuiConst_SCROLLITEM_INDICATOR_NONE
+  GuiConst_INT16S IndicatorPositionX;
+  GuiConst_INT16S IndicatorPositionY;
+  GuiConst_INT16S IndicatorSizeX;
+  GuiConst_INT16S IndicatorSizeY;
+  GuiConst_INT16U IndicatorStructIndex;
+  GuiConst_INT16S IndicatorMarkerLeftOffset;
+  GuiConst_INT16S IndicatorMarkerRightOffset;
+  GuiConst_INT16S IndicatorMarkerTopOffset;
+  GuiConst_INT16S IndicatorMarkerBottomOffset;
+  GuiConst_INT16U IndicatorMarkerIconFont;
+  GuiConst_INT16U IndicatorMarkerIconOffsetX;
+  GuiConst_INT16U IndicatorMarkerIconOffsetY;
+  GuiConst_INT16U IndicatorMarkerBitmapIndex;
+  GuiConst_INT16S IndicatorLine;
+  GuiConst_INTCOLOR IndicatorForeColor;
+  GuiConst_INT16U IndicatorForeColorIndex;
+  GuiConst_INTCOLOR IndicatorBackColor;
+  GuiConst_INT16U IndicatorBackColorIndex;
+  GuiConst_INTCOLOR IndicatorMarkerForeColor;
+  GuiConst_INT16U IndicatorMarkerForeColorIndex;
+  GuiConst_INTCOLOR IndicatorMarkerBackColor;
+  GuiConst_INT16U IndicatorMarkerBackColorIndex;
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_INTCOLOR IndicatorMarkerBitmapTranspColor;
+#endif // GuiConst_BITMAP_SUPPORT_ON
+  GuiConst_TEXT PrefixLocate *IndicatorIconPtr;
+  GuiConst_INT8U IndicatorMode;
+  GuiConst_INT8U IndicatorTransparent;
+  GuiConst_INT8U IndicatorThickness;
+  GuiConst_INT8U IndicatorMarkerTransparent;
+  GuiConst_INT8U IndicatorMarkerBitmapIsTransparent;
+#endif // GuiConst_SCROLLITEM_INDICATOR_NONE
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+  GuiConst_INT8U ContainsCursorFields;
+#endif // GuiConst_CURSOR_SUPPORT_ON
+} ScrollBoxRec;
+#endif // GuiConst_ITEM_SCROLLBOX_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+typedef struct
+{
+  GuiConst_INT32S NumbersMinValue;
+  GuiConst_INT32S NumbersMaxValue;
+  GuiConst_INT32S NumbersMinValueOrg;
+  GuiConst_INT32S NumbersMaxValueOrg;
+  GuiConst_INT32S NumbersStepMajor;
+  GuiConst_INT32S NumbersStepMinor;
+  GuiConst_INT32S Scale;
+  GuiConst_INT32U BitFlags;
+  GuiConst_INT16S Offset;
+  GuiConst_INT16S ArrowLength;
+  GuiConst_INT16S ArrowWidth;
+  GuiConst_INT16S TicksMajorLength;
+  GuiConst_INT16S TicksMajorWidth;
+  GuiConst_INT16S TicksMinorLength;
+  GuiConst_INT16S TicksMinorWidth;
+  GuiConst_INT16S NumbersAtEnd;
+  GuiConst_INT16S NumbersOffset;
+  GuiConst_INT8U Visible;
+  GuiConst_INT8U Line;
+  GuiConst_INT8U LineBetweenAxes;
+  GuiConst_INT8U LineNegative;
+  GuiConst_INT8U Arrow;
+  GuiConst_INT8U TicksMajor;
+  GuiConst_INT8U TicksMinor;
+  GuiConst_INT8U Numbers;
+  GuiConst_INT8U NumbersAtOrigo;
+  GuiConst_INT8U FormatFieldWidth;
+  GuiConst_INT8U FormatDecimals;
+  GuiConst_INT8U FormatAlignment;
+  GuiConst_INT8U FormatFormat;
+} GraphAxisRec;
+//----------------------X-----------------------
+typedef struct
+{
+  GuiLib_GraphDataPoint *DataPtr;
+  GuiConst_INT16U DataSize;
+  GuiConst_INT16U DataFirst;
+  GuiConst_INT16U DataCount;
+  GuiConst_INT16S Width;
+  GuiConst_INT16S Height;
+  GuiConst_INT16S Thickness;
+  GuiConst_INTCOLOR ForeColor, BackColor;
+  GuiConst_INT16U ForeColorIndex;
+  GuiConst_INT16U BackColorIndex;
+  GuiConst_INT8U Visible;
+  GuiConst_INT8U Representation;
+  GuiConst_INT8U BackColorTransparent;
+  GuiConst_INT8U AxisIndexX, AxisIndexY;
+} GraphDataSetRec;
+//----------------------X-----------------------
+typedef struct
+{
+  GuiLib_ItemRec GraphItem;
+  GraphAxisRec GraphAxes[GuiConst_GRAPH_AXES_MAX][2];
+  GraphDataSetRec GraphDataSets[GuiConst_GRAPH_DATASETS_MAX];
+  GuiConst_INT16S OrigoX, OrigoY;
+  GuiConst_INT16S OriginOffsetX, OriginOffsetY;
+  GuiConst_INTCOLOR ForeColor, BackColor;
+  GuiConst_INT16U ForeColorIndex;
+  GuiConst_INT16U BackColorIndex;
+  GuiConst_INT8U InUse;
+  GuiConst_INT8U GraphAxesCnt[2];
+  GuiConst_INT8U GraphDataSetCnt;
+} GraphItemRec;
+#endif //GuiConst_ITEM_GRAPH_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+typedef struct
+{
+  GuiConst_INT8U *BaseAddress;
+  GuiConst_INT16U X, Y;
+  GuiConst_INT16U LineSize;
+  GuiConst_INT16U Width, Height;
+  GuiConst_INT8U InUse;
+  GuiConst_INT8U SizeMode;
+  GuiConst_INT8U InitMode;
+} GraphicsLayerRec;
+typedef struct
+{
+  void (*GraphicsFilterFunc)
+     (GuiConst_INT8U *DestAddress,
+      GuiConst_INT16U DestLineSize,
+      GuiConst_INT8U *SourceAddress,
+      GuiConst_INT16U SourceLineSize,
+      GuiConst_INT16U Width,
+      GuiConst_INT16U Height,
+      GuiConst_INT32S FilterPars[10]);
+  void PrefixLocate *ParVarPtr[10];
+  GuiConst_INT32S ParValueNum[10];
+  GuiConst_INT16S SourceLayerIndexNo;
+  GuiConst_INT16S DestLayerIndexNo;
+  GuiConst_INT16S ContAtLayerIndexNo;
+  GuiConst_INT8U InUse;
+  GuiConst_INT8U ParVarType[10];
+} GraphicsFilterRec;
+#endif // GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+typedef struct
+{
+  GuiConst_INT16S Index;
+  GuiConst_INT16S X;
+  GuiConst_INT16S Y;
+  GuiConst_INT8U InUse;
+} BackgrBitmapRec;
+#endif // GuiConst_BITMAP_SUPPORT_ON
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+typedef struct
+{
+  GuiConst_INT16S index;
+  GuiConst_INT16S pos;
+} TextBoxRec;
+#endif
+//----------------------X-----------------------
+typedef struct
+{
+  GuiConst_INT16S X[2 * GuiLib_MEMORY_CNT];
+  GuiConst_INT16S Y[2 * GuiLib_MEMORY_CNT];
+  GuiConst_INTCOLOR C[GuiLib_MEMORY_CNT];
+} ItemMemory;
+//----------------------X-----------------------
+#define ITEM_NONE         0
+#define ITEM_AUTOREDRAW   1
+#define ITEM_CURSOR       2
+#define ITEM_TEXTBOX      4
+typedef struct
+{
+  PrefixLocate GuiLib_ItemRec  Item;
+  ItemMemory      Memory;
+  GuiConst_INT16S Prev;
+  GuiConst_INT16S Next;
+  GuiConst_INT16S Parent;
+  GuiConst_INT16S Padding;
+  GuiConst_INT8U  Valid;
+  GuiConst_INT8U  Level;
+  GuiConst_INT16U ValueSize;
+  GuiConst_INT8U  Value[GuiLib_AUTOREDRAW_MAX_VAR_SIZE];
+} AutoRedrawItems;
+//----------------------X-----------------------
+static GuiConst_INT8U GetItemByte(GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr);
+static GuiConst_INT16S GetItemWord(GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr);
+#ifdef GuiLib_COLOR_BYTESIZE_3
+static GuiConst_INT32S GetItemTriple(GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr);
+#endif
+#ifdef GuiLib_GETITEMLONG
+static GuiConst_INT32S GetItemLong(GuiConst_INT8U *PrefixLocate*PrefixLocate ItemDataPtrPtr);
+#endif
+#ifdef GuiConst_BLINK_SUPPORT_ON
+static void BlinkBox(void);
+#endif
+//----------------------X-----------------------
+void AutoRedraw_Init(void);
+void AutoRedraw_UpdateDrawn(GuiConst_INT16S I, PrefixLocate GuiLib_ItemRec * PrefixLocate Item);
+void AutoRedraw_Delete(GuiConst_INT16S I);
+void AutoRedraw_Destroy(void);
+GuiConst_INT8S AutoRedraw_GetLevel(GuiConst_INT16S I);
+GuiConst_INT8S AutoRedraw_ItemIsStruct(GuiConst_INT16S I);
+GuiConst_INT16S AutoRedraw_DeleteStruct(GuiConst_INT16S Struct_id);
+GuiConst_INT16S AutoRedraw_Reset(void);
+GuiConst_INT16S AutoRedraw_GetNext(GuiConst_INT16S I);
+GuiConst_INT16S AutoRedraw_Add(PrefixLocate GuiLib_ItemRec * PrefixLocate Item, GuiConst_INT16S Struct, GuiConst_INT8U Level);
+GuiConst_INT16S AutoRedraw_Insert(PrefixLocate GuiLib_ItemRec * PrefixLocate Item, GuiConst_INT16S Struct, GuiConst_INT8U Level);
+PrefixLocate GuiLib_ItemRec *AutoRedraw_GetItem(GuiConst_INT16S I);
+PrefixLocate ItemMemory     *AutoRedraw_GetItemMemory(GuiConst_INT16S I);
+GuiConst_INT8S RefreshColorVariable(GuiConst_INTCOLOR *comp, GuiConst_INT16U idx);
+void AutoRedraw_UpdateOnChange(GuiConst_INT16S I);
+void AutoRedraw_UpdateVar(GuiConst_INT16S I);
+GuiConst_INT8S AutoRedraw_VarChanged(GuiConst_INT16S I);
+#ifdef GuiConst_TEXTBOX_FIELDS_ON
+GuiConst_INT16S *TextBox_Scroll_GetPosRec(GuiConst_INT8U TextBoxIndex);
+GuiConst_INT16S AutoRedraw_InsertTextBox(PrefixLocate GuiLib_ItemRec * PrefixLocate Item,
+                  GuiConst_INT16S Struct,
+                  GuiConst_INT8U Level);
+void AutoRedraw_SetAsTextBox(GuiConst_INT16S I);
+GuiConst_INT16S AutoRedraw_GetTextBox(GuiConst_INT8S T, GuiConst_INT16S I);
+#endif
+#ifdef GuiConst_CURSOR_SUPPORT_ON
+void AutoRedraw_ResetCursor(void);
+GuiConst_INT16S AutoRedraw_InsertCursor(PrefixLocate GuiLib_ItemRec * PrefixLocate Item,
+                  GuiConst_INT16S Struct,
+                  GuiConst_INT8U Level);
+void AutoRedraw_SetAsCursor(GuiConst_INT16S I);
+GuiConst_INT16S AutoRedraw_IsOnlyCursor(GuiConst_INT16S I);
+GuiConst_INT16S AutoRedraw_GetCursor(GuiConst_INT8S C, GuiConst_INT16S I);
+GuiConst_INT8S AutoRedraw_GetCursorNumber(GuiConst_INT16S I);
+GuiConst_INT16S AutoRedraw_GetFirstCursor(void);
+GuiConst_INT16S AutoRedraw_GetLastCursor(void);
+GuiConst_INT16S AutoRedraw_GetNextCursor(GuiConst_INT8S C);
+GuiConst_INT16S AutoRedraw_GetPrevCursor(GuiConst_INT8S C);
+GuiConst_INT16S AutoRedraw_CheckCursorInheritance(GuiConst_INT16S N);
+#endif
+//----------------------X-----------------------
+typedef struct
+{
+  GuiConst_INT16S DrawnX1, DrawnY1, DrawnX2, DrawnY2;
+  GuiConst_INT16U Dummy1_16U;
+  GuiConst_INT16U Dummy2_16U;
+  GuiConst_INT16S Dummy1_16S;
+#ifdef GuiConst_ARAB_CHARS_INUSE
+  GuiConst_INT16S ArabicCharJoiningModeIndex[GuiConst_MAX_TEXT_LEN + 2];
+  GuiConst_INT8U ArabicCharJoiningMode[GuiConst_MAX_TEXT_LEN + 2];
+  GuiConst_INT8U ArabicCharJoiningModeBefore;
+  GuiConst_INT8U ArabicCharJoiningModeAfter;
+#endif
+  GuiConst_INT8U Drawn;
+  GuiConst_INT8U Dummy1_8U;
+  GuiConst_INT8U Dummy2_8U;
+  GuiConst_INT8U Dummy3_8U;
+} GuiLib_GLOBAL;
+typedef struct
+{
+  PrefixLocate GuiLib_ItemRec CurItem;
+  GuiLib_FontRecPtr CurFont;
+  GuiLib_StructPtr TopLevelStructure;
+  ItemMemory      Memory;
+  PrefixLocate AutoRedrawItems AutoRedraw[GuiConst_MAX_DYNAMIC_ITEMS];
+  GuiConst_INT8U PrefixLocate *ItemDataPtr;
+  GuiConst_INT8U *CurLayerBufPtr;
+  GuiConst_INT32U RefreshClock;
+  GuiConst_INT32U CurLayerBytes;
+  GuiConst_INT32U ItemTypeBit1, ItemTypeBit2;
+  GuiConst_INT16S AutoRedrawFirst;
+  GuiConst_INT16S AutoRedrawLast;
+  GuiConst_INT16S AutoRedrawLatest;
+  GuiConst_INT16S AutoRedrawNext;
+  GuiConst_INT16S AutoRedrawCount;
+  GuiConst_INT16S AutoRedrawParent;
+  GuiConst_INT16S AutoRedrawUpdate;
+  GuiConst_INT16S AutoRedrawInsertPoint;
+  GuiConst_INT32U CurLayerLineSize;
+  GuiConst_INT32U CurLayerWidth;
+  GuiConst_INT32U CurLayerHeight;
+  GuiConst_INT16S DisplayOrigoX, DisplayOrigoY;
+  GuiConst_INT16S LayerOrigoX, LayerOrigoY;
+  GuiConst_INT16S CoordOrigoX, CoordOrigoY;
+  GuiConst_INT16S InvertBoxX1, InvertBoxY1, InvertBoxX2, InvertBoxY2;
+  GuiConst_INT16S ItemX1, ItemY1;
+  GuiConst_INT16S ItemX2, ItemY2;
+  GuiConst_INT16S ItemR1, ItemR2;
+  GuiConst_INT16U X1VarIdx, Y1VarIdx, X2VarIdx, Y2VarIdx;
+  GuiConst_INT16U R1VarIdx, R2VarIdx;
+  GuiConst_INT16S BbX1, BbX2;
+  GuiConst_INT16S BbY1, BbY2;
+  GuiConst_INT16S DisplayLevel;
+  GuiConst_INT16S AutoRedrawSaveIndex;
+  GuiConst_INT16S ThicknessMemory;
+  GuiConst_INT16S FontWriteX1, FontWriteY1, FontWriteX2, FontWriteY2;
+  GuiConst_INT16U ColMemoryIndex[GuiLib_MEMORY_CNT];
+  GuiConst_INT8U TextPsMode[GuiConst_MAX_TEXT_LEN + 1];
+  GuiConst_CHAR  VarNumTextStr[GuiConst_MAX_VARNUM_TEXT_LEN + 1];
+  GuiConst_INT8U InvertBoxOn;
+  GuiConst_INT8U CommonByte0;
+  GuiConst_INT8U CommonByte1;
+  GuiConst_INT8U CommonByte2;
+  GuiConst_INT8U CommonByte3;
+  GuiConst_INT8U CommonByte4;
+  GuiConst_INT8U CommonByte5;
+  GuiConst_INT8U CommonByte6;
+  GuiConst_INT8U CommonByte7;
+  GuiConst_INT8U X1Mode, Y1Mode;
+  GuiConst_INT8U X2Mode, Y2Mode;
+  GuiConst_INT8U R1Mode, R2Mode;
+  GuiConst_INT8U X1MemoryRead, Y1MemoryRead;
+  GuiConst_INT8U X1MemoryWrite, Y1MemoryWrite;
+  GuiConst_INT8U X2MemoryRead, Y2MemoryRead;
+  GuiConst_INT8U X2MemoryWrite, Y2MemoryWrite;
+  GuiConst_INT8U R1MemoryRead, R2MemoryRead;
+  GuiConst_INT8U R1MemoryWrite, R2MemoryWrite;
+  GuiConst_INT8U X1VarType, Y1VarType, X2VarType, Y2VarType;
+  GuiConst_INT8U R1VarType, R2VarType;
+  GuiConst_INT8U DisplayWriting;
+  GuiConst_INT8U InitialDrawing;
+  GuiConst_INT8U DrawingLevel;
+  GuiConst_INT8U SwapColors;
+  GuiConst_INT8U BaseLayerDrawing;
+  GuiLib_PosCallbackRec PosCallbacks[GuiConst_POSCALLBACK_CNT];
+//----------------------X-----------------------
+  #ifdef GuiConst_TEXTBOX_FIELDS_ON
+    TextBoxRec TextBoxScrollPositions[GuiConst_TEXTBOX_FIELDS_MAX];
+  #endif
+//----------------------X-----------------------
+  #ifdef GuiConst_ITEM_TOUCHAREA_INUSE
+    GuiLib_TouchAreaRec TouchAreas[GuiConst_TOUCHAREA_CNT];
+    GuiConst_INT32S TouchAreaCnt;
+    GuiConst_INT32S TouchAdjustXMeasured[4];
+    GuiConst_INT32S TouchAdjustYMeasured[4];
+    GuiConst_INT32S TouchAdjustXTL, TouchAdjustYTL;
+    GuiConst_INT32S TouchAdjustXTR, TouchAdjustYTR;
+    GuiConst_INT32S TouchAdjustXBL, TouchAdjustYBL;
+    GuiConst_INT32S TouchAdjustXBR, TouchAdjustYBR;
+    GuiConst_INT16S TouchAdjustXTrue[4];
+    GuiConst_INT16S TouchAdjustYTrue[4];
+    GuiConst_INT8U TouchAdjustInUse[4];
+    GuiConst_INT8U TouchAdjustActive;
+    GuiConst_INT16S TouchConvertX, TouchConvertY;
+  #endif // GuiConst_ITEM_TOUCHAREA_INUSE
+//----------------------X-----------------------
+  #ifdef GuiConst_FLOAT_SUPPORT_ON
+    GuiConst_INT16S VarExponent;
+  #endif
+//----------------------X-----------------------
+  #ifdef GuiConst_CHARMODE_UNICODE
+    GuiConst_TEXT VarNumUnicodeTextStr[GuiConst_MAX_VARNUM_TEXT_LEN + 1];
+    GuiConst_TEXT UnicodeTextBuf[GuiConst_MAX_TEXT_LEN + 1];
+  #else
+    GuiConst_TEXT AnsiTextBuf[GuiConst_MAX_TEXT_LEN + 1];
+  #endif // GuiConst_CHARMODE_UNICODE
+//----------------------X-----------------------
+  #ifdef GuiConst_CURSOR_SUPPORT_ON
+    GuiConst_INT16S CursorFieldFound;
+    GuiConst_INT8U CursorInUse;
+    GuiConst_INT8U CursorActiveFieldFound;
+  #endif // GuiConst_CURSOR_SUPPORT_ON
+//----------------------X-----------------------
+  #ifdef GuiConst_BLINK_SUPPORT_ON
+    #ifndef GuiConst_BLINK_FIELDS_OFF
+      GuiLib_BlinkTextItemRec BlinkTextItems[GuiConst_BLINK_FIELDS_MAX];
+    #endif // GuiConst_BLINK_FIELDS_OFF
+    GuiConst_INT16S BlinkBoxX1, BlinkBoxY1, BlinkBoxX2, BlinkBoxY2;
+    GuiConst_INT16S BlinkBoxRate;
+    GuiConst_INT16S BlinkBoxState;
+    GuiConst_INT8U BlinkBoxInverted;
+  #endif // GuiConst_BLINK_SUPPORT_ON
+//----------------------X-----------------------
+  #ifdef GuiConst_CLIPPING_SUPPORT_ON
+    GuiConst_INT16S DisplayActiveAreaX1, DisplayActiveAreaY1;
+    GuiConst_INT16S DisplayActiveAreaX2, DisplayActiveAreaY2;
+    GuiConst_INT16S ClippingX1, ClippingY1, ClippingX2, ClippingY2;
+    GuiConst_INT16S ActiveAreaX1, ActiveAreaY1, ActiveAreaX2, ActiveAreaY2;
+    GuiConst_INT8U ClippingTotal;
+  #endif // GuiConst_CLIPPING_SUPPORT_ON
+//----------------------X-----------------------
+  #ifdef GuiConst_REMOTE_DATA
+    #ifdef GuiConst_REMOTE_FONT_DATA
+      GuiConst_INT32S CurRemoteFont;
+      GuiConst_INT8U GuiLib_RemoteFontBuffer[GuiConst_REMOTE_FONT_BUF_SIZE];
+    #endif // GuiConst_REMOTE_FONT_DATA
+    #ifdef GuiConst_REMOTE_STRUCT_DATA
+      GuiConst_INT32U RemoteStructOffset;
+      GuiConst_TEXT GuiLib_RemoteStructText[GuiConst_MAX_TEXT_LEN + 1];
+      GuiConst_INT8U GuiLib_RemoteStructBuffer[1];
+      GuiConst_INT8U GuiLib_RemoteItemBuffer[GuiConst_REMOTE_STRUCT_BUF_SIZE];
+    #endif // GuiConst_REMOTE_STRUCT_DATA
+    #ifdef GuiConst_REMOTE_BITMAP_DATA
+      GuiConst_INT32S CurRemoteBitmap;
+      GuiConst_INT8U GuiLib_RemoteBitmapBuffer[GuiConst_REMOTE_BITMAP_BUF_SIZE];
+    #endif // GuiConst_REMOTE_BITMAP_DATA
+    #ifdef GuiConst_REMOTE_TEXT_DATA
+      GuiConst_INT32S CurRemoteText;
+      GuiConst_INT32S RemoteTextTableOfs;
+      GuiConst_INT16U RemoteTextLen;
+      GuiConst_TEXT GuiLib_RemoteTextBuffer[GuiConst_REMOTE_TEXT_BUF_SIZE];
+    #endif // GuiConst_REMOTE_TEXT_DATA
+  #endif // GuiConst_REMOTE_DATA
+  #ifdef GuiConst_REMOTE_FONT_DATA
+    GuiConst_INT32U TextCharNdx[GuiConst_MAX_TEXT_LEN + 1];
+  #else
+    GuiConst_INT8U PrefixRom *TextCharPtrAry[GuiConst_MAX_TEXT_LEN + 1];
+  #endif // GuiConst_REMOTE_FONT_DATA
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_SCROLLBOX_INUSE
+  ScrollBoxRec ScrollBoxesAry[GuiConst_SCROLLITEM_BOXES_MAX];
+  GuiConst_INT8U NextScrollLineReading;
+  GuiConst_INT8U GlobalScrollBoxIndex;
+#endif // GuiConst_ITEM_SCROLLBOX_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_GRAPH_INUSE
+  GraphItemRec GraphAry[GuiConst_GRAPH_MAX];
+  GuiConst_INT16U GlobalGraphIndex;
+#endif
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+  GraphicsLayerRec GraphicsLayerList[GuiConst_GRAPHICS_LAYER_MAX];
+  GraphicsFilterRec GraphicsFilterList[GuiConst_GRAPHICS_FILTER_MAX];
+  GuiConst_INT16U GlobalGraphicsLayerIndex;
+  GuiConst_INT16U GlobalGraphicsFilterIndex;
+  GuiConst_INT16S GraphicsLayerLifo[GuiConst_GRAPHICS_LAYER_MAX];
+  GuiConst_INT8U LayerBuf[GuiConst_GRAPHICS_LAYER_BUF_BYTES];
+  GuiConst_INT8U GraphicsLayerLifoCnt;
+#endif // GuiConst_ITEM_GRAPHICS_LAYER_FILTER_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_ITEM_BUTTON_INUSE
+  GuiConst_INTCOLOR DisabledButtonColor;
+  GuiConst_INT16S   ButtonColorOverride;
+#endif // GuiConst_ITEM_BUTTON_INUSE
+//----------------------X-----------------------
+#ifdef GuiConst_BITMAP_SUPPORT_ON
+  BackgrBitmapRec BackgrBitmapAry[GuiConst_MAX_BACKGROUND_BITMAPS];
+  GuiConst_INT16U GlobalBackgrBitmapIndex;
+  GuiConst_INT16S BitmapWriteX2, BitmapWriteY2;
+  GuiConst_INT16S BitmapSizeX, BitmapSizeY;
+#endif // GuiConst_BITMAP_SUPPORT_ON
+} GuiLib_STATIC;
+
+#ifdef __cplusplus /* If this is a C++ compiler, end C linkage */
+}
+#endif
+
+//----------------------X-----------------------
+//----------------------X-----------------------
+
+
+#endif
+
+/* End of File */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIUpdated/GuiConst.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,134 @@
+// My own header is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+//
+//                            *** ATTENTION ***
+//
+//   This file is maintained by the easyGUI Graphical User Interface
+//   program. Modifications should therefore not be made directly in
+//   this file, as the changes will be lost next time easyGUI creates
+//   the file.
+//
+//                            *** ATTENTION ***
+//
+// -----------------------------------------------------------------------
+
+//
+// Generated by easyGUI version 6.0.9.005
+// Generated for project GC500_2_5inch_bitmap_loader
+// in project file C:\easyGUI Projects\GC500_2_5inch_bitmap_loader.gui
+//
+
+// Ensure that this header file is only included once
+#ifndef __GUICONST_H
+#define __GUICONST_H
+
+// --------------------------  INCLUDE SECTION  --------------------------
+
+
+// ---------------------  GLOBAL DECLARATION SECTION  --------------------
+
+#define GuiConst_PC_V6_0_9
+
+#define GuiConst_MICRO_LITTLE_ENDIAN
+#define GuiConst_CHAR    char
+#define GuiConst_INT8S   signed char
+#define GuiConst_INT8U   unsigned char
+#define GuiConst_INT16S  signed short
+#define GuiConst_INT16U  unsigned short
+#define GuiConst_INT32S  signed int
+#define GuiConst_INT32U  unsigned int
+
+#define GuiConst_PTR void *
+#define GuiConst_TEXT GuiConst_CHAR
+
+#define GuiConst_BITMAP_COMPRESSED
+
+#define GuiConst_DISPLAY_BUFFER_INTERMEDIATE
+#define GuiConst_DISPLAY_BUFFER_EASYGUI
+#define GuiConst_DISPLAY_LITTLE_ENDIAN
+#define GuiConst_DISPLAY_WIDTH            800
+#define GuiConst_DISPLAY_HEIGHT           480
+#define GuiConst_DISPLAY_WIDTH_HW         800
+#define GuiConst_DISPLAY_HEIGHT_HW        480
+#define GuiConst_CONTROLLER_COUNT_HORZ    1
+#define GuiConst_CONTROLLER_COUNT_VERT    1
+#define GuiConst_BYTES_PR_LINE            1600
+#define GuiConst_BYTE_LINES               480
+#define GuiConst_BYTES_PR_SECTION         1600
+#define GuiConst_LINES_PR_SECTION         480
+#define GuiConst_DISPLAY_BYTES            768000
+#define GuiConst_PIXELS_PER_BYTE          1
+
+#define GuiConst_BYTE_HORIZONTAL
+#define GuiConst_ROTATED_OFF
+
+#define GuiConst_COLOR_MODE_RGB
+#define GuiConst_COLOR_DEPTH_16
+#define GuiConst_COLOR_PLANES_1
+#define GuiConst_INTCOLOR                 GuiConst_INT16U
+#define GuiConst_COLOR_SIZE               16
+#define GuiConst_COLOR_MAX                65535
+#define GuiConst_COLOR_BYTE_SIZE          2
+#define GuiConst_PIXEL_BYTE_SIZE          2
+#define GuiConst_COLORCODING_MASK         0xFFFF
+#define GuiConst_COLORCODING_R_START      0
+#define GuiConst_COLORCODING_R_SIZE       5
+#define GuiConst_COLORCODING_R_MAX        31
+#define GuiConst_COLORCODING_R_MASK       0x001F
+#define GuiConst_COLORCODING_G_START      5
+#define GuiConst_COLORCODING_G_SIZE       6
+#define GuiConst_COLORCODING_G_MAX        63
+#define GuiConst_COLORCODING_G_MASK       0x07E0
+#define GuiConst_COLORCODING_B_START      11
+#define GuiConst_COLORCODING_B_SIZE       5
+#define GuiConst_COLORCODING_B_MAX        31
+#define GuiConst_COLORCODING_B_MASK       0xF800
+#define GuiConst_PIXEL_OFF                65535
+#define GuiConst_PIXEL_ON                 0
+
+
+#define GuiConst_CURSOR_SUPPORT_ON
+#define GuiConst_BLINK_SUPPORT_ON
+#define GuiConst_BITMAP_SUPPORT_ON
+#define GuiConst_CLIPPING_SUPPORT_ON
+#define GuiConst_FLOAT_SUPPORT_ON
+#define GuiConst_ADV_FONTS_ON
+
+#define GuiConst_CHARMODE_ANSI
+#define GuiConst_CURSOR_FIELDS_OFF
+#define GuiConst_BLINK_FIELDS_MAX         0
+#define GuiConst_BLINK_FIELDS_OFF
+#define GuiConst_BLINK_LF_COUNTS
+#define GuiConst_MAX_TEXT_LEN             80
+#define GuiConst_MAX_VARNUM_TEXT_LEN      12
+#define GuiConst_MAX_PARAGRAPH_LINE_CNT   50
+#define GuiConst_MAX_DYNAMIC_ITEMS        10
+#define GuiConst_MAX_BACKGROUND_BITMAPS   10
+#define GuiConst_TOUCHAREA_CNT            0
+#define GuiConst_POSCALLBACK_CNT          5
+#define GuiConst_CURSOR_MODE_STOP_TOP
+#define GuiConst_SCROLL_MODE_STOP_TOP
+
+#define GuiConst_DECIMAL_PERIOD
+
+#define GuiConst_AUTOREDRAW_MAX_VAR_SIZE  1
+
+#define GuiConst_LANGUAGE_CNT             1
+#define GuiConst_LANGUAGE_ACTIVE_CNT      1
+#define GuiConst_LANGUAGE_FIRST           0
+#define GuiConst_LANGUAGE_ALL_ACTIVE
+#define GuiConst_LANGUAGE_ENGLISH         0
+
+
+// --------------------------  CUSTOM SECTION  ---------------------------
+
+// My own code is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+
+#endif
+
+// -----------------------------------------------------------------------
+
+// My own footer is inserted here - edit it in the C code generation window
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIUpdated/GuiFont.c	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,5369 @@
+// My own header is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+//
+//                            *** ATTENTION ***
+//
+//   This file is maintained by the easyGUI Graphical User Interface
+//   program. Modifications should therefore not be made directly in
+//   this file, as the changes will be lost next time easyGUI creates
+//   the file.
+//
+//                            *** ATTENTION ***
+//
+// -----------------------------------------------------------------------
+
+//
+// Generated by easyGUI version 6.0.9.005
+// Generated for project BitmapLoader
+// in project file C:\easyGUI Projects\BitmapLoader.gui
+//
+
+// --------------------------  INCLUDE SECTION  --------------------------
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+
+// ---------------------  GLOBAL DECLARATION SECTION  --------------------
+
+const GuiConst_INT8U Ch000000[16] =
+{
+  0,0,0,0,0,  1,1,1,1,1,
+  0,2,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000001[18] =
+{
+  1,0,0,1,2,  3,4,4,3,2,
+  0,5,
+  3,5,
+  0x12,
+  0x20,0xF8,0x20
+};
+const GuiConst_INT8U Ch000002[17] =
+{
+  2,2,2,1,1,  2,2,2,2,1,
+  1,2,
+  7,3,
+  0x02,
+  0x40,0x80
+};
+const GuiConst_INT8U Ch000003[16] =
+{
+  2,0,0,2,2,  2,4,4,2,2,
+  0,5,
+  5,1,
+  0x00,
+  0xF8
+};
+const GuiConst_INT8U Ch000004[16] =
+{
+  2,2,2,2,2,  2,2,2,2,2,
+  2,1,
+  8,1,
+  0x00,
+  0x80
+};
+const GuiConst_INT8U Ch000005[20] =
+{
+  1,0,0,1,2,  3,4,4,3,2,
+  0,5,
+  2,7,
+  0x18,
+  0x20,0x50,0x88,0x50,0x20
+};
+const GuiConst_INT8U Ch000006[18] =
+{
+  1,1,2,2,1,  2,2,2,2,2,
+  1,2,
+  2,7,
+  0x78,
+  0x40,0xC0,0x40
+};
+const GuiConst_INT8U Ch000007[22] =
+{
+  0,0,0,0,2,  4,4,3,4,2,
+  0,5,
+  2,7,
+  0x00,
+  0x70,0x88,0x08,0x30,0x40,0x80,0xF8
+};
+const GuiConst_INT8U Ch000008[22] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  2,7,
+  0x00,
+  0x70,0x88,0x08,0x30,0x08,0x88,0x70
+};
+const GuiConst_INT8U Ch000009[21] =
+{
+  1,0,0,1,2,  3,4,4,3,2,
+  0,5,
+  2,7,
+  0x40,
+  0x10,0x30,0x50,0x90,0xF8,0x10
+};
+const GuiConst_INT8U Ch000010[21] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  2,7,
+  0x10,
+  0xF8,0x80,0xF0,0x08,0x88,0x70
+};
+const GuiConst_INT8U Ch000011[21] =
+{
+  1,0,0,0,2,  3,4,4,4,2,
+  0,5,
+  2,7,
+  0x20,
+  0x30,0x40,0x80,0xF0,0x88,0x70
+};
+const GuiConst_INT8U Ch000012[21] =
+{
+  0,1,0,0,2,  4,4,3,1,2,
+  0,5,
+  2,7,
+  0x04,
+  0xF8,0x08,0x10,0x20,0x40,0x80
+};
+const GuiConst_INT8U Ch000013[20] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  2,7,
+  0x24,
+  0x70,0x88,0x70,0x88,0x70
+};
+const GuiConst_INT8U Ch000014[21] =
+{
+  0,0,0,1,2,  4,4,4,3,2,
+  0,5,
+  2,7,
+  0x04,
+  0x70,0x88,0x78,0x08,0x10,0x60
+};
+const GuiConst_INT8U Ch000015[18] =
+{
+  2,2,2,2,2,  2,2,2,2,2,
+  2,1,
+  4,5,
+  0x0C,
+  0x80,0x00,0x80
+};
+const GuiConst_INT8U Ch000016[20] =
+{
+  1,0,0,0,2,  3,4,4,4,2,
+  0,5,
+  2,7,
+  0x44,
+  0x20,0x50,0x88,0xF8,0x88
+};
+const GuiConst_INT8U Ch000017[20] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  2,7,
+  0x24,
+  0xF0,0x88,0xF0,0x88,0xF0
+};
+const GuiConst_INT8U Ch000018[20] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  2,7,
+  0x18,
+  0x70,0x88,0x80,0x88,0x70
+};
+const GuiConst_INT8U Ch000019[18] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  2,7,
+  0x3C,
+  0xF0,0x88,0xF0
+};
+const GuiConst_INT8U Ch000020[20] =
+{
+  0,0,0,0,2,  4,3,3,4,2,
+  0,5,
+  2,7,
+  0x24,
+  0xF8,0x80,0xF0,0x80,0xF8
+};
+const GuiConst_INT8U Ch000021[19] =
+{
+  0,0,0,0,2,  4,3,3,2,2,
+  0,5,
+  2,7,
+  0x64,
+  0xF8,0x80,0xF0,0x80
+};
+const GuiConst_INT8U Ch000022[21] =
+{
+  0,0,0,0,4,  4,4,4,4,4,
+  0,6,
+  2,8,
+  0x0C,
+  0x70,0x88,0xA8,0x98,0x70,0x0C
+};
+const GuiConst_INT8U Ch000023[20] =
+{
+  1,0,0,0,1,  2,3,3,2,2,
+  0,4,
+  4,5,
+  0x00,
+  0x60,0x90,0xF0,0x80,0x60
+};
+const GuiConst_INT8U Ch000024[18] =
+{
+  0,0,0,0,1,  0,3,3,3,2,
+  0,4,
+  2,7,
+  0x72,
+  0x80,0xE0,0x90
+};
+const GuiConst_INT8U Ch000025[18] =
+{
+  1,0,0,0,1,  1,3,1,0,2,
+  0,4,
+  4,5,
+  0x18,
+  0xB0,0xC0,0x80
+};
+const GuiConst_INT8U Ch000026[19] =
+{
+  2,1,2,2,2,  2,3,2,3,3,
+  1,3,
+  2,7,
+  0x32,
+  0x40,0xE0,0x40,0x20
+};
+const GuiConst_INT8U Ch000027[18] =
+{
+  2,0,0,0,2,  2,4,4,4,2,
+  0,5,
+  4,5,
+  0x0A,
+  0x88,0xA8,0x50
+};
+const GuiConst_INT8U Ch000028[20] =
+{
+  2,0,0,1,0,  2,4,4,3,2,
+  0,5,
+  4,7,
+  0x06,
+  0x88,0x50,0x20,0x40,0x80
+};
+const GuiConst_INT8U Ch000029[17] =
+{
+  0,0,0,0,0,  5,5,5,5,5,
+  0,6,
+  0,11,
+  0xFE,0x07,
+  0xFC
+};
+const GuiConst_INT8U Ch000030[16] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000031[18] =
+{
+  2,0,0,2,2,  3,5,5,3,3,
+  0,6,
+  3,5,
+  0x12,
+  0x30,0xFC,0x30
+};
+const GuiConst_INT8U Ch000032[17] =
+{
+  2,2,2,1,1,  2,2,3,3,2,
+  1,3,
+  7,3,
+  0x02,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000033[16] =
+{
+  2,0,0,2,2,  3,5,5,3,3,
+  0,6,
+  5,1,
+  0x00,
+  0xFC
+};
+const GuiConst_INT8U Ch000034[16] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  7,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000035[20] =
+{
+  1,0,0,1,2,  4,5,5,4,3,
+  0,6,
+  2,7,
+  0x18,
+  0x30,0x78,0xCC,0x78,0x30
+};
+const GuiConst_INT8U Ch000036[19] =
+{
+  2,1,3,3,2,  4,4,4,4,3,
+  1,4,
+  2,7,
+  0x70,
+  0x30,0x70,0xF0,0x30
+};
+const GuiConst_INT8U Ch000037[22] =
+{
+  0,0,0,0,2,  5,5,4,5,3,
+  0,6,
+  2,7,
+  0x00,
+  0x78,0xCC,0x0C,0x38,0x60,0xC0,0xFC
+};
+const GuiConst_INT8U Ch000038[22] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  2,7,
+  0x00,
+  0x78,0xCC,0x0C,0x38,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000039[20] =
+{
+  1,0,0,3,2,  4,4,5,4,3,
+  0,6,
+  2,7,
+  0x48,
+  0x38,0x78,0xD8,0xFC,0x18
+};
+const GuiConst_INT8U Ch000040[21] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  2,7,
+  0x10,
+  0xFC,0xC0,0xF8,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000041[21] =
+{
+  1,0,0,0,2,  4,4,5,5,3,
+  0,6,
+  2,7,
+  0x20,
+  0x38,0x60,0xC0,0xF8,0xCC,0x78
+};
+const GuiConst_INT8U Ch000042[20] =
+{
+  0,1,2,1,2,  5,5,4,3,3,
+  0,6,
+  2,7,
+  0x28,
+  0xFC,0x0C,0x18,0x30,0x60
+};
+const GuiConst_INT8U Ch000043[20] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  2,7,
+  0x24,
+  0x78,0xCC,0x78,0xCC,0x78
+};
+const GuiConst_INT8U Ch000044[21] =
+{
+  0,0,1,1,2,  5,5,5,4,3,
+  0,6,
+  2,7,
+  0x04,
+  0x78,0xCC,0x7C,0x0C,0x18,0x70
+};
+const GuiConst_INT8U Ch000045[18] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  3,6,
+  0x2A,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000046[20] =
+{
+  1,0,0,0,2,  4,5,5,5,3,
+  0,6,
+  2,7,
+  0x48,
+  0x30,0x78,0xCC,0xFC,0xCC
+};
+const GuiConst_INT8U Ch000047[20] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  2,7,
+  0x24,
+  0xF8,0xCC,0xF8,0xCC,0xF8
+};
+const GuiConst_INT8U Ch000048[20] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  2,7,
+  0x18,
+  0x78,0xCC,0xC0,0xCC,0x78
+};
+const GuiConst_INT8U Ch000049[20] =
+{
+  0,0,0,0,2,  4,5,5,4,3,
+  0,6,
+  2,7,
+  0x18,
+  0xF0,0xD8,0xCC,0xD8,0xF0
+};
+const GuiConst_INT8U Ch000050[20] =
+{
+  0,0,0,0,2,  5,4,4,5,3,
+  0,6,
+  2,7,
+  0x24,
+  0xFC,0xC0,0xF8,0xC0,0xFC
+};
+const GuiConst_INT8U Ch000051[19] =
+{
+  0,0,0,0,2,  5,4,4,2,3,
+  0,6,
+  2,7,
+  0x64,
+  0xFC,0xC0,0xF8,0xC0
+};
+const GuiConst_INT8U Ch000052[18] =
+{
+  0,0,0,0,2,  1,4,4,4,2,
+  0,5,
+  2,7,
+  0x72,
+  0xC0,0xF0,0xD8
+};
+const GuiConst_INT8U Ch000053[17] =
+{
+  0,0,0,0,0,  6,6,6,6,6,
+  0,7,
+  0,11,
+  0xFE,0x07,
+  0xFE
+};
+const GuiConst_INT8U Ch000054[16] =
+{
+  0,0,0,0,0,  0,0,0,0,0,
+  0,1,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000055[18] =
+{
+  1,0,0,1,1,  1,2,2,1,1,
+  0,3,
+  4,3,
+  0x00,
+  0x40,0xE0,0x40
+};
+const GuiConst_INT8U Ch000056[17] =
+{
+  1,1,1,0,0,  1,1,1,1,0,
+  0,2,
+  7,3,
+  0x02,
+  0x40,0x80
+};
+const GuiConst_INT8U Ch000057[16] =
+{
+  1,0,0,1,1,  1,2,2,1,1,
+  0,3,
+  5,1,
+  0x00,
+  0xE0
+};
+const GuiConst_INT8U Ch000058[16] =
+{
+  1,1,1,1,1,  1,1,1,1,1,
+  1,1,
+  8,1,
+  0x00,
+  0x80
+};
+const GuiConst_INT8U Ch000059[18] =
+{
+  1,0,0,1,1,  1,2,2,1,1,
+  0,3,
+  2,7,
+  0x3C,
+  0x40,0xA0,0x40
+};
+const GuiConst_INT8U Ch000060[18] =
+{
+  1,0,1,1,0,  1,1,1,1,1,
+  0,2,
+  2,7,
+  0x78,
+  0x40,0xC0,0x40
+};
+const GuiConst_INT8U Ch000061[21] =
+{
+  1,0,0,0,1,  1,2,1,2,1,
+  0,3,
+  2,7,
+  0x20,
+  0x40,0xA0,0x20,0x40,0x80,0xE0
+};
+const GuiConst_INT8U Ch000062[22] =
+{
+  1,0,0,1,1,  1,2,2,1,1,
+  0,3,
+  2,7,
+  0x00,
+  0x40,0xA0,0x20,0x40,0x20,0xA0,0x40
+};
+const GuiConst_INT8U Ch000063[20] =
+{
+  1,0,0,1,1,  2,2,3,2,2,
+  0,4,
+  2,7,
+  0x48,
+  0x20,0x60,0xA0,0xF0,0x20
+};
+const GuiConst_INT8U Ch000064[21] =
+{
+  0,0,0,1,1,  2,2,2,1,1,
+  0,3,
+  2,7,
+  0x10,
+  0xE0,0x80,0xC0,0x20,0xA0,0x40
+};
+const GuiConst_INT8U Ch000065[20] =
+{
+  1,0,0,1,1,  2,2,2,1,1,
+  0,3,
+  2,7,
+  0x30,
+  0x60,0x80,0xC0,0xA0,0x40
+};
+const GuiConst_INT8U Ch000066[18] =
+{
+  0,1,1,1,1,  2,2,1,1,1,
+  0,3,
+  2,7,
+  0x74,
+  0xE0,0x20,0x40
+};
+const GuiConst_INT8U Ch000067[20] =
+{
+  1,0,0,1,1,  1,2,2,1,1,
+  0,3,
+  2,7,
+  0x24,
+  0x40,0xA0,0x40,0xA0,0x40
+};
+const GuiConst_INT8U Ch000068[20] =
+{
+  1,0,0,0,1,  1,2,2,1,1,
+  0,3,
+  2,7,
+  0x0C,
+  0x40,0xA0,0x60,0x20,0xC0
+};
+const GuiConst_INT8U Ch000069[18] =
+{
+  1,1,1,1,1,  1,1,1,1,1,
+  1,1,
+  4,5,
+  0x0C,
+  0x80,0x00,0x80
+};
+const GuiConst_INT8U Ch000070[19] =
+{
+  1,0,0,0,1,  1,2,2,2,1,
+  0,3,
+  2,7,
+  0x4C,
+  0x40,0xA0,0xE0,0xA0
+};
+const GuiConst_INT8U Ch000071[20] =
+{
+  0,0,0,0,0,  1,2,2,1,0,
+  0,3,
+  2,7,
+  0x24,
+  0xC0,0xA0,0xC0,0xA0,0xC0
+};
+const GuiConst_INT8U Ch000072[20] =
+{
+  0,0,0,0,0,  1,2,2,1,0,
+  0,3,
+  2,7,
+  0x18,
+  0x40,0xA0,0x80,0xA0,0x40
+};
+const GuiConst_INT8U Ch000073[18] =
+{
+  0,0,0,0,0,  1,2,2,1,0,
+  0,3,
+  2,7,
+  0x3C,
+  0xC0,0xA0,0xC0
+};
+const GuiConst_INT8U Ch000074[20] =
+{
+  0,0,0,0,0,  2,1,1,2,0,
+  0,3,
+  2,7,
+  0x24,
+  0xE0,0x80,0xC0,0x80,0xE0
+};
+const GuiConst_INT8U Ch000075[19] =
+{
+  0,0,0,0,0,  2,1,1,0,1,
+  0,3,
+  2,7,
+  0x64,
+  0xE0,0x80,0xC0,0x80
+};
+const GuiConst_INT8U Ch000076[18] =
+{
+  0,0,0,0,1,  0,1,2,2,1,
+  0,3,
+  2,7,
+  0x72,
+  0x80,0xC0,0xA0
+};
+const GuiConst_INT8U Ch000077[17] =
+{
+  0,0,0,0,0,  4,4,4,4,4,
+  0,5,
+  0,11,
+  0xFE,0x07,
+  0xF8
+};
+const GuiConst_INT8U Ch000078[16] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000079[18] =
+{
+  2,1,0,2,2,  3,4,5,3,3,
+  0,6,
+  5,5,
+  0x12,
+  0x30,0xFC,0x30
+};
+const GuiConst_INT8U Ch000080[17] =
+{
+  2,2,2,1,2,  2,2,2,3,2,
+  1,3,
+  10,3,
+  0x02,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000081[16] =
+{
+  2,1,0,2,2,  2,3,4,2,2,
+  0,5,
+  7,2,
+  0x02,
+  0xF8
+};
+const GuiConst_INT8U Ch000082[16] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  10,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000083[19] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  3,9,
+  0xFC,0x00,
+  0x78,0xCC,0x78
+};
+const GuiConst_INT8U Ch000084[20] =
+{
+  2,1,3,3,2,  4,4,4,4,3,
+  1,4,
+  3,9,
+  0xF0,0x01,
+  0x30,0x70,0xF0,0x30
+};
+const GuiConst_INT8U Ch000085[24] =
+{
+  0,0,0,0,2,  5,5,3,5,3,
+  0,6,
+  3,9,
+  0x80,0x00,
+  0x78,0xCC,0x0C,0x18,0x30,0x60,0xC0,0xFC
+};
+const GuiConst_INT8U Ch000086[24] =
+{
+  0,0,1,0,2,  5,5,5,5,3,
+  0,6,
+  3,9,
+  0x40,0x00,
+  0x78,0xCC,0x04,0x0C,0x18,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000087[23] =
+{
+  2,1,0,1,3,  5,5,6,5,3,
+  0,7,
+  3,9,
+  0x20,0x01,
+  0x0C,0x1C,0x3C,0x6C,0xCC,0xFE,0x0C
+};
+const GuiConst_INT8U Ch000088[22] =
+{
+  0,0,1,0,2,  5,4,5,5,3,
+  0,6,
+  3,9,
+  0x64,0x00,
+  0xFC,0xC0,0xF8,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000089[22] =
+{
+  1,0,0,0,2,  4,4,5,5,3,
+  0,6,
+  3,9,
+  0xE0,0x00,
+  0x38,0x60,0xC0,0xF8,0xCC,0x78
+};
+const GuiConst_INT8U Ch000090[20] =
+{
+  0,1,2,2,2,  5,5,4,3,3,
+  0,6,
+  3,9,
+  0xB4,0x01,
+  0xFC,0x0C,0x18,0x30
+};
+const GuiConst_INT8U Ch000091[21] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  3,9,
+  0xCC,0x00,
+  0x78,0xCC,0x78,0xCC,0x78
+};
+const GuiConst_INT8U Ch000092[22] =
+{
+  0,0,0,1,2,  5,5,5,4,3,
+  0,6,
+  3,9,
+  0x1C,0x00,
+  0x78,0xCC,0x7C,0x0C,0x18,0x70
+};
+const GuiConst_INT8U Ch000093[18] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  5,7,
+  0x5A,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000094[21] =
+{
+  2,1,0,0,2,  3,4,5,5,3,
+  0,6,
+  3,9,
+  0x2A,0x01,
+  0x30,0x78,0xCC,0xFC,0xCC
+};
+const GuiConst_INT8U Ch000095[21] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  3,9,
+  0xCC,0x00,
+  0xF8,0xCC,0xF8,0xCC,0xF8
+};
+const GuiConst_INT8U Ch000096[21] =
+{
+  0,0,0,0,2,  5,5,4,5,3,
+  0,6,
+  3,9,
+  0x78,0x00,
+  0x78,0xCC,0xC0,0xCC,0x78
+};
+const GuiConst_INT8U Ch000097[21] =
+{
+  0,0,0,0,2,  4,5,5,4,3,
+  0,6,
+  3,9,
+  0x78,0x00,
+  0xF0,0xD8,0xCC,0xD8,0xF0
+};
+const GuiConst_INT8U Ch000098[21] =
+{
+  0,0,0,0,2,  4,3,3,4,2,
+  0,5,
+  3,9,
+  0xCC,0x00,
+  0xF8,0xC0,0xF0,0xC0,0xF8
+};
+const GuiConst_INT8U Ch000099[20] =
+{
+  0,0,0,0,2,  4,3,3,1,2,
+  0,5,
+  3,9,
+  0xCC,0x01,
+  0xF8,0xC0,0xF0,0xC0
+};
+const GuiConst_INT8U Ch000100[19] =
+{
+  0,0,0,0,2,  3,5,5,5,3,
+  0,6,
+  3,9,
+  0xF2,0x01,
+  0xC0,0xF8,0xCC
+};
+const GuiConst_INT8U Ch000101[18] =
+{
+  0,0,0,0,0,  8,8,8,8,8,
+  0,9,
+  0,14,
+  0xFE,0x3F,
+  0xFF,0x80
+};
+const GuiConst_INT8U Ch000102[16] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000103[18] =
+{
+  3,1,0,3,3,  4,6,7,4,4,
+  0,8,
+  5,7,
+  0x66,
+  0x18,0xFF,0x18
+};
+const GuiConst_INT8U Ch000104[17] =
+{
+  3,3,3,3,2,  3,3,3,4,4,
+  2,3,
+  12,4,
+  0x06,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000105[16] =
+{
+  3,1,0,3,3,  4,6,7,4,4,
+  0,8,
+  8,1,
+  0x00,
+  0xFF
+};
+const GuiConst_INT8U Ch000106[16] =
+{
+  3,3,3,3,3,  4,4,4,4,4,
+  3,2,
+  12,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000107[21] =
+{
+  1,0,0,1,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0xF4,0x02,
+  0x3C,0x66,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000108[20] =
+{
+  2,1,3,3,2,  4,4,4,4,3,
+  1,4,
+  3,11,
+  0xF0,0x07,
+  0x30,0x70,0xF0,0x30
+};
+const GuiConst_INT8U Ch000109[25] =
+{
+  1,0,1,0,3,  6,7,6,7,4,
+  0,8,
+  3,11,
+  0x08,0x02,
+  0x3C,0x66,0xC3,0x03,0x0E,0x38,0x60,0xC0,0xFF
+};
+const GuiConst_INT8U Ch000110[27] =
+{
+  1,0,4,1,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0x00,0x00,
+  0x3C,0x66,0xC3,0x03,0x06,0x0C,0x06,0x03,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000111[22] =
+{
+  2,1,0,4,3,  5,5,7,5,4,
+  0,8,
+  3,11,
+  0x54,0x06,
+  0x1C,0x3C,0x6C,0xCC,0xFF,0x0C
+};
+const GuiConst_INT8U Ch000112[24] =
+{
+  0,0,1,1,3,  7,6,7,6,4,
+  0,8,
+  3,11,
+  0xC4,0x00,
+  0xFF,0xC0,0xFC,0xE6,0x03,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000113[25] =
+{
+  2,0,0,1,3,  6,5,7,6,4,
+  0,8,
+  3,11,
+  0x80,0x01,
+  0x1E,0x30,0x60,0xC0,0xFC,0xE6,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000114[22] =
+{
+  0,3,3,2,3,  7,7,5,4,4,
+  0,8,
+  3,11,
+  0x54,0x05,
+  0xFF,0x03,0x06,0x0C,0x18,0x30
+};
+const GuiConst_INT8U Ch000115[25] =
+{
+  1,0,0,1,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0x08,0x01,
+  0x3C,0x66,0xC3,0x66,0x3C,0x66,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000116[25] =
+{
+  1,0,1,1,3,  6,7,7,5,4,
+  0,8,
+  3,11,
+  0x18,0x00,
+  0x3C,0x66,0xC3,0x67,0x3F,0x03,0x06,0x0C,0x78
+};
+const GuiConst_INT8U Ch000117[18] =
+{
+  3,3,3,3,3,  4,4,4,4,4,
+  3,2,
+  6,8,
+  0xBA,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000118[21] =
+{
+  2,2,1,0,3,  5,5,6,7,4,
+  0,8,
+  3,11,
+  0xDA,0x04,
+  0x18,0x3C,0x66,0xFF,0xC3
+};
+const GuiConst_INT8U Ch000119[25] =
+{
+  0,0,0,0,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0x08,0x01,
+  0xFC,0xC6,0xC3,0xC6,0xFC,0xC6,0xC3,0xC6,0xFC
+};
+const GuiConst_INT8U Ch000120[21] =
+{
+  1,0,0,1,3,  7,6,6,7,4,
+  0,8,
+  3,11,
+  0xF8,0x01,
+  0x3E,0x63,0xC0,0x63,0x3E
+};
+const GuiConst_INT8U Ch000121[21] =
+{
+  0,0,0,0,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0xF8,0x01,
+  0xFC,0xC6,0xC3,0xC6,0xFC
+};
+const GuiConst_INT8U Ch000122[21] =
+{
+  0,0,0,0,3,  7,5,5,7,4,
+  0,8,
+  3,11,
+  0x9C,0x03,
+  0xFF,0xC0,0xFC,0xC0,0xFF
+};
+const GuiConst_INT8U Ch000123[20] =
+{
+  0,0,0,0,3,  7,5,5,1,4,
+  0,8,
+  3,11,
+  0x9C,0x07,
+  0xFF,0xC0,0xFC,0xC0
+};
+const GuiConst_INT8U Ch000124[20] =
+{
+  0,0,0,0,3,  1,5,6,6,3,
+  0,7,
+  3,11,
+  0xC6,0x07,
+  0xC0,0xF8,0xEC,0xC6
+};
+const GuiConst_INT8U Ch000125[19] =
+{
+  0,0,0,0,0,  8,8,8,8,8,
+  0,9,
+  0,17,
+  0xFE,0xFF,0x01,
+  0xFF,0x80
+};
+const GuiConst_INT8U Ch000126[16] =
+{
+  0,0,0,0,0,  1,1,1,1,1,
+  0,2,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000127[18] =
+{
+  2,0,0,2,2,  3,5,5,3,3,
+  0,6,
+  5,7,
+  0x66,
+  0x30,0xFC,0x30
+};
+const GuiConst_INT8U Ch000128[17] =
+{
+  3,3,3,3,2,  3,3,3,4,4,
+  2,3,
+  12,4,
+  0x06,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000129[16] =
+{
+  3,1,0,3,3,  4,6,6,4,4,
+  0,7,
+  8,1,
+  0x00,
+  0xFE
+};
+const GuiConst_INT8U Ch000130[16] =
+{
+  3,3,3,3,3,  4,4,4,4,4,
+  3,2,
+  12,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000131[21] =
+{
+  1,0,0,1,3,  5,6,6,5,3,
+  0,7,
+  3,11,
+  0xF4,0x02,
+  0x38,0x6C,0xC6,0x6C,0x38
+};
+const GuiConst_INT8U Ch000132[20] =
+{
+  2,1,3,3,2,  4,4,4,4,3,
+  1,4,
+  3,11,
+  0xF0,0x07,
+  0x30,0x70,0xF0,0x30
+};
+const GuiConst_INT8U Ch000133[25] =
+{
+  1,0,1,0,2,  5,6,5,6,3,
+  0,7,
+  3,11,
+  0x08,0x02,
+  0x38,0x6C,0xC6,0x0C,0x18,0x30,0x60,0xC0,0xFE
+};
+const GuiConst_INT8U Ch000134[27] =
+{
+  1,0,3,1,2,  5,6,6,5,3,
+  0,7,
+  3,11,
+  0x00,0x00,
+  0x38,0x6C,0xC6,0x06,0x0C,0x18,0x0C,0x06,0xC6,0x6C,0x38
+};
+const GuiConst_INT8U Ch000135[22] =
+{
+  3,1,0,4,3,  5,5,6,5,3,
+  0,7,
+  3,11,
+  0xAA,0x04,
+  0x1C,0x3C,0x6C,0xCC,0xFE,0x0C
+};
+const GuiConst_INT8U Ch000136[24] =
+{
+  0,0,1,1,3,  6,5,6,5,3,
+  0,7,
+  3,11,
+  0xC4,0x00,
+  0xFE,0xC0,0xF8,0xCC,0x06,0xC6,0x6C,0x38
+};
+const GuiConst_INT8U Ch000137[25] =
+{
+  2,0,0,1,3,  5,4,6,5,3,
+  0,7,
+  3,11,
+  0x80,0x01,
+  0x1C,0x30,0x60,0xC0,0xF8,0xEC,0xC6,0x6C,0x38
+};
+const GuiConst_INT8U Ch000138[22] =
+{
+  0,2,2,1,2,  6,6,4,3,3,
+  0,7,
+  3,11,
+  0x54,0x05,
+  0xFE,0x06,0x0C,0x18,0x30,0x60
+};
+const GuiConst_INT8U Ch000139[25] =
+{
+  1,0,0,1,3,  5,6,6,5,3,
+  0,7,
+  3,11,
+  0x08,0x01,
+  0x38,0x6C,0xC6,0x6C,0x38,0x6C,0xC6,0x6C,0x38
+};
+const GuiConst_INT8U Ch000140[25] =
+{
+  1,0,1,1,2,  5,6,6,4,3,
+  0,7,
+  3,11,
+  0x18,0x00,
+  0x38,0x6C,0xC6,0x6E,0x3E,0x06,0x0C,0x18,0x70
+};
+const GuiConst_INT8U Ch000141[18] =
+{
+  3,3,3,3,3,  4,4,4,4,4,
+  3,2,
+  6,8,
+  0xBA,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000142[22] =
+{
+  2,1,0,0,3,  4,5,6,6,3,
+  0,7,
+  3,11,
+  0xD2,0x04,
+  0x38,0x7C,0x6C,0xC6,0xFE,0xC6
+};
+const GuiConst_INT8U Ch000143[25] =
+{
+  0,0,0,0,2,  5,6,6,5,3,
+  0,7,
+  3,11,
+  0x08,0x01,
+  0xF8,0xCC,0xC6,0xCC,0xF8,0xCC,0xC6,0xCC,0xF8
+};
+const GuiConst_INT8U Ch000144[21] =
+{
+  1,0,0,1,3,  6,5,5,6,3,
+  0,7,
+  3,11,
+  0xF8,0x01,
+  0x3C,0x66,0xC0,0x66,0x3C
+};
+const GuiConst_INT8U Ch000145[21] =
+{
+  0,0,0,0,2,  5,6,6,5,3,
+  0,7,
+  3,11,
+  0xF8,0x01,
+  0xF8,0xCC,0xC6,0xCC,0xF8
+};
+const GuiConst_INT8U Ch000146[21] =
+{
+  0,0,0,0,3,  6,4,4,6,3,
+  0,7,
+  3,11,
+  0x9C,0x03,
+  0xFE,0xC0,0xF8,0xC0,0xFE
+};
+const GuiConst_INT8U Ch000147[20] =
+{
+  0,0,0,0,3,  6,4,4,1,3,
+  0,7,
+  3,11,
+  0x9C,0x07,
+  0xFE,0xC0,0xF8,0xC0
+};
+const GuiConst_INT8U Ch000148[19] =
+{
+  0,0,0,0,2,  1,5,5,5,3,
+  0,6,
+  3,11,
+  0xE6,0x07,
+  0xC0,0xF8,0xCC
+};
+const GuiConst_INT8U Ch000149[18] =
+{
+  0,0,0,0,0,  7,7,7,7,7,
+  0,8,
+  0,17,
+  0xFE,0xFF,0x01,
+  0xFF
+};
+const GuiConst_INT8U Ch000150[16] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000151[18] =
+{
+  2,0,0,2,2,  2,4,4,2,2,
+  0,5,
+  5,7,
+  0x66,
+  0x20,0xF8,0x20
+};
+const GuiConst_INT8U Ch000152[17] =
+{
+  1,1,1,1,1,  2,2,2,2,1,
+  0,3,
+  12,3,
+  0x02,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000153[16] =
+{
+  2,0,0,2,2,  2,4,4,2,2,
+  0,5,
+  8,1,
+  0x00,
+  0xF8
+};
+const GuiConst_INT8U Ch000154[16] =
+{
+  1,1,1,1,1,  2,2,2,2,2,
+  1,2,
+  12,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000155[21] =
+{
+  1,0,0,1,2,  3,4,4,3,2,
+  0,5,
+  3,11,
+  0xF8,0x01,
+  0x20,0x50,0x88,0x50,0x20
+};
+const GuiConst_INT8U Ch000156[19] =
+{
+  1,2,2,2,1,  2,2,2,2,2,
+  1,2,
+  3,11,
+  0xF8,0x07,
+  0x40,0xC0,0x40
+};
+const GuiConst_INT8U Ch000157[24] =
+{
+  0,1,0,0,2,  4,4,2,4,2,
+  0,5,
+  3,11,
+  0x84,0x02,
+  0x70,0x88,0x08,0x10,0x20,0x40,0x80,0xF8
+};
+const GuiConst_INT8U Ch000158[23] =
+{
+  0,1,0,0,2,  4,4,4,4,2,
+  0,5,
+  3,11,
+  0x94,0x02,
+  0x70,0x88,0x08,0x30,0x08,0x88,0x70
+};
+const GuiConst_INT8U Ch000159[22] =
+{
+  2,1,0,3,2,  3,3,4,3,2,
+  0,5,
+  3,11,
+  0xB4,0x04,
+  0x10,0x30,0x50,0x90,0xF8,0x10
+};
+const GuiConst_INT8U Ch000160[22] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  3,11,
+  0xCC,0x02,
+  0xF8,0x80,0xF0,0x08,0x88,0x70
+};
+const GuiConst_INT8U Ch000161[22] =
+{
+  1,0,0,0,2,  3,3,4,4,2,
+  0,5,
+  3,11,
+  0x94,0x03,
+  0x30,0x40,0x80,0xF0,0x88,0x70
+};
+const GuiConst_INT8U Ch000162[22] =
+{
+  0,2,1,0,2,  4,3,2,2,2,
+  0,5,
+  3,11,
+  0x54,0x05,
+  0xF8,0x08,0x10,0x20,0x40,0x80
+};
+const GuiConst_INT8U Ch000163[21] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  3,11,
+  0x9C,0x03,
+  0x70,0x88,0x70,0x88,0x70
+};
+const GuiConst_INT8U Ch000164[22] =
+{
+  0,0,1,1,2,  4,4,4,3,2,
+  0,5,
+  3,11,
+  0x9C,0x02,
+  0x70,0x88,0x78,0x08,0x10,0x60
+};
+const GuiConst_INT8U Ch000165[18] =
+{
+  1,1,1,1,1,  2,2,2,2,2,
+  1,2,
+  7,7,
+  0x5A,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000166[21] =
+{
+  2,0,0,0,2,  2,4,4,4,2,
+  0,5,
+  3,11,
+  0x5A,0x06,
+  0x20,0x50,0x88,0xF8,0x88
+};
+const GuiConst_INT8U Ch000167[21] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  3,11,
+  0x9C,0x03,
+  0xF0,0x88,0xF0,0x88,0xF0
+};
+const GuiConst_INT8U Ch000168[21] =
+{
+  0,0,0,0,2,  4,3,4,4,2,
+  0,5,
+  3,11,
+  0xF4,0x02,
+  0x70,0x88,0x80,0x88,0x70
+};
+const GuiConst_INT8U Ch000169[19] =
+{
+  0,0,0,0,2,  4,4,4,4,2,
+  0,5,
+  3,11,
+  0xFC,0x03,
+  0xF0,0x88,0xF0
+};
+const GuiConst_INT8U Ch000170[21] =
+{
+  0,0,0,0,2,  4,3,3,4,2,
+  0,5,
+  3,11,
+  0x9C,0x03,
+  0xF8,0x80,0xF0,0x80,0xF8
+};
+const GuiConst_INT8U Ch000171[20] =
+{
+  0,0,0,0,2,  4,3,3,2,2,
+  0,5,
+  3,11,
+  0x9C,0x07,
+  0xF8,0x80,0xF0,0x80
+};
+const GuiConst_INT8U Ch000172[19] =
+{
+  0,0,0,0,1,  0,3,3,3,2,
+  0,4,
+  3,11,
+  0xCE,0x07,
+  0x80,0xE0,0x90
+};
+const GuiConst_INT8U Ch000173[18] =
+{
+  0,0,0,0,0,  5,5,5,5,5,
+  0,6,
+  0,17,
+  0xFE,0xFF,0x01,
+  0xFC
+};
+const GuiConst_INT8U Ch000174[17] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00,0x00
+};
+const GuiConst_INT8U Ch000175[27] =
+{
+  3,3,1,3,3,  3,3,6,3,3,
+  0,7,
+  9,5,
+  0x12,
+  0x00,0xB0,0x01,0x00,0xF3,0xFF,0xFF,0x05,0x00,0xB0,0x01,0x00
+};
+const GuiConst_INT8U Ch000176[18] =
+{
+  0,0,0,1,1,  1,1,1,1,1,
+  0,2,
+  15,3,
+  0x00,
+  0xA0,0x60,0x83
+};
+const GuiConst_INT8U Ch000177[17] =
+{
+  3,3,2,3,3,  4,4,5,4,4,
+  2,4,
+  12,1,
+  0x00,
+  0xF8,0x8F
+};
+const GuiConst_INT8U Ch000178[16] =
+{
+  1,1,1,1,1,  1,1,1,1,1,
+  1,1,
+  15,1,
+  0x00,
+  0x0A
+};
+const GuiConst_INT8U Ch000179[60] =
+{
+  1,0,0,1,3,  5,5,6,5,3,
+  0,7,
+  5,11,
+  0x00,0x00,
+  0x00,0xFC,0x0C,0x00,0xA0,0x05,0x85,0x00,0xB1,0x00,0xB0,0x01,
+  0xA3,0x00,0xA0,0x03,0x85,0x00,0x80,0x03,0x85,0x00,0x80,0x05,
+  0x85,0x00,0x80,0x03,0xA3,0x00,0xA0,0x03,0xB1,0x00,0xB0,0x01,
+  0xA0,0x05,0x85,0x00,0x00,0xFC,0x0C,0x00
+};
+const GuiConst_INT8U Ch000180[26] =
+{
+  3,1,4,4,2,  4,4,4,4,3,
+  1,4,
+  5,11,
+  0xE0,0x07,
+  0x00,0x71,0x00,0x8A,0x80,0x86,0x17,0x83,0x00,0x83
+};
+const GuiConst_INT8U Ch000181[60] =
+{
+  1,1,2,0,3,  5,6,5,6,3,
+  0,7,
+  5,11,
+  0x00,0x00,
+  0x00,0xFC,0x3F,0x00,0xA0,0x03,0xB1,0x00,0x81,0x00,0x80,0x03,
+  0x00,0x00,0x80,0x05,0x00,0x00,0xC1,0x01,0x00,0x00,0x8A,0x00,
+  0x00,0x80,0x0C,0x00,0x00,0xC5,0x00,0x00,0x50,0x1D,0x00,0x00,
+  0xD1,0x03,0x00,0x00,0xF5,0xFF,0xFF,0x05
+};
+const GuiConst_INT8U Ch000182[60] =
+{
+  1,1,2,1,3,  5,5,6,5,3,
+  0,7,
+  5,11,
+  0x00,0x00,
+  0x00,0xFC,0x0A,0x00,0xA0,0x03,0x85,0x00,0xB1,0x00,0xB1,0x00,
+  0x00,0x00,0x81,0x00,0x00,0x00,0x38,0x00,0x00,0xD1,0x8F,0x00,
+  0x00,0x00,0xD1,0x03,0x00,0x00,0x80,0x05,0xA3,0x00,0xA0,0x03,
+  0xC0,0x03,0xC3,0x00,0x10,0xFD,0x0C,0x00
+};
+const GuiConst_INT8U Ch000183[52] =
+{
+  4,3,1,5,4,  5,5,6,5,4,
+  1,7,
+  5,11,
+  0x00,0x06,
+  0x00,0x00,0x1B,0x00,0x00,0x50,0x1D,0x00,0x00,0xA1,0x1C,0x00,
+  0x00,0x37,0x1B,0x00,0x30,0x08,0x1B,0x00,0x80,0x01,0x1B,0x00,
+  0x55,0x00,0x1B,0x00,0xFA,0xFF,0xFF,0x03,0x00,0x00,0x1B,0x00
+};
+const GuiConst_INT8U Ch000184[60] =
+{
+  1,1,1,1,3,  5,4,6,5,3,
+  0,7,
+  5,11,
+  0x00,0x00,
+  0x50,0xFF,0xCF,0x00,0x80,0x03,0x00,0x00,0x80,0x01,0x00,0x00,
+  0xA0,0x00,0x00,0x00,0xC0,0xFF,0x1D,0x00,0xD1,0x03,0xC3,0x00,
+  0x00,0x00,0xA0,0x03,0x00,0x00,0x80,0x05,0xA3,0x00,0xA0,0x03,
+  0xC0,0x03,0xA5,0x00,0x10,0xFD,0x0C,0x00
+};
+const GuiConst_INT8U Ch000185[60] =
+{
+  1,0,0,1,3,  5,5,6,5,3,
+  0,7,
+  5,11,
+  0x00,0x00,
+  0x00,0xFA,0x1D,0x00,0x80,0x05,0xA5,0x00,0x81,0x00,0xB0,0x01,
+  0x83,0x00,0x00,0x00,0x65,0xFA,0x1D,0x00,0xF5,0x03,0xC3,0x00,
+  0xA5,0x00,0xA0,0x03,0x83,0x00,0x80,0x05,0x81,0x00,0xA0,0x03,
+  0xA0,0x05,0xC3,0x00,0x00,0xFA,0x1D,0x00
+};
+const GuiConst_INT8U Ch000186[60] =
+{
+  0,3,2,2,3,  6,5,3,2,3,
+  0,7,
+  5,11,
+  0x00,0x00,
+  0xF5,0xFF,0xFF,0x05,0x00,0x00,0xD3,0x01,0x00,0x00,0x5A,0x00,
+  0x00,0x30,0x0C,0x00,0x00,0xA0,0x05,0x00,0x00,0xB1,0x00,0x00,
+  0x00,0x85,0x00,0x00,0x00,0x5A,0x00,0x00,0x00,0x1B,0x00,0x00,
+  0x10,0x0B,0x00,0x00,0x10,0x08,0x00,0x00
+};
+const GuiConst_INT8U Ch000187[52] =
+{
+  1,1,0,1,3,  5,5,5,5,3,
+  0,7,
+  5,11,
+  0x08,0x01,
+  0x00,0xFC,0x0C,0x00,0xA0,0x05,0x85,0x00,0xA0,0x00,0xB1,0x00,
+  0xA0,0x05,0xA5,0x00,0x00,0xFA,0x0A,0x00,0xC1,0x01,0xC3,0x00,
+  0x85,0x00,0x80,0x03,0xD1,0x03,0xD3,0x01,0x10,0xFD,0x1D,0x00
+};
+const GuiConst_INT8U Ch000188[60] =
+{
+  1,0,1,1,3,  5,6,6,5,3,
+  0,7,
+  5,11,
+  0x00,0x00,
+  0x10,0xFD,0x0A,0x00,0xC0,0x05,0x83,0x00,0xA3,0x00,0x80,0x01,
+  0x85,0x00,0x80,0x03,0xA3,0x00,0xA0,0x05,0xC0,0x03,0xF3,0x05,
+  0x10,0xFD,0x88,0x03,0x00,0x00,0x80,0x03,0xB1,0x00,0xA0,0x00,
+  0xC0,0x03,0x85,0x00,0x10,0xFD,0x0A,0x00
+};
+const GuiConst_INT8U Ch000189[18] =
+{
+  1,1,1,1,1,  1,1,1,1,1,
+  1,1,
+  8,8,
+  0x7C,
+  0x0A,0x00,0x0A
+};
+const GuiConst_INT8U Ch000190[60] =
+{
+  4,3,2,1,3,  5,5,6,7,4,
+  0,8,
+  5,11,
+  0x00,0x00,
+  0x00,0x00,0x3A,0x00,0x00,0x10,0x8D,0x00,0x00,0x50,0x74,0x00,
+  0x00,0x80,0x82,0x01,0x00,0x81,0x80,0x03,0x00,0x35,0x30,0x08,
+  0x00,0x07,0x10,0x0B,0x10,0xFD,0xFF,0x1D,0x50,0x05,0x00,0x58,
+  0x80,0x01,0x00,0x85,0x81,0x00,0x00,0xC3
+};
+const GuiConst_INT8U Ch000191[52] =
+{
+  1,1,1,1,3,  6,6,6,6,4,
+  0,8,
+  5,11,
+  0x08,0x01,
+  0xD1,0xFF,0xCF,0x00,0xB1,0x00,0x50,0x0A,0xB1,0x00,0x00,0x0A,
+  0xB1,0x00,0x50,0x08,0xD1,0xFF,0xAF,0x00,0xB1,0x00,0x30,0x0C,
+  0xB1,0x00,0x00,0x3A,0xB1,0x00,0x10,0x0B,0xD1,0xFF,0xFF,0x03
+};
+const GuiConst_INT8U Ch000192[66] =
+{
+  2,1,1,2,4,  7,7,7,7,4,
+  0,9,
+  5,11,
+  0x20,0x00,
+  0x00,0xC0,0xFF,0x08,0x00,0x10,0x1C,0x00,0x88,0x00,0xA0,0x03,
+  0x00,0xB0,0x01,0xB1,0x00,0x00,0x00,0x00,0xA3,0x00,0x00,0x00,
+  0x00,0x81,0x00,0x00,0x00,0x00,0xA0,0x00,0x00,0x80,0x03,0x80,
+  0x03,0x00,0xA0,0x00,0x10,0x1C,0x00,0x5A,0x00,0x00,0xD1,0xFF,
+  0x05,0x00
+};
+const GuiConst_INT8U Ch000193[52] =
+{
+  1,1,1,1,4,  6,7,7,6,5,
+  1,8,
+  5,11,
+  0x60,0x00,
+  0xFC,0xFF,0x3F,0x00,0x0A,0x00,0xC0,0x03,0x0A,0x00,0x30,0x0A,
+  0x0A,0x00,0x00,0x1B,0x0A,0x00,0x00,0x3A,0x0A,0x00,0x00,0x1B,
+  0x0A,0x00,0x30,0x0A,0x0A,0x00,0xC0,0x03,0xFC,0xFF,0x3F,0x00
+};
+const GuiConst_INT8U Ch000194[36] =
+{
+  1,1,1,1,3,  6,5,6,7,4,
+  0,8,
+  5,11,
+  0x9C,0x03,
+  0xD1,0xFF,0xFF,0x3F,0xB1,0x00,0x00,0x00,0xD1,0xFF,0xFF,0x0C,
+  0xB1,0x00,0x00,0x00,0xD1,0xFF,0xFF,0x5F
+};
+const GuiConst_INT8U Ch000195[28] =
+{
+  1,1,1,1,3,  6,4,5,1,4,
+  1,6,
+  5,11,
+  0x9C,0x07,
+  0xFC,0xFF,0xCF,0x1B,0x00,0x00,0xFC,0xFF,0x3F,0x1B,0x00,0x00
+};
+const GuiConst_INT8U Ch000196[31] =
+{
+  1,1,1,1,2,  1,5,5,5,3,
+  0,6,
+  5,11,
+  0x86,0x07,
+  0xB1,0x00,0x00,0xB1,0xF4,0x3F,0xD1,0x3F,0xA3,0xD1,0x03,0xA0,
+  0xB1,0x00,0xA0
+};
+const GuiConst_INT8U Ch000197[26] =
+{
+  0,0,0,0,0,  17,17,17,17,17,
+  0,18,
+  0,20,
+  0xFE,0xFF,0x0F,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
+};
+const GuiConst_INT8U Ch000198[16] =
+{
+  0,0,0,0,0,  3,3,3,3,3,
+  0,4,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000199[18] =
+{
+  4,2,1,4,4,  5,7,8,5,5,
+  1,8,
+  7,8,
+  0xD6,
+  0x18,0xFF,0x18
+};
+const GuiConst_INT8U Ch000200[19] =
+{
+  3,3,2,2,3,  4,4,5,4,4,
+  2,4,
+  13,5,
+  0x04,
+  0x60,0xF0,0x60,0xC0
+};
+const GuiConst_INT8U Ch000201[16] =
+{
+  4,1,1,4,4,  5,8,8,5,5,
+  1,8,
+  10,2,
+  0x02,
+  0xFF
+};
+const GuiConst_INT8U Ch000202[18] =
+{
+  3,3,3,2,3,  4,4,4,5,4,
+  2,4,
+  13,4,
+  0x04,
+  0x60,0xF0,0x60
+};
+const GuiConst_INT8U Ch000203[34] =
+{
+  2,0,0,2,4,  6,8,8,6,4,
+  0,9,
+  4,13,
+  0xE0,0x01,
+  0x3E,0x00,0x7F,0x00,0x63,0x00,0xE3,0x80,0xC1,0x80,0xE3,0x80,
+  0x63,0x00,0x7F,0x00,0x3E,0x00
+};
+const GuiConst_INT8U Ch000204[22] =
+{
+  3,1,4,4,3,  5,5,5,5,3,
+  1,5,
+  4,13,
+  0xC0,0x1F,
+  0x18,0x38,0x78,0xF8,0xD8,0x18
+};
+const GuiConst_INT8U Ch000205[38] =
+{
+  1,0,1,0,4,  7,8,7,8,4,
+  0,9,
+  4,13,
+  0x10,0x10,
+  0x3E,0x00,0x7F,0x00,0xE3,0x80,0x01,0x80,0x03,0x80,0x0F,0x00,
+  0x3E,0x00,0x78,0x00,0xE0,0x00,0xC0,0x00,0xFF,0x80
+};
+const GuiConst_INT8U Ch000206[40] =
+{
+  1,0,1,1,4,  7,8,8,7,4,
+  0,9,
+  4,13,
+  0x40,0x00,
+  0x3E,0x00,0x7F,0x00,0xE3,0x80,0xC1,0x80,0x03,0x80,0x0F,0x00,
+  0x03,0x80,0x01,0x80,0xC1,0x80,0xE3,0x80,0x7F,0x00,0x3E,0x00
+};
+const GuiConst_INT8U Ch000207[36] =
+{
+  3,1,0,5,4,  6,6,8,6,4,
+  0,9,
+  4,13,
+  0x00,0x1A,
+  0x0E,0x00,0x1E,0x00,0x3E,0x00,0x36,0x00,0x76,0x00,0x66,0x00,
+  0xE6,0x00,0xC6,0x00,0xFF,0x80,0x06,0x00
+};
+const GuiConst_INT8U Ch000208[36] =
+{
+  0,0,0,1,4,  8,6,8,7,4,
+  0,9,
+  4,13,
+  0x0A,0x01,
+  0xFF,0x80,0xC0,0x00,0xDE,0x00,0xFF,0x00,0xE3,0x80,0x01,0x80,
+  0xC1,0x80,0xE3,0x80,0x7F,0x00,0x3E,0x00
+};
+const GuiConst_INT8U Ch000209[38] =
+{
+  2,0,0,1,4,  7,6,8,7,4,
+  0,9,
+  4,13,
+  0x00,0x03,
+  0x1F,0x00,0x3F,0x00,0x70,0x00,0xE0,0x00,0xDE,0x00,0xFF,0x00,
+  0xE3,0x80,0xC1,0x80,0xE3,0x80,0x7F,0x00,0x3E,0x00
+};
+const GuiConst_INT8U Ch000210[40] =
+{
+  0,4,4,2,4,  8,8,6,5,4,
+  0,9,
+  4,13,
+  0x02,0x00,
+  0xFF,0x80,0x01,0x80,0x03,0x80,0x03,0x00,0x07,0x00,0x06,0x00,
+  0x0E,0x00,0x0C,0x00,0x1C,0x00,0x18,0x00,0x38,0x00,0x30,0x00
+};
+const GuiConst_INT8U Ch000211[42] =
+{
+  1,0,0,1,4,  7,8,8,7,4,
+  0,9,
+  4,13,
+  0x00,0x00,
+  0x3E,0x00,0x7F,0x00,0xE3,0x80,0xC1,0x80,0xE3,0x80,0x7F,0x00,
+  0x3E,0x00,0x7F,0x00,0xE3,0x80,0xC1,0x80,0xE3,0x80,0x7F,0x00,
+  0x3E,0x00
+};
+const GuiConst_INT8U Ch000212[38] =
+{
+  1,0,0,1,4,  7,8,8,6,4,
+  0,9,
+  4,13,
+  0x30,0x00,
+  0x3E,0x00,0x7F,0x00,0xE3,0x80,0xC1,0x80,0xE3,0x80,0x7F,0x80,
+  0x3D,0x80,0x03,0x80,0x07,0x00,0x7E,0x00,0x7C,0x00
+};
+const GuiConst_INT8U Ch000213[23] =
+{
+  3,2,3,2,3,  4,5,4,5,4,
+  2,4,
+  6,11,
+  0x64,0x02,
+  0x60,0xF0,0x60,0x00,0x60,0xF0,0x60
+};
+const GuiConst_INT8U Ch000214[32] =
+{
+  2,2,1,0,4,  6,6,7,8,4,
+  0,9,
+  4,13,
+  0x26,0x18,
+  0x1C,0x00,0x3E,0x00,0x36,0x00,0x77,0x00,0x63,0x00,0x7F,0x00,
+  0xFF,0x80,0xC1,0x80
+};
+const GuiConst_INT8U Ch000215[38] =
+{
+  0,0,0,0,4,  7,8,8,7,4,
+  0,9,
+  4,13,
+  0x40,0x02,
+  0xFE,0x00,0xFF,0x00,0xC3,0x80,0xC1,0x80,0xC3,0x80,0xFF,0x00,
+  0xC3,0x80,0xC1,0x80,0xC3,0x80,0xFF,0x00,0xFE,0x00
+};
+const GuiConst_INT8U Ch000216[34] =
+{
+  1,0,0,1,4,  7,8,8,7,4,
+  0,9,
+  4,13,
+  0xE0,0x01,
+  0x3E,0x00,0x7F,0x00,0xE3,0x80,0xC1,0x80,0xC0,0x00,0xC1,0x80,
+  0xE3,0x80,0x7F,0x00,0x3E,0x00
+};
+const GuiConst_INT8U Ch000217[30] =
+{
+  0,0,0,0,4,  7,8,8,7,4,
+  0,9,
+  4,13,
+  0xF0,0x03,
+  0xFE,0x00,0xFF,0x00,0xC3,0x80,0xC1,0x80,0xC3,0x80,0xFF,0x00,
+  0xFE,0x00
+};
+const GuiConst_INT8U Ch000218[26] =
+{
+  0,0,0,0,4,  8,6,6,8,4,
+  0,9,
+  4,13,
+  0x5A,0x17,
+  0xFF,0x80,0xC0,0x00,0xFE,0x00,0xC0,0x00,0xFF,0x80
+};
+const GuiConst_INT8U Ch000219[24] =
+{
+  0,0,0,0,4,  8,6,6,1,4,
+  0,9,
+  4,13,
+  0x5A,0x1F,
+  0xFF,0x80,0xC0,0x00,0xFE,0x00,0xC0,0x00
+};
+const GuiConst_INT8U Ch000220[21] =
+{
+  0,0,0,0,3,  1,6,7,7,4,
+  0,8,
+  4,13,
+  0x86,0x1F,
+  0xC0,0xDC,0xFE,0xE7,0xC3
+};
+const GuiConst_INT8U Ch000221[19] =
+{
+  0,0,0,0,0,  10,10,10,10,10,
+  0,11,
+  0,21,
+  0xFE,0xFF,0x1F,
+  0xFF,0xE0
+};
+const GuiConst_INT8U Ch000222[17] =
+{
+  0,0,0,0,0,  3,3,3,3,3,
+  0,4,
+  0,0,
+  0x00,
+  0x00,0x00
+};
+const GuiConst_INT8U Ch000223[34] =
+{
+  5,2,0,5,5,  6,9,11,6,6,
+  0,12,
+  10,10,
+  0xAE,0x03,
+  0x00,0x00,0xF0,0x0F,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+  0x00,0x00,0xF0,0x0F,0x00,0x00
+};
+const GuiConst_INT8U Ch000224[23] =
+{
+  1,1,1,1,1,  1,1,1,2,1,
+  0,3,
+  21,5,
+  0x02,
+  0xF0,0x0F,0x00,0x0F,0x50,0x09,0x93,0x00
+};
+const GuiConst_INT8U Ch000225[18] =
+{
+  4,4,2,4,4,  4,4,6,4,4,
+  2,5,
+  16,2,
+  0x02,
+  0xFF,0xFF,0x0F
+};
+const GuiConst_INT8U Ch000226[16] =
+{
+  0,0,0,0,0,  1,1,1,1,1,
+  0,2,
+  21,2,
+  0x02,
+  0xFF
+};
+const GuiConst_INT8U Ch000227[82] =
+{
+  1,0,0,1,4,  7,8,8,7,4,
+  0,9,
+  6,17,
+  0x80,0x07,0x00,
+  0x00,0xB5,0xBF,0x05,0x00,0x50,0xFF,0xFF,0x5F,0x00,0xD0,0x5F,
+  0x50,0xDF,0x00,0xF5,0x07,0x00,0xF7,0x05,0xF8,0x04,0x00,0xF4,
+  0x08,0xF9,0x03,0x00,0xF3,0x09,0xFF,0x00,0x00,0xF0,0x0F,0xFA,
+  0x03,0x00,0xF3,0x09,0xF8,0x04,0x00,0xF4,0x08,0xF5,0x07,0x00,
+  0xF7,0x05,0xF3,0x5F,0x50,0xDF,0x00,0x50,0xFF,0xFF,0x5F,0x00,
+  0x00,0xB4,0xBF,0x05,0x00
+};
+const GuiConst_INT8U Ch000228[38] =
+{
+  5,2,5,5,4,  6,6,6,6,4,
+  2,5,
+  6,17,
+  0x80,0xFF,0x01,
+  0x00,0x60,0x0F,0x00,0xF3,0x0F,0x30,0xFD,0x0F,0xD4,0xFF,0x0F,
+  0xFF,0xF5,0x0F,0x39,0xF0,0x0F,0x00,0xF0,0x0F
+};
+const GuiConst_INT8U Ch000229[102] =
+{
+  1,0,3,0,4,  7,8,6,8,4,
+  0,9,
+  6,17,
+  0x00,0x00,0x00,
+  0x00,0xB6,0xDF,0x07,0x00,0xA0,0xFF,0xFF,0xAF,0x00,0xF5,0x3A,
+  0x30,0xFD,0x06,0xF9,0x04,0x00,0xF4,0x0B,0xFF,0x00,0x00,0xF0,
+  0x0F,0x00,0x00,0x00,0xF0,0x0F,0x00,0x00,0x00,0xF5,0x08,0x00,
+  0x00,0x00,0xFB,0x05,0x00,0x00,0x70,0x9F,0x00,0x00,0x00,0xF5,
+  0x0A,0x00,0x00,0x50,0xDF,0x03,0x00,0x00,0xF4,0x3D,0x00,0x00,
+  0x30,0xDD,0x03,0x00,0x00,0xA0,0x3D,0x00,0x00,0x00,0xF5,0x04,
+  0x00,0x00,0x00,0xFA,0xFF,0xFF,0xFF,0x0F,0xFF,0xFF,0xFF,0xFF,
+  0x0F
+};
+const GuiConst_INT8U Ch000230[102] =
+{
+  1,1,1,1,4,  7,8,8,7,4,
+  0,9,
+  6,17,
+  0x00,0x00,0x00,
+  0x00,0xB6,0xDF,0x07,0x00,0xA0,0xFF,0xFF,0xAF,0x00,0xF6,0x3A,
+  0x30,0xFA,0x07,0xFB,0x03,0x00,0xF3,0x0D,0x00,0x00,0x00,0xF0,
+  0x0F,0x00,0x00,0x00,0xF3,0x0A,0x00,0x00,0x50,0xFD,0x04,0x00,
+  0xF0,0xFF,0x4F,0x00,0x00,0xF0,0xFF,0xDF,0x00,0x00,0x30,0x40,
+  0xFD,0x07,0x00,0x00,0x00,0xF4,0x0B,0x00,0x00,0x00,0xF0,0x0F,
+  0xFF,0x00,0x00,0xF0,0x0F,0xF9,0x05,0x00,0xF5,0x09,0xF5,0x3D,
+  0x30,0xFD,0x05,0x80,0xFF,0xFF,0x7F,0x00,0x00,0xD6,0xBF,0x06,
+  0x00
+};
+const GuiConst_INT8U Ch000231[82] =
+{
+  5,2,0,6,4,  7,7,9,7,5,
+  0,10,
+  6,17,
+  0x00,0xD0,0x01,
+  0x00,0x00,0x60,0xFF,0x00,0x00,0x00,0xD3,0xFF,0x00,0x00,0x00,
+  0xF7,0xFF,0x00,0x00,0x30,0xBF,0xFF,0x00,0x00,0x70,0x5F,0xFF,
+  0x00,0x00,0xF3,0x0B,0xFF,0x00,0x00,0xF7,0x05,0xFF,0x00,0x30,
+  0xBF,0x00,0xFF,0x00,0x90,0x4F,0x00,0xFF,0x00,0xF3,0x09,0x00,
+  0xFF,0x00,0xF9,0x03,0x00,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,
+  0x00,0x00,0x00,0xFF,0x00
+};
+const GuiConst_INT8U Ch000232[92] =
+{
+  1,0,1,1,4,  7,7,8,7,4,
+  0,9,
+  6,17,
+  0x10,0x08,0x00,
+  0xF0,0xFF,0xFF,0xFF,0x00,0xF3,0xFF,0xFF,0xFF,0x00,0xF3,0x09,
+  0x00,0x00,0x00,0xF6,0x06,0x00,0x00,0x00,0xF8,0x87,0xDF,0x06,
+  0x00,0xF9,0xFF,0xFF,0x8F,0x00,0xFD,0x3A,0x50,0xFD,0x05,0x64,
+  0x00,0x00,0xF6,0x08,0x00,0x00,0x00,0xF3,0x0D,0x00,0x00,0x00,
+  0xF0,0x0F,0xFF,0x00,0x00,0xF3,0x0A,0xF9,0x05,0x00,0xF6,0x06,
+  0xF5,0x3D,0x50,0xFF,0x03,0x90,0xFF,0xFF,0x6F,0x00,0x00,0xD6,
+  0xBF,0x05,0x00
+};
+const GuiConst_INT8U Ch000233[102] =
+{
+  2,0,0,1,4,  7,7,8,7,4,
+  0,9,
+  6,17,
+  0x00,0x00,0x00,
+  0x00,0x83,0xFF,0x38,0x00,0x30,0xFD,0xFF,0xDF,0x03,0xB0,0x5F,
+  0x30,0xFA,0x07,0xF4,0x07,0x00,0xF3,0x0D,0xF6,0x03,0x00,0x00,
+  0x00,0xF9,0x00,0x00,0x00,0x00,0x9D,0x60,0xFD,0x07,0x00,0x9F,
+  0xF9,0xFF,0xAF,0x00,0xFF,0x3D,0x30,0xFD,0x05,0xFF,0x05,0x00,
+  0xF5,0x09,0xFF,0x00,0x00,0xF0,0x0F,0xFA,0x00,0x00,0xF0,0x0F,
+  0xF8,0x03,0x00,0xF0,0x0D,0xF5,0x06,0x00,0xF5,0x08,0xD0,0x5F,
+  0x30,0xFD,0x05,0x50,0xFF,0xFF,0x9F,0x00,0x00,0xA4,0xDF,0x06,
+  0x00
+};
+const GuiConst_INT8U Ch000234[102] =
+{
+  0,4,3,2,4,  8,6,5,3,4,
+  0,9,
+  6,17,
+  0x00,0x00,0x00,
+  0xFF,0xFF,0xFF,0xFF,0x0F,0xFF,0xFF,0xFF,0xFF,0x0D,0x00,0x00,
+  0x00,0xF4,0x05,0x00,0x00,0x00,0xBD,0x00,0x00,0x00,0x60,0x4F,
+  0x00,0x00,0x00,0xD0,0x0B,0x00,0x00,0x00,0xF6,0x05,0x00,0x00,
+  0x00,0xFB,0x00,0x00,0x00,0x40,0x8F,0x00,0x00,0x00,0x70,0x5F,
+  0x00,0x00,0x00,0xD0,0x0F,0x00,0x00,0x00,0xF3,0x0A,0x00,0x00,
+  0x00,0xF5,0x06,0x00,0x00,0x00,0xF7,0x05,0x00,0x00,0x00,0xF9,
+  0x03,0x00,0x00,0x00,0xFD,0x03,0x00,0x00,0x00,0xFF,0x00,0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000235[97] =
+{
+  1,0,0,1,4,  7,8,8,7,4,
+  0,9,
+  6,17,
+  0x00,0x10,0x00,
+  0x00,0xD7,0xDF,0x07,0x00,0xA0,0xFF,0xFF,0xAF,0x00,0xF7,0x3A,
+  0x30,0xFA,0x07,0xFD,0x03,0x00,0xF3,0x0D,0xFF,0x00,0x00,0xF0,
+  0x0F,0xFB,0x03,0x00,0xF3,0x0B,0xF6,0x3A,0x30,0xFA,0x06,0x60,
+  0xFD,0xFF,0x6D,0x00,0x60,0xFF,0xFF,0x6F,0x00,0xF6,0x3D,0x30,
+  0xFD,0x05,0xFA,0x04,0x00,0xF4,0x0A,0xFF,0x00,0x00,0xF0,0x0F,
+  0xFA,0x04,0x00,0xF4,0x0B,0xF6,0x3D,0x30,0xFD,0x06,0xA0,0xFF,
+  0xFF,0xAF,0x00,0x00,0xB6,0xBF,0x06,0x00
+};
+const GuiConst_INT8U Ch000236[102] =
+{
+  1,0,1,1,4,  7,8,8,6,4,
+  0,9,
+  6,17,
+  0x00,0x00,0x00,
+  0x00,0xD6,0xAF,0x04,0x00,0x90,0xFF,0xFF,0x5F,0x00,0xF5,0x5F,
+  0x30,0xDD,0x00,0xF9,0x06,0x00,0xF5,0x05,0xFF,0x03,0x00,0xF0,
+  0x09,0xFF,0x00,0x00,0xF0,0x0B,0xFF,0x00,0x00,0xF0,0x0F,0xF9,
+  0x05,0x00,0xF5,0x0F,0xF5,0x3D,0x30,0xDD,0x0F,0xA0,0xFF,0xFF,
+  0x97,0x0F,0x00,0xF7,0x6D,0xB0,0x0D,0x00,0x00,0x00,0xF0,0x09,
+  0x00,0x00,0x00,0xF4,0x06,0xFD,0x03,0x00,0xF9,0x04,0xF7,0x09,
+  0x50,0xBF,0x00,0xD3,0xFF,0xFF,0x3D,0x00,0x30,0xF8,0x8F,0x03,
+  0x00
+};
+const GuiConst_INT8U Ch000237[19] =
+{
+  0,0,0,0,0,  1,1,1,1,1,
+  0,2,
+  11,12,
+  0xFA,0x0B,
+  0xFF,0x00,0xFF
+};
+const GuiConst_INT8U Ch000238[136] =
+{
+  4,3,1,0,6,  8,9,11,12,6,
+  0,13,
+  6,17,
+  0x00,0x00,0x00,
+  0x00,0x00,0xF3,0xFF,0x03,0x00,0x00,0x00,0x00,0xF5,0xFF,0x05,
+  0x00,0x00,0x00,0x00,0xF8,0xF8,0x08,0x00,0x00,0x00,0x00,0xFF,
+  0xF3,0x0F,0x00,0x00,0x00,0x40,0xBF,0x90,0x4F,0x00,0x00,0x00,
+  0x70,0x6F,0x50,0x7F,0x00,0x00,0x00,0xB0,0x3F,0x30,0xBF,0x00,
+  0x00,0x00,0xF3,0x0B,0x00,0xFB,0x03,0x00,0x00,0xF6,0x06,0x00,
+  0xF6,0x06,0x00,0x00,0xFA,0x03,0x00,0xF3,0x0A,0x00,0x00,0xFF,
+  0xFF,0xFF,0xFF,0x0F,0x00,0x50,0xFF,0xFF,0xFF,0xFF,0x5F,0x00,
+  0x80,0x4F,0x00,0x00,0x40,0x8F,0x00,0xD0,0x0F,0x00,0x00,0x00,
+  0xDF,0x00,0xF3,0x09,0x00,0x00,0x00,0xF9,0x03,0xF6,0x05,0x00,
+  0x00,0x00,0xF5,0x06,0xFB,0x03,0x00,0x00,0x00,0xF3,0x0B
+};
+const GuiConst_INT8U Ch000239[113] =
+{
+  0,0,0,0,5,  8,9,10,9,5,
+  0,11,
+  6,17,
+  0x00,0x10,0x00,
+  0xFF,0xFF,0xFF,0x8D,0x03,0x00,0xFF,0xFF,0xFF,0xFF,0x3D,0x00,
+  0xFF,0x00,0x00,0xA3,0x8F,0x00,0xFF,0x00,0x00,0x30,0xFF,0x00,
+  0xFF,0x00,0x00,0x00,0xFF,0x00,0xFF,0x00,0x00,0x30,0x8F,0x00,
+  0xFF,0x00,0x00,0xA3,0x3D,0x00,0xFF,0xFF,0xFF,0xFF,0x05,0x00,
+  0xFF,0xFF,0xFF,0xFF,0x7F,0x00,0xFF,0x00,0x00,0x40,0xFD,0x05,
+  0xFF,0x00,0x00,0x00,0xF4,0x0A,0xFF,0x00,0x00,0x00,0xF0,0x0F,
+  0xFF,0x00,0x00,0x00,0xF4,0x0A,0xFF,0x00,0x00,0x40,0xFD,0x05,
+  0xFF,0xFF,0xFF,0xFF,0x9F,0x00,0xFF,0xFF,0xFF,0xAF,0x06,0x00
+};
+const GuiConst_INT8U Ch000240[107] =
+{
+  2,0,0,2,5,  9,11,10,9,6,
+  0,12,
+  6,17,
+  0x00,0x03,0x00,
+  0x00,0x30,0xD7,0xDF,0x37,0x00,0x00,0xF5,0xFF,0xFF,0xDF,0x03,
+  0x50,0xDF,0x06,0x30,0xFA,0x0D,0xD0,0x4F,0x00,0x00,0xD0,0x6F,
+  0xF5,0x09,0x00,0x00,0x50,0xBF,0xF8,0x04,0x00,0x00,0x30,0x39,
+  0xFB,0x03,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,
+  0xFB,0x03,0x00,0x00,0x00,0x00,0xF8,0x05,0x00,0x00,0x30,0x39,
+  0xF5,0x08,0x00,0x00,0x50,0xBF,0xD0,0x3F,0x00,0x00,0xB0,0x6F,
+  0x50,0xDF,0x05,0x30,0xFA,0x0D,0x00,0xF7,0xFF,0xFF,0xDF,0x03,
+  0x00,0x50,0xF9,0xBF,0x37,0x00
+};
+const GuiConst_INT8U Ch000241[107] =
+{
+  0,0,0,0,5,  9,11,11,9,6,
+  0,12,
+  6,17,
+  0x00,0x03,0x00,
+  0xFF,0xFF,0xFF,0x9F,0x05,0x00,0xFF,0xFF,0xFF,0xFF,0x9F,0x00,
+  0xFF,0x00,0x00,0x50,0xFD,0x06,0xFF,0x00,0x00,0x00,0xF3,0x3F,
+  0xFF,0x00,0x00,0x00,0x70,0x5F,0xFF,0x00,0x00,0x00,0x40,0x9F,
+  0xFF,0x00,0x00,0x00,0x30,0xDF,0xFF,0x00,0x00,0x00,0x00,0xFF,
+  0xFF,0x00,0x00,0x00,0x30,0xBF,0xFF,0x00,0x00,0x00,0x50,0x8F,
+  0xFF,0x00,0x00,0x00,0x70,0x5F,0xFF,0x00,0x00,0x00,0xF3,0x0D,
+  0xFF,0x00,0x00,0x53,0xFD,0x06,0xFF,0xFF,0xFF,0xFF,0x7F,0x00,
+  0xFF,0xFF,0xFF,0x8D,0x05,0x00
+};
+const GuiConst_INT8U Ch000242[42] =
+{
+  0,0,0,0,4,  9,7,7,9,5,
+  0,10,
+  6,17,
+  0x7A,0x7D,0x01,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0xFF,0xFF,
+  0xFF,0xFF,0x0F,0xFF,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,
+  0xFF
+};
+const GuiConst_INT8U Ch000243[37] =
+{
+  0,0,0,0,4,  9,7,7,1,5,
+  0,10,
+  6,17,
+  0x7A,0xFD,0x01,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0xFF,0xFF,
+  0xFF,0xFF,0x0F,0xFF,0x00,0x00,0x00,0x00
+};
+const GuiConst_INT8U Ch000244[47] =
+{
+  0,0,0,0,4,  1,8,8,8,4,
+  0,9,
+  6,17,
+  0x1E,0xFC,0x01,
+  0xFF,0x00,0x00,0x00,0x00,0xFF,0x60,0xFD,0x5B,0x00,0xFF,0xF7,
+  0xFF,0xFF,0x05,0xFF,0x5D,0x30,0xF9,0x09,0xFF,0x05,0x00,0xF3,
+  0x0F,0xFF,0x00,0x00,0xF0,0x0F
+};
+const GuiConst_INT8U Ch000245[30] =
+{
+  0,0,0,0,0,  23,23,23,23,23,
+  0,24,
+  0,29,
+  0xFE,0xFF,0xFF,0x1F,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
+};
+const GuiConst_INT8U Ch000246[16] =
+{
+  0,0,0,0,0,  5,5,5,5,5,
+  0,6,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000247[22] =
+{
+  7,1,1,7,7,  7,13,13,7,7,
+  1,13,
+  8,13,
+  0xDE,0x1E,
+  0x07,0x00,0xFF,0xF8,0x07,0x00
+};
+const GuiConst_INT8U Ch000248[21] =
+{
+  6,6,6,4,6,  6,6,6,8,6,
+  4,5,
+  20,7,
+  0x04,
+  0x70,0xF8,0x78,0x38,0x70,0x60
+};
+const GuiConst_INT8U Ch000249[17] =
+{
+  6,1,1,6,6,  6,13,13,6,6,
+  1,13,
+  13,3,
+  0x06,
+  0xFF,0xF8
+};
+const GuiConst_INT8U Ch000250[18] =
+{
+  6,6,6,4,6,  6,6,6,8,6,
+  4,5,
+  20,4,
+  0x04,
+  0x70,0xF8,0x70
+};
+const GuiConst_INT8U Ch000251[39] =
+{
+  3,0,0,3,6,  10,13,13,10,7,
+  0,14,
+  5,19,
+  0xA0,0x5F,0x00,
+  0x0F,0xC0,0x1F,0xE0,0x3F,0xF0,0x78,0x78,0x70,0x38,0xE0,0x1C,
+  0x70,0x38,0x78,0x78,0x3F,0xF0,0x1F,0xE0,0x0F,0xC0
+};
+const GuiConst_INT8U Ch000252[24] =
+{
+  5,2,6,6,5,  8,8,8,8,5,
+  2,7,
+  5,19,
+  0x80,0xFF,0x07,
+  0x0E,0x1E,0x3E,0x7E,0xFE,0xEE,0x0E
+};
+const GuiConst_INT8U Ch000253[49] =
+{
+  2,0,1,0,6,  11,13,10,13,7,
+  0,14,
+  5,19,
+  0x00,0x80,0x06,
+  0x0F,0xC0,0x3F,0xF0,0x7F,0xF8,0x78,0x78,0xF0,0x3C,0xE0,0x1C,
+  0x00,0x3C,0x00,0x7C,0x01,0xF8,0x07,0xE0,0x1F,0x80,0x3E,0x00,
+  0x78,0x00,0xF0,0x00,0xE0,0x00,0xFF,0xFC
+};
+const GuiConst_INT8U Ch000254[51] =
+{
+  2,0,0,2,6,  11,13,13,11,7,
+  0,14,
+  5,19,
+  0x20,0x40,0x00,
+  0x0F,0xC0,0x3F,0xF0,0x7F,0xF8,0x70,0x38,0xE0,0x1C,0x00,0x1C,
+  0x00,0x3C,0x01,0xF8,0x01,0xF0,0x01,0xF8,0x00,0x3C,0x00,0x1C,
+  0xE0,0x1C,0x70,0x38,0x7F,0xF8,0x3F,0xF0,0x0F,0xC0
+};
+const GuiConst_INT8U Ch000255[41] =
+{
+  6,3,0,8,6,  10,10,13,10,7,
+  0,14,
+  5,19,
+  0x0A,0x60,0x07,
+  0x03,0xE0,0x07,0xE0,0x0F,0xE0,0x0E,0xE0,0x1E,0xE0,0x1C,0xE0,
+  0x3C,0xE0,0x38,0xE0,0x78,0xE0,0x70,0xE0,0xFF,0xFC,0x00,0xE0
+};
+const GuiConst_INT8U Ch000256[43] =
+{
+  0,0,0,2,6,  12,11,13,11,7,
+  0,14,
+  5,19,
+  0x16,0x58,0x00,
+  0xFF,0xF8,0xE0,0x00,0xE7,0xC0,0xFF,0xF0,0xFF,0xF8,0xF8,0x38,
+  0xE0,0x1C,0x00,0x1C,0xE0,0x1C,0x70,0x38,0x7F,0xF8,0x3F,0xF0,
+  0x0F,0xC0
+};
+const GuiConst_INT8U Ch000257[49] =
+{
+  4,0,0,2,6,  11,9,13,11,7,
+  0,14,
+  5,19,
+  0x00,0x70,0x00,
+  0x03,0xF0,0x0F,0xF0,0x1F,0xF0,0x3C,0x00,0x78,0x00,0x70,0x00,
+  0xE0,0x00,0xEF,0xC0,0xFF,0xF0,0xFF,0xF8,0xF0,0x38,0xE0,0x1C,
+  0x70,0x38,0x7F,0xF8,0x3F,0xF0,0x0F,0xC0
+};
+const GuiConst_INT8U Ch000258[51] =
+{
+  0,9,6,3,6,  13,12,9,6,7,
+  0,14,
+  5,19,
+  0x06,0x00,0x00,
+  0xFF,0xFC,0x00,0x3C,0x00,0x38,0x00,0x78,0x00,0x70,0x00,0xF0,
+  0x00,0xE0,0x01,0xE0,0x01,0xC0,0x03,0xC0,0x03,0x80,0x07,0x80,
+  0x07,0x00,0x0F,0x00,0x0E,0x00,0x1E,0x00,0x1C,0x00
+};
+const GuiConst_INT8U Ch000259[47] =
+{
+  2,0,0,2,6,  11,13,13,11,7,
+  0,14,
+  5,19,
+  0x60,0x60,0x00,
+  0x0F,0xC0,0x3F,0xF0,0x7F,0xF8,0x70,0x38,0xE0,0x1C,0x70,0x38,
+  0x7F,0xF0,0x3F,0xF0,0x7F,0xF8,0x70,0x3C,0xE0,0x1C,0x70,0x38,
+  0x7F,0xF8,0x3F,0xF0,0x0F,0xC0
+};
+const GuiConst_INT8U Ch000260[49] =
+{
+  2,0,2,2,6,  11,13,13,9,7,
+  0,14,
+  5,19,
+  0xE0,0x00,0x00,
+  0x0F,0xC0,0x3F,0xF0,0x7F,0xF8,0x70,0x38,0xE0,0x1C,0x70,0x3C,
+  0x7F,0xFC,0x3F,0xFC,0x0F,0xDC,0x00,0x1C,0x00,0x38,0x00,0x78,
+  0x00,0xF0,0x3F,0xE0,0x3F,0xC0,0x3F,0x00
+};
+const GuiConst_INT8U Ch000261[23] =
+{
+  6,4,6,4,6,  6,8,6,8,6,
+  4,5,
+  10,14,
+  0xE4,0x13,
+  0x70,0xF8,0x70,0x00,0x70,0xF8,0x70
+};
+const GuiConst_INT8U Ch000262[37] =
+{
+  4,4,2,0,6,  9,9,11,13,7,
+  0,14,
+  5,19,
+  0x6C,0xD2,0x04,
+  0x03,0x00,0x07,0x80,0x0F,0xC0,0x1F,0xE0,0x1C,0xE0,0x3C,0xF0,
+  0x38,0x70,0x7F,0xF8,0xF0,0x3C,0xE0,0x1C
+};
+const GuiConst_INT8U Ch000263[53] =
+{
+  0,0,0,0,6,  11,13,13,11,7,
+  0,14,
+  5,19,
+  0x00,0x02,0x00,
+  0xFF,0xC0,0xFF,0xF0,0xFF,0xF8,0xE0,0x78,0xE0,0x3C,0xE0,0x1C,
+  0xE0,0x3C,0xE0,0x78,0xFF,0xF0,0xFF,0xF8,0xE0,0x78,0xE0,0x3C,
+  0xE0,0x1C,0xE0,0x3C,0xE0,0x78,0xFF,0xF8,0xFF,0xF0,0xFF,0xC0
+};
+const GuiConst_INT8U Ch000264[43] =
+{
+  2,0,0,2,6,  11,13,13,11,7,
+  0,14,
+  5,19,
+  0x80,0x1F,0x00,
+  0x0F,0xC0,0x3F,0xF0,0x7F,0xF8,0x78,0x78,0xF0,0x3C,0xE0,0x1C,
+  0xE0,0x00,0xE0,0x1C,0xF0,0x3C,0x78,0x78,0x7F,0xF8,0x3F,0xF0,
+  0x0F,0xC0
+};
+const GuiConst_INT8U Ch000265[39] =
+{
+  0,0,0,0,6,  11,13,13,11,7,
+  0,14,
+  5,19,
+  0xC0,0x3F,0x00,
+  0xFF,0xC0,0xFF,0xF0,0xFF,0xF8,0xE0,0x78,0xE0,0x3C,0xE0,0x1C,
+  0xE0,0x3C,0xE0,0x78,0xFF,0xF8,0xFF,0xF0,0xFF,0xC0
+};
+const GuiConst_INT8U Ch000266[27] =
+{
+  0,0,0,0,6,  13,9,9,13,7,
+  0,14,
+  5,19,
+  0xF6,0xF6,0x06,
+  0xFF,0xFC,0xE0,0x00,0xFF,0xC0,0xE0,0x00,0xFF,0xFC
+};
+const GuiConst_INT8U Ch000267[25] =
+{
+  0,0,0,0,6,  13,9,9,2,7,
+  0,14,
+  5,19,
+  0xF6,0xF6,0x07,
+  0xFF,0xFC,0xE0,0x00,0xFF,0xC0,0xE0,0x00
+};
+const GuiConst_INT8U Ch000268[31] =
+{
+  0,0,0,0,6,  2,10,12,12,6,
+  0,13,
+  5,19,
+  0x1E,0xF8,0x07,
+  0xE0,0x00,0xEF,0x80,0xFF,0xE0,0xFF,0xF0,0xF0,0xF0,0xE0,0x78,
+  0xE0,0x38
+};
+const GuiConst_INT8U Ch000269[21] =
+{
+  0,0,0,0,0,  16,16,16,16,16,
+  0,17,
+  0,31,
+  0xFE,0xFF,0xFF,0x7F,
+  0xFF,0xFF,0x80
+};
+const GuiConst_INT8U Ch000270[18] =
+{
+  0,0,0,0,0,  4,4,4,4,4,
+  0,5,
+  0,0,
+  0x00,
+  0x00,0x00,0x00
+};
+const GuiConst_INT8U Ch000271[37] =
+{
+  6,6,0,6,6,  7,7,13,7,7,
+  0,14,
+  14,12,
+  0x5E,0x0F,
+  0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,
+  0xFF,0xFF,0x00,0x00,0x00,0xFF,0x00,0x00,0x00
+};
+const GuiConst_INT8U Ch000272[25] =
+{
+  1,1,1,1,1,  1,1,1,2,2,
+  0,3,
+  28,7,
+  0x0A,
+  0xF0,0x0F,0x00,0x0F,0x60,0x0D,0xF3,0x06,0x82,0x00
+};
+const GuiConst_INT8U Ch000273[19] =
+{
+  5,5,2,5,5,  5,5,8,5,5,
+  2,7,
+  21,2,
+  0x02,
+  0xFF,0xFF,0xFF,0x0F
+};
+const GuiConst_INT8U Ch000274[16] =
+{
+  0,0,0,0,0,  1,1,1,1,1,
+  0,2,
+  28,2,
+  0x02,
+  0xFF
+};
+const GuiConst_INT8U Ch000275[150] =
+{
+  3,0,0,3,6,  9,12,12,9,6,
+  0,13,
+  7,23,
+  0x00,0x3C,0x00,
+  0x00,0x10,0xE8,0xEF,0x18,0x00,0x00,0x00,0xE4,0xFF,0xFF,0xFF,
+  0x04,0x00,0x00,0xFE,0x08,0x00,0xF9,0x0E,0x00,0x80,0x8F,0x00,
+  0x00,0x80,0x8F,0x00,0xF0,0x0E,0x00,0x00,0x00,0xFE,0x00,0xF4,
+  0x08,0x00,0x00,0x00,0xF8,0x04,0xF7,0x04,0x00,0x00,0x00,0xF4,
+  0x07,0xFA,0x02,0x00,0x00,0x00,0xF2,0x0A,0xFD,0x00,0x00,0x00,
+  0x00,0xF0,0x0D,0xFF,0x00,0x00,0x00,0x00,0xF0,0x0F,0xFD,0x00,
+  0x00,0x00,0x00,0xF0,0x0D,0xFA,0x02,0x00,0x00,0x00,0xF2,0x0A,
+  0xF8,0x04,0x00,0x00,0x00,0xF4,0x07,0xF5,0x08,0x00,0x00,0x00,
+  0xF8,0x04,0xF0,0x0E,0x00,0x00,0x00,0xFE,0x00,0xA0,0x8F,0x00,
+  0x00,0x80,0x8F,0x00,0x10,0xFE,0x09,0x00,0xF9,0x0E,0x00,0x00,
+  0xE4,0xFF,0xFF,0xFF,0x04,0x00,0x00,0x00,0xE8,0xEF,0x18,0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000276[53] =
+{
+  7,2,7,7,5,  8,8,8,8,5,
+  2,7,
+  7,23,
+  0x00,0xFE,0x7F,
+  0x00,0x00,0x60,0x0F,0x00,0x00,0xE0,0x0F,0x00,0x00,0xFC,0x0F,
+  0x00,0x90,0xFF,0x0F,0x00,0xFC,0xFF,0x0F,0xE3,0xFF,0xF4,0x0F,
+  0xFF,0x1A,0xF0,0x0F,0x4C,0x00,0xF0,0x0F,0x00,0x00,0xF0,0x0F
+};
+const GuiConst_INT8U Ch000277[178] =
+{
+  2,0,5,0,3,  10,12,9,12,9,
+  0,13,
+  7,23,
+  0x00,0x00,0x00,
+  0x00,0x20,0xE9,0xFF,0x5C,0x00,0x00,0x00,0xF8,0xFF,0xFF,0xFF,
+  0x0C,0x00,0x70,0xEF,0x06,0x00,0xD4,0xAF,0x00,0xF0,0x1E,0x00,
+  0x00,0x00,0xFD,0x04,0xF7,0x06,0x00,0x00,0x00,0xF3,0x09,0xFA,
+  0x00,0x00,0x00,0x00,0xF0,0x0F,0xFF,0x00,0x00,0x00,0x00,0xF0,
+  0x0F,0x00,0x00,0x00,0x00,0x00,0xF1,0x0E,0x00,0x00,0x00,0x00,
+  0x00,0xF6,0x09,0x00,0x00,0x00,0x00,0x00,0xFE,0x04,0x00,0x00,
+  0x00,0x00,0x90,0xDF,0x00,0x00,0x00,0x00,0x00,0xF5,0x2F,0x00,
+  0x00,0x00,0x00,0x40,0xFF,0x06,0x00,0x00,0x00,0x00,0xF4,0x8F,
+  0x00,0x00,0x00,0x00,0x40,0xFF,0x0A,0x00,0x00,0x00,0x00,0xF4,
+  0xCF,0x00,0x00,0x00,0x00,0x40,0xFF,0x0C,0x00,0x00,0x00,0x00,
+  0xF4,0xCF,0x00,0x00,0x00,0x00,0x20,0xFF,0x0C,0x00,0x00,0x00,
+  0x00,0xD0,0xDF,0x00,0x00,0x00,0x00,0x00,0xF4,0x2F,0x00,0x00,
+  0x00,0x00,0x00,0xFC,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0xFF,0xFF,
+  0xFF,0xFF,0xFF,0xFF,0x0F
+};
+const GuiConst_INT8U Ch000278[171] =
+{
+  2,0,2,2,6,  9,11,12,10,6,
+  0,13,
+  7,23,
+  0x00,0x00,0x01,
+  0x00,0x40,0xFC,0xDF,0x06,0x00,0x00,0x00,0xFC,0xFF,0xFF,0xEF,
+  0x01,0x00,0xA0,0xDF,0x04,0x10,0xFA,0x0E,0x00,0xF2,0x0D,0x00,
+  0x00,0xA0,0x7F,0x00,0xF8,0x04,0x00,0x00,0x10,0xDF,0x00,0xFE,
+  0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,
+  0x00,0x00,0x00,0x00,0x00,0x30,0xCF,0x00,0x00,0x00,0x00,0x00,
+  0xC0,0x4F,0x00,0x00,0x00,0x00,0x40,0xFD,0x0C,0x00,0x00,0x00,
+  0xF0,0xFF,0xEF,0x03,0x00,0x00,0x00,0xF0,0xFF,0xFF,0x7F,0x00,
+  0x00,0x00,0x10,0x00,0xD3,0xFF,0x02,0x00,0x00,0x00,0x00,0x00,
+  0xFD,0x08,0x00,0x00,0x00,0x00,0x00,0xF4,0x0D,0x00,0x00,0x00,
+  0x00,0x00,0xF0,0x0F,0xFF,0x00,0x00,0x00,0x00,0xF0,0x0D,0xF9,
+  0x06,0x00,0x00,0x00,0xF6,0x08,0xF4,0x1E,0x00,0x00,0x10,0xFE,
+  0x00,0xA0,0xEF,0x04,0x00,0xF6,0x6F,0x00,0x00,0xFA,0xFF,0xFF,
+  0xFF,0x06,0x00,0x00,0x40,0xFA,0xEF,0x28,0x00,0x00
+};
+const GuiConst_INT8U Ch000279[136] =
+{
+  7,4,0,8,6,  9,9,12,9,6,
+  0,13,
+  7,23,
+  0x00,0x00,0x7D,
+  0x00,0x00,0x00,0x00,0xFD,0x00,0x00,0x00,0x00,0x00,0x60,0xFF,
+  0x00,0x00,0x00,0x00,0x00,0xE0,0xFF,0x00,0x00,0x00,0x00,0x00,
+  0xF7,0xFF,0x00,0x00,0x00,0x00,0x00,0xEF,0xFF,0x00,0x00,0x00,
+  0x00,0xA0,0x6F,0xFF,0x00,0x00,0x00,0x00,0xF2,0x0D,0xFF,0x00,
+  0x00,0x00,0x00,0xFC,0x04,0xFF,0x00,0x00,0x00,0x40,0xAF,0x00,
+  0xFF,0x00,0x00,0x00,0xD0,0x2F,0x00,0xFF,0x00,0x00,0x00,0xF6,
+  0x09,0x00,0xFF,0x00,0x00,0x00,0xFE,0x00,0x00,0xFF,0x00,0x00,
+  0x80,0x7F,0x00,0x00,0xFF,0x00,0x00,0xF0,0x0E,0x00,0x00,0xFF,
+  0x00,0x00,0xFA,0x06,0x00,0x00,0xFF,0x00,0x00,0xFF,0xFF,0xFF,
+  0xFF,0xFF,0xFF,0x0F,0x00,0x00,0x00,0x00,0xFF,0x00,0x00
+};
+const GuiConst_INT8U Ch000280[164] =
+{
+  2,1,2,2,6,  11,9,12,9,6,
+  0,13,
+  7,23,
+  0x00,0xC0,0x00,
+  0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x20,0xFF,0xFF,0xFF,0xFF,
+  0xFF,0x00,0x50,0x7F,0x00,0x00,0x00,0x00,0x00,0x80,0x5F,0x00,
+  0x00,0x00,0x00,0x00,0xA0,0x2F,0x00,0x00,0x00,0x00,0x00,0xF0,
+  0x0F,0x00,0x00,0x00,0x00,0x00,0xF0,0x0E,0x00,0x00,0x00,0x00,
+  0x00,0xF2,0x4A,0xE9,0xEF,0x29,0x00,0x00,0xF6,0xFF,0xFF,0xFF,
+  0xFF,0x06,0x00,0xF8,0xDF,0x04,0x10,0xF8,0x5F,0x00,0xFC,0x0D,
+  0x00,0x00,0x40,0xFF,0x00,0xD9,0x02,0x00,0x00,0x00,0xFA,0x07,
+  0x00,0x00,0x00,0x00,0x00,0xF3,0x0A,0x00,0x00,0x00,0x00,0x00,
+  0xF0,0x0F,0x00,0x00,0x00,0x00,0x00,0xF1,0x0C,0xFF,0x00,0x00,
+  0x00,0x00,0xF4,0x08,0xF9,0x04,0x00,0x00,0x00,0xFD,0x03,0xF4,
+  0x0E,0x00,0x00,0x80,0xDF,0x00,0xC0,0xEF,0x04,0x10,0xF9,0x1F,
+  0x00,0x00,0xFC,0xFF,0xFF,0xEF,0x04,0x00,0x00,0x40,0xFA,0xDF,
+  0x08,0x00,0x00
+};
+const GuiConst_INT8U Ch000281[178] =
+{
+  3,0,0,3,6,  10,12,12,10,6,
+  0,13,
+  7,23,
+  0x00,0x00,0x00,
+  0x00,0x00,0xA4,0xFF,0x7D,0x00,0x00,0x00,0xA0,0xFF,0xFF,0xFF,
+  0x1E,0x00,0x00,0xFA,0x3C,0x00,0xD3,0xCF,0x00,0x50,0xAF,0x00,
+  0x00,0x00,0xFE,0x04,0xD0,0x0E,0x00,0x00,0x00,0xF5,0x09,0xF2,
+  0x07,0x00,0x00,0x00,0xF0,0x0E,0xF6,0x01,0x00,0x00,0x00,0x00,
+  0x00,0xF9,0x00,0x00,0x00,0x00,0x00,0x00,0xCA,0x00,0xD8,0xFF,
+  0x39,0x00,0x00,0xAF,0xE4,0xFF,0xFF,0xFF,0x08,0x00,0xDF,0xFF,
+  0x06,0x00,0xF6,0x7F,0x00,0xFF,0x4F,0x00,0x00,0x10,0xFF,0x01,
+  0xFF,0x08,0x00,0x00,0x00,0xF8,0x08,0xFF,0x01,0x00,0x00,0x00,
+  0xF2,0x0C,0xFE,0x00,0x00,0x00,0x00,0xF0,0x0F,0xFA,0x00,0x00,
+  0x00,0x00,0xF0,0x0F,0xF8,0x00,0x00,0x00,0x00,0xF0,0x0F,0xF5,
+  0x04,0x00,0x00,0x00,0xF3,0x0A,0xF0,0x0A,0x00,0x00,0x00,0xF8,
+  0x05,0x80,0x8F,0x00,0x00,0x40,0xFF,0x00,0x00,0xFE,0x19,0x00,
+  0xF6,0x6F,0x00,0x00,0xE1,0xFF,0xFF,0xFF,0x08,0x00,0x00,0x00,
+  0xD6,0xFF,0x4A,0x00,0x00
+};
+const GuiConst_INT8U Ch000282[164] =
+{
+  0,7,4,3,6,  12,10,6,4,6,
+  0,13,
+  7,23,
+  0x02,0x00,0x40,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0x00,0x00,0x00,0x00,0x00,
+  0xF4,0x0A,0x00,0x00,0x00,0x00,0x10,0xEF,0x00,0x00,0x00,0x00,
+  0x00,0xC0,0x2F,0x00,0x00,0x00,0x00,0x00,0xF6,0x09,0x00,0x00,
+  0x00,0x00,0x00,0xEE,0x00,0x00,0x00,0x00,0x00,0x80,0x6F,0x00,
+  0x00,0x00,0x00,0x00,0xF0,0x0E,0x00,0x00,0x00,0x00,0x00,0xF8,
+  0x06,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,
+  0x50,0x9F,0x00,0x00,0x00,0x00,0x00,0xC0,0x3F,0x00,0x00,0x00,
+  0x00,0x00,0xF0,0x0E,0x00,0x00,0x00,0x00,0x00,0xF5,0x08,0x00,
+  0x00,0x00,0x00,0x00,0xFA,0x03,0x00,0x00,0x00,0x00,0x00,0xFF,
+  0x00,0x00,0x00,0x00,0x00,0x20,0xCF,0x00,0x00,0x00,0x00,0x00,
+  0x60,0x7F,0x00,0x00,0x00,0x00,0x00,0x90,0x5F,0x00,0x00,0x00,
+  0x00,0x00,0xA0,0x2F,0x00,0x00,0x00,0x00,0x00,0xF0,0x0F,0x00,
+  0x00,0x00,0x00
+};
+const GuiConst_INT8U Ch000283[164] =
+{
+  3,1,0,2,6,  9,11,12,10,6,
+  0,13,
+  7,23,
+  0x40,0x00,0x01,
+  0x00,0x00,0xE8,0xEF,0x08,0x00,0x00,0x00,0xE1,0xFF,0xFF,0xEF,
+  0x01,0x00,0x00,0xFE,0x09,0x00,0xF9,0x0E,0x00,0x70,0x9F,0x00,
+  0x00,0xA0,0x6F,0x00,0xC0,0x1F,0x00,0x00,0x30,0xCF,0x00,0xF0,
+  0x0F,0x00,0x00,0x00,0xFF,0x00,0xD0,0x2F,0x00,0x00,0x10,0xEF,
+  0x00,0x80,0x9F,0x00,0x00,0x90,0x8F,0x00,0x00,0xFE,0x09,0x00,
+  0xF9,0x0E,0x00,0x00,0xD1,0xFF,0xFF,0xEF,0x02,0x00,0x00,0xF8,
+  0xFF,0xFF,0xFF,0x07,0x00,0xC0,0xEF,0x04,0x00,0xE6,0xAF,0x00,
+  0xF5,0x1E,0x00,0x00,0x10,0xFE,0x04,0xFA,0x04,0x00,0x00,0x00,
+  0xF5,0x0A,0xFF,0x00,0x00,0x00,0x00,0xF0,0x0F,0xFE,0x00,0x00,
+  0x00,0x00,0xF0,0x0F,0xF9,0x04,0x00,0x00,0x00,0xF4,0x09,0xF4,
+  0x1E,0x00,0x00,0x10,0xFE,0x04,0xA0,0xEF,0x06,0x00,0xE4,0xAF,
+  0x00,0x00,0xFA,0xFF,0xFF,0xFF,0x0A,0x00,0x00,0x40,0xF9,0xFF,
+  0x49,0x00,0x00
+};
+const GuiConst_INT8U Ch000284[178] =
+{
+  2,0,2,2,6,  9,12,12,9,6,
+  0,13,
+  7,23,
+  0x00,0x00,0x00,
+  0x00,0x30,0xF9,0xDF,0x06,0x00,0x00,0x00,0xF8,0xFF,0xFF,0xEF,
+  0x01,0x00,0x70,0xFF,0x19,0x00,0xF6,0x0E,0x00,0xF0,0x6F,0x00,
+  0x00,0x40,0x8F,0x00,0xF7,0x0A,0x00,0x00,0x00,0xF8,0x00,0xFC,
+  0x03,0x00,0x00,0x00,0xF2,0x05,0xFF,0x00,0x00,0x00,0x00,0xF0,
+  0x09,0xFF,0x00,0x00,0x00,0x00,0xF0,0x0A,0xFF,0x00,0x00,0x00,
+  0x00,0xF0,0x0F,0xFC,0x01,0x00,0x00,0x00,0xF2,0x0F,0xF8,0x08,
+  0x00,0x00,0x00,0xF8,0x0F,0xF1,0x3F,0x00,0x00,0x10,0xFF,0x0F,
+  0x70,0xFF,0x06,0x00,0xE6,0xDE,0x0F,0x00,0xF8,0xFF,0xFF,0xEF,
+  0xA3,0x0F,0x00,0x30,0xF9,0xDF,0x07,0xD0,0x0A,0x00,0x00,0x00,
+  0x00,0x00,0xF0,0x09,0x00,0x00,0x00,0x00,0x00,0xF3,0x06,0xFF,
+  0x00,0x00,0x00,0x00,0xF8,0x01,0xFA,0x04,0x00,0x00,0x00,0xDF,
+  0x00,0xF4,0x0D,0x00,0x00,0xC0,0x4F,0x00,0xD0,0xCF,0x02,0x30,
+  0xFC,0x0A,0x00,0x10,0xFE,0xFF,0xFF,0xAF,0x00,0x00,0x00,0x70,
+  0xFD,0xAF,0x04,0x00,0x00
+};
+const GuiConst_INT8U Ch000285[20] =
+{
+  0,0,0,0,0,  1,1,1,1,1,
+  0,2,
+  13,17,
+  0xFA,0x7F,0x01,
+  0xFF,0x00,0xFF
+};
+const GuiConst_INT8U Ch000286[224] =
+{
+  7,5,2,0,3,  9,11,14,16,13,
+  0,17,
+  7,23,
+  0x00,0x00,0x00,
+  0x00,0x00,0x00,0xE0,0xEF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
+  0xF3,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xF7,0xFF,0x07,
+  0x00,0x00,0x00,0x00,0x00,0x00,0xFD,0xF7,0x0D,0x00,0x00,0x00,
+  0x00,0x00,0x10,0xFF,0xE0,0x1F,0x00,0x00,0x00,0x00,0x00,0x70,
+  0xCF,0x80,0x6F,0x00,0x00,0x00,0x00,0x00,0xC0,0x5F,0x30,0xCF,
+  0x00,0x00,0x00,0x00,0x00,0xF0,0x0F,0x00,0xFF,0x00,0x00,0x00,
+  0x00,0x00,0xF5,0x0C,0x00,0xF9,0x05,0x00,0x00,0x00,0x00,0xFC,
+  0x05,0x00,0xF4,0x0A,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0xF0,
+  0x0F,0x00,0x00,0x00,0x40,0xCF,0x00,0x00,0x90,0x4F,0x00,0x00,
+  0x00,0x90,0x4F,0x00,0x00,0x40,0x9F,0x00,0x00,0x00,0xF0,0x0F,
+  0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0xF4,0xFF,0xFF,0xFF,0xFF,
+  0xFF,0x03,0x00,0x00,0xF8,0xFF,0xFF,0xFF,0xFF,0xFF,0x08,0x00,
+  0x00,0xFE,0x00,0x00,0x00,0x00,0xF0,0x0E,0x00,0x30,0xCF,0x00,
+  0x00,0x00,0x00,0xC0,0x3F,0x00,0x80,0x5F,0x00,0x00,0x00,0x00,
+  0x50,0x7F,0x00,0xD0,0x1F,0x00,0x00,0x00,0x00,0x00,0xDF,0x00,
+  0xF1,0x0D,0x00,0x00,0x00,0x00,0x00,0xFD,0x01,0xF7,0x07,0x00,
+  0x00,0x00,0x00,0x00,0xF7,0x07,0xFD,0x01,0x00,0x00,0x00,0x00,
+  0x00,0xF1,0x0D
+};
+const GuiConst_INT8U Ch000287[164] =
+{
+  0,0,0,0,3,  10,12,13,11,7,
+  0,14,
+  7,23,
+  0x40,0x00,0x01,
+  0xFF,0xFF,0xFF,0xFF,0x8D,0x01,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,
+  0x4F,0x00,0xFF,0x00,0x00,0x00,0x71,0xEF,0x00,0xFF,0x00,0x00,
+  0x00,0x00,0xF9,0x08,0xFF,0x00,0x00,0x00,0x00,0xF1,0x0D,0xFF,
+  0x00,0x00,0x00,0x00,0xF0,0x0F,0xFF,0x00,0x00,0x00,0x00,0xF1,
+  0x0A,0xFF,0x00,0x00,0x00,0x00,0xF7,0x04,0xFF,0x00,0x00,0x00,
+  0x71,0xCF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0x1F,0x00,0xFF,0xFF,
+  0xFF,0xFF,0xFF,0xFF,0x04,0xFF,0x00,0x00,0x00,0x40,0xFD,0x0E,
+  0xFF,0x00,0x00,0x00,0x00,0xD0,0x7F,0xFF,0x00,0x00,0x00,0x00,
+  0x40,0xCF,0xFF,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,
+  0x00,0x00,0x00,0xEF,0xFF,0x00,0x00,0x00,0x00,0x30,0x9F,0xFF,
+  0x00,0x00,0x00,0x00,0xC0,0x4F,0xFF,0x00,0x00,0x00,0x30,0xFC,
+  0x0C,0xFF,0xFF,0xFF,0xFF,0xFF,0xCF,0x00,0xFF,0xFF,0xFF,0xFF,
+  0xAF,0x05,0x00
+};
+const GuiConst_INT8U Ch000288[177] =
+{
+  4,0,0,4,7,  12,15,14,12,8,
+  0,16,
+  7,23,
+  0x00,0x1C,0x00,
+  0x00,0x00,0x40,0xE9,0xFF,0x6C,0x00,0x00,0x00,0x10,0xFC,0xFF,
+  0xFF,0xFF,0x3E,0x00,0x00,0xE1,0xCF,0x04,0x00,0xC3,0xFF,0x03,
+  0x00,0xFD,0x08,0x00,0x00,0x00,0xFA,0x0E,0x60,0xAF,0x00,0x00,
+  0x00,0x00,0xE0,0x6F,0xE0,0x0F,0x00,0x00,0x00,0x00,0x60,0xDF,
+  0xF4,0x09,0x00,0x00,0x00,0x00,0x00,0x2A,0xF8,0x05,0x00,0x00,
+  0x00,0x00,0x00,0x00,0xFA,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
+  0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,
+  0x00,0x00,0x00,0x00,0xFA,0x02,0x00,0x00,0x00,0x00,0x00,0x00,
+  0xF7,0x05,0x00,0x00,0x00,0x00,0x00,0x2A,0xF3,0x09,0x00,0x00,
+  0x00,0x00,0x40,0xDF,0xE0,0x0F,0x00,0x00,0x00,0x00,0xA0,0x7F,
+  0x60,0x9F,0x00,0x00,0x00,0x00,0xF2,0x1F,0x00,0xFE,0x07,0x00,
+  0x00,0x10,0xFE,0x09,0x00,0xF3,0xAF,0x03,0x00,0xE6,0xCF,0x00,
+  0x00,0x40,0xFE,0xFF,0xFF,0xFF,0x0C,0x00,0x00,0x00,0x60,0xFC,
+  0xEF,0x49,0x00,0x00
+};
+const GuiConst_INT8U Ch000289[177] =
+{
+  0,0,0,0,3,  11,14,14,11,6,
+  0,15,
+  7,23,
+  0x00,0x1C,0x00,
+  0xFF,0xFF,0xFF,0xFF,0x9D,0x02,0x00,0x00,0xFF,0xFF,0xFF,0xFF,
+  0xFF,0x8F,0x00,0x00,0xFF,0x00,0x00,0x00,0x62,0xFF,0x07,0x00,
+  0xFF,0x00,0x00,0x00,0x00,0xF1,0x2F,0x00,0xFF,0x00,0x00,0x00,
+  0x00,0x60,0xAF,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,
+  0xFF,0x00,0x00,0x00,0x00,0x00,0xF7,0x05,0xFF,0x00,0x00,0x00,
+  0x00,0x00,0xF3,0x09,0xFF,0x00,0x00,0x00,0x00,0x00,0xF1,0x0C,
+  0xFF,0x00,0x00,0x00,0x00,0x00,0xF0,0x0F,0xFF,0x00,0x00,0x00,
+  0x00,0x00,0xF0,0x0E,0xFF,0x00,0x00,0x00,0x00,0x00,0xF2,0x0A,
+  0xFF,0x00,0x00,0x00,0x00,0x00,0xF4,0x08,0xFF,0x00,0x00,0x00,
+  0x00,0x00,0xF8,0x04,0xFF,0x00,0x00,0x00,0x00,0x00,0xFE,0x00,
+  0xFF,0x00,0x00,0x00,0x00,0x60,0x9F,0x00,0xFF,0x00,0x00,0x00,
+  0x00,0xE1,0x1F,0x00,0xFF,0x00,0x00,0x00,0x72,0xFF,0x06,0x00,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0x7F,0x00,0x00,0xFF,0xFF,0xFF,0xFF,
+  0x8C,0x01,0x00,0x00
+};
+const GuiConst_INT8U Ch000290[52] =
+{
+  0,0,0,0,3,  13,9,10,13,10,
+  0,14,
+  7,23,
+  0xFA,0xEB,0x5F,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,
+  0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0xFF,0x00,0x00,
+  0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF
+};
+const GuiConst_INT8U Ch000291[45] =
+{
+  0,0,0,0,6,  12,1,10,1,6,
+  0,13,
+  7,23,
+  0xFA,0xD7,0x7F,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0xFF,0x00,0x00,0x00,0x00,
+  0x00,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0x00,0x00,
+  0x00,0x00,0x00,0x00
+};
+const GuiConst_INT8U Ch000292[65] =
+{
+  0,0,0,0,3,  1,9,10,10,7,
+  0,11,
+  7,23,
+  0x3E,0xE0,0x7F,
+  0xFF,0x00,0x00,0x00,0x00,0x00,0xFF,0x40,0xFA,0xDF,0x06,0x00,
+  0xFF,0xF8,0xFF,0xFF,0xCF,0x00,0xFF,0xCF,0x03,0x50,0xFF,0x04,
+  0xFF,0x0D,0x00,0x00,0xF6,0x09,0xFF,0x05,0x00,0x00,0xF0,0x0D,
+  0xFF,0x01,0x00,0x00,0xF0,0x0F,0xFF,0x00,0x00,0x00,0xF0,0x0F
+};
+const GuiConst_INT8U Ch000293[33] =
+{
+  0,0,0,0,0,  27,27,27,27,27,
+  0,28,
+  0,37,
+  0xFE,0xFF,0xFF,0xFF,0x1F,
+  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
+  0xFF,0xFF
+};
+const GuiConst_INT8U Ch000294[17] =
+{
+  0,0,0,0,0,  9,9,9,9,9,
+  0,10,
+  0,0,
+  0x00,
+  0x00,0x00
+};
+const GuiConst_INT8U Ch000295[23] =
+{
+  7,6,0,7,7,  8,9,15,8,8,
+  0,16,
+  12,17,
+  0x7E,0xFB,0x01,
+  0x03,0xC0,0xFF,0xFF,0x03,0xC0
+};
+const GuiConst_INT8U Ch000296[22] =
+{
+  7,7,7,5,7,  7,7,7,9,7,
+  5,5,
+  27,8,
+  0x04,
+  0x70,0xF8,0x78,0x38,0x70,0xE0,0xC0
+};
+const GuiConst_INT8U Ch000297[17] =
+{
+  7,7,0,7,7,  8,8,15,8,8,
+  0,16,
+  19,3,
+  0x06,
+  0xFF,0xFF
+};
+const GuiConst_INT8U Ch000298[18] =
+{
+  7,7,7,5,7,  7,7,7,9,7,
+  5,5,
+  27,4,
+  0x04,
+  0x70,0xF8,0x70
+};
+const GuiConst_INT8U Ch000299[43] =
+{
+  4,0,0,4,7,  11,15,15,11,8,
+  0,16,
+  7,24,
+  0x40,0xFF,0x05,
+  0x03,0xC0,0x0F,0xF0,0x1F,0xF8,0x3E,0x7C,0x3C,0x3C,0x78,0x1E,
+  0xF0,0x0F,0x78,0x1E,0x3C,0x3C,0x3E,0x7C,0x1F,0xF8,0x0F,0xF0,
+  0x03,0xC0
+};
+const GuiConst_INT8U Ch000300[35] =
+{
+  6,3,7,7,6,  10,10,10,10,6,
+  2,9,
+  7,24,
+  0x00,0xFE,0xFF,
+  0x07,0x80,0x0F,0x80,0x1F,0x80,0x3F,0x80,0x7F,0x80,0xFF,0x80,
+  0x77,0x80,0x27,0x80,0x07,0x80
+};
+const GuiConst_INT8U Ch000301[55] =
+{
+  3,2,1,0,7,  12,15,10,15,8,
+  0,16,
+  7,24,
+  0x00,0x01,0xD8,
+  0x07,0xE0,0x1F,0xF8,0x3F,0xFC,0x7C,0x3E,0xF8,0x1F,0x70,0x0F,
+  0x20,0x0F,0x00,0x0F,0x00,0x1F,0x00,0x3E,0x00,0x7C,0x01,0xF8,
+  0x07,0xF0,0x1F,0xC0,0x3F,0x00,0x7C,0x00,0x78,0x00,0xF0,0x00,
+  0xFF,0xFF
+};
+const GuiConst_INT8U Ch000302[63] =
+{
+  3,2,3,3,7,  12,15,15,12,8,
+  0,16,
+  7,24,
+  0x00,0x10,0x00,
+  0x07,0xE0,0x1F,0xF8,0x3F,0xFC,0x7C,0x3E,0xF8,0x1F,0x70,0x0F,
+  0x20,0x0F,0x00,0x0F,0x00,0x1F,0x00,0x3E,0x00,0xFC,0x03,0xF8,
+  0x00,0xFC,0x00,0x3E,0x00,0x1F,0x00,0x0F,0x20,0x0F,0x70,0x0F,
+  0xF8,0x1F,0x7C,0x3E,0x3F,0xFC,0x1F,0xF8,0x07,0xE0
+};
+const GuiConst_INT8U Ch000303[39] =
+{
+  8,4,0,3,7,  12,12,14,12,8,
+  0,16,
+  7,24,
+  0xAA,0xAA,0xEC,
+  0x00,0xF8,0x01,0xF8,0x03,0xF8,0x07,0xF8,0x0F,0x78,0x1E,0x78,
+  0x3C,0x78,0x78,0x78,0xF0,0x78,0xFF,0xFF,0x00,0x78
+};
+const GuiConst_INT8U Ch000304[47] =
+{
+  1,1,3,3,7,  15,11,15,12,8,
+  0,16,
+  7,24,
+  0xF6,0x81,0x01,
+  0x7F,0xFF,0x78,0x00,0x7F,0xF0,0x7F,0xFC,0x7F,0xFE,0x00,0x7E,
+  0x00,0x1F,0x00,0x0F,0x20,0x0F,0x70,0x0F,0xF8,0x1F,0x7C,0x3E,
+  0x3F,0xFC,0x1F,0xF8,0x07,0xE0
+};
+const GuiConst_INT8U Ch000305[55] =
+{
+  6,1,0,3,7,  11,10,15,12,8,
+  0,16,
+  7,24,
+  0x00,0x81,0x07,
+  0x00,0x60,0x01,0xF0,0x03,0xF0,0x0F,0xE0,0x1F,0x80,0x3F,0x00,
+  0x3C,0x00,0x78,0x00,0xF7,0xE0,0xFF,0xF8,0xFF,0xFC,0xFC,0x3E,
+  0xF8,0x1F,0xF0,0x0F,0xF8,0x1F,0x7C,0x3E,0x3F,0xFC,0x1F,0xF8,
+  0x07,0xE0
+};
+const GuiConst_INT8U Ch000306[61] =
+{
+  0,9,5,2,7,  15,14,10,6,8,
+  0,16,
+  7,24,
+  0x06,0x00,0x00,
+  0xFF,0xFF,0x00,0x0F,0x00,0x1F,0x00,0x1E,0x00,0x3E,0x00,0x3C,
+  0x00,0x7C,0x00,0x78,0x00,0xF8,0x00,0xF0,0x01,0xF0,0x01,0xE0,
+  0x03,0xE0,0x03,0xC0,0x07,0xC0,0x07,0x80,0x0F,0x80,0x0F,0x00,
+  0x1F,0x00,0x1E,0x00,0x3E,0x00,0x3C,0x00
+};
+const GuiConst_INT8U Ch000307[55] =
+{
+  3,0,0,3,7,  12,15,15,12,8,
+  0,16,
+  7,24,
+  0xC0,0x10,0x06,
+  0x07,0xE0,0x1F,0xF8,0x3F,0xFC,0x7C,0x3E,0xF8,0x1F,0xF0,0x0F,
+  0xF8,0x1F,0x7C,0x3E,0x3F,0xFC,0x1F,0xF8,0x3F,0xFC,0x7C,0x3E,
+  0xF8,0x1F,0xF0,0x0F,0xF8,0x1F,0x7C,0x3E,0x3F,0xFC,0x1F,0xF8,
+  0x07,0xE0
+};
+const GuiConst_INT8U Ch000308[55] =
+{
+  3,0,4,4,7,  12,15,15,9,8,
+  0,16,
+  7,24,
+  0xC0,0x03,0x01,
+  0x07,0xE0,0x1F,0xF8,0x3F,0xFC,0x7C,0x3E,0xF8,0x1F,0xF0,0x0F,
+  0xF8,0x1F,0x7C,0x3F,0x3F,0xFF,0x1F,0xFF,0x07,0xEF,0x00,0x1E,
+  0x00,0x3C,0x00,0xFC,0x01,0xF8,0x07,0xF0,0x0F,0xC0,0x0F,0x80,
+  0x06,0x00
+};
+const GuiConst_INT8U Ch000309[24] =
+{
+  7,5,7,5,7,  7,9,7,9,7,
+  5,5,
+  14,17,
+  0xE4,0x9F,0x00,
+  0x70,0xF8,0x70,0x00,0x70,0xF8,0x70
+};
+const GuiConst_INT8U Ch000310[35] =
+{
+  6,4,2,0,7,  9,11,13,15,8,
+  0,16,
+  7,24,
+  0xDA,0xDD,0xD4,
+  0x03,0xC0,0x07,0xE0,0x0F,0xF0,0x1E,0x78,0x3C,0x3C,0x3F,0xFC,
+  0x7F,0xFE,0x78,0x1E,0xF0,0x0F
+};
+const GuiConst_INT8U Ch000311[57] =
+{
+  0,0,0,0,7,  12,15,15,12,8,
+  0,16,
+  7,24,
+  0xC0,0x00,0x06,
+  0xFF,0xC0,0xFF,0xF0,0xFF,0xFC,0xF0,0x7E,0xF0,0x1E,0xF0,0x0F,
+  0xF0,0x1E,0xF0,0x7E,0xFF,0xF8,0xFF,0xF0,0xFF,0xF8,0xF0,0x7E,
+  0xF0,0x1E,0xF0,0x1F,0xF0,0x0F,0xF0,0x1E,0xF0,0x7E,0xFF,0xFC,
+  0xFF,0xF0,0xFF,0xC0
+};
+const GuiConst_INT8U Ch000312[47] =
+{
+  3,0,0,3,7,  12,15,14,12,8,
+  0,16,
+  7,24,
+  0x00,0xFF,0x01,
+  0x03,0xC0,0x0F,0xF0,0x3F,0xFC,0x7E,0x7E,0x78,0x1E,0xF8,0x1F,
+  0xF0,0x0F,0xF0,0x00,0xF0,0x0F,0xF8,0x1F,0x78,0x1E,0x7E,0x7E,
+  0x3F,0xFC,0x0F,0xF0,0x03,0xC0
+};
+const GuiConst_INT8U Ch000313[39] =
+{
+  0,0,0,0,7,  12,15,15,12,8,
+  0,16,
+  7,24,
+  0xC0,0xFF,0x07,
+  0xFF,0xC0,0xFF,0xF0,0xFF,0xFC,0xF0,0x7E,0xF0,0x1E,0xF0,0x0F,
+  0xF0,0x1E,0xF0,0x7E,0xFF,0xFC,0xFF,0xF0,0xFF,0xC0
+};
+const GuiConst_INT8U Ch000314[27] =
+{
+  0,0,0,0,7,  15,11,11,15,8,
+  0,16,
+  7,24,
+  0xF6,0xDB,0xDF,
+  0xFF,0xFF,0xF0,0x00,0xFF,0xF0,0xF0,0x00,0xFF,0xFF
+};
+const GuiConst_INT8U Ch000315[25] =
+{
+  0,0,0,0,7,  15,11,9,3,8,
+  0,16,
+  7,24,
+  0xF6,0xDB,0xFF,
+  0xFF,0xFF,0xF0,0x00,0xFF,0xF0,0xF0,0x00
+};
+const GuiConst_INT8U Ch000316[31] =
+{
+  0,0,0,0,7,  3,12,15,15,8,
+  0,16,
+  7,24,
+  0x7E,0xD0,0xFF,
+  0xF0,0x00,0xF3,0xC0,0xFF,0xF0,0xFF,0xFC,0xFC,0x3C,0xF0,0x1E,
+  0xF0,0x0F
+};
+const GuiConst_INT8U Ch000317[22] =
+{
+  0,0,0,0,0,  18,18,18,18,18,
+  0,19,
+  0,39,
+  0xFE,0xFF,0xFF,0xFF,0x7F,
+  0xFF,0xFF,0xE0
+};
+const GuiConst_INT8U Ch000318[16] =
+{
+  0,0,0,0,0,  7,7,7,7,7,
+  0,8,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000319[26] =
+{
+  8,0,0,8,8,  9,17,17,9,9,
+  0,18,
+  14,18,
+  0x7E,0xF7,0x03,
+  0x01,0xE0,0x00,0xFF,0xFF,0xC0,0x01,0xE0,0x00
+};
+const GuiConst_INT8U Ch000320[23] =
+{
+  6,6,6,4,6,  7,7,7,9,7,
+  4,6,
+  32,10,
+  0x1C,0x00,
+  0x78,0xFC,0x7C,0x3C,0x38,0x78,0x70
+};
+const GuiConst_INT8U Ch000321[18] =
+{
+  8,0,0,8,8,  9,17,17,9,9,
+  0,18,
+  21,4,
+  0x0E,
+  0xFF,0xFF,0xC0
+};
+const GuiConst_INT8U Ch000322[18] =
+{
+  6,6,6,4,6,  7,7,7,9,7,
+  4,6,
+  32,6,
+  0x1C,
+  0x78,0xFC,0x78
+};
+const GuiConst_INT8U Ch000323[69] =
+{
+  3,0,0,3,8,  14,17,17,14,9,
+  0,18,
+  8,30,
+  0x80,0xFC,0x9F,0x00,
+  0x03,0xF0,0x00,0x0F,0xFC,0x00,0x1F,0xFE,0x00,0x3F,0xFF,0x00,
+  0x3E,0x1F,0x00,0x7C,0x0F,0x80,0x78,0x07,0x80,0xF8,0x07,0xC0,
+  0xF0,0x03,0xC0,0xF8,0x07,0xC0,0x78,0x07,0x80,0x7C,0x0F,0x80,
+  0x3E,0x1F,0x00,0x3F,0xFF,0x00,0x1F,0xFE,0x00,0x0F,0xFC,0x00,
+  0x03,0xF0,0x00
+};
+const GuiConst_INT8U Ch000324[38] =
+{
+  6,3,8,8,6,  11,11,11,11,7,
+  2,10,
+  8,30,
+  0x00,0xFC,0xFF,0x3F,
+  0x03,0xC0,0x07,0xC0,0x0F,0xC0,0x1F,0xC0,0x3F,0xC0,0x7F,0xC0,
+  0xFF,0xC0,0x7B,0xC0,0x33,0xC0,0x03,0xC0
+};
+const GuiConst_INT8U Ch000325[87] =
+{
+  2,2,0,0,8,  15,17,12,16,9,
+  0,18,
+  8,30,
+  0x08,0x00,0x80,0x3B,
+  0x03,0xF0,0x00,0x0F,0xFC,0x00,0x3F,0xFF,0x00,0x7E,0x1F,0x80,
+  0x78,0x07,0x80,0xF8,0x07,0xC0,0x70,0x03,0xC0,0x30,0x03,0xC0,
+  0x00,0x03,0xC0,0x00,0x07,0xC0,0x00,0x07,0x80,0x00,0x1F,0x80,
+  0x00,0x7F,0x00,0x01,0xFE,0x00,0x07,0xFC,0x00,0x0F,0xF0,0x00,
+  0x1F,0xC0,0x00,0x3F,0x00,0x00,0x7E,0x00,0x00,0x7C,0x00,0x00,
+  0xF8,0x00,0x00,0xF0,0x00,0x00,0xFF,0xFF,0x80
+};
+const GuiConst_INT8U Ch000326[99] =
+{
+  2,1,1,2,8,  15,17,17,15,9,
+  0,18,
+  8,30,
+  0x08,0x80,0x00,0x08,
+  0x03,0xF0,0x00,0x0F,0xFC,0x00,0x3F,0xFF,0x00,0x7E,0x1F,0x80,
+  0x78,0x07,0x80,0xF8,0x07,0xC0,0x70,0x03,0xC0,0x30,0x03,0xC0,
+  0x00,0x03,0xC0,0x00,0x07,0xC0,0x00,0x07,0x80,0x00,0x1F,0x80,
+  0x00,0xFF,0x00,0x00,0xFE,0x00,0x00,0xFF,0x00,0x00,0x1F,0x80,
+  0x00,0x07,0x80,0x00,0x07,0xC0,0x00,0x03,0xC0,0x30,0x03,0xC0,
+  0x70,0x03,0xC0,0xF8,0x07,0xC0,0x78,0x07,0x80,0x7E,0x1F,0x80,
+  0x3F,0xFF,0x00,0x0F,0xFC,0x00,0x03,0xF0,0x00
+};
+const GuiConst_INT8U Ch000327[72] =
+{
+  9,4,0,10,8,  13,13,17,13,9,
+  0,18,
+  8,30,
+  0xAA,0x02,0xC0,0x3D,
+  0x00,0x3C,0x00,0x00,0x7C,0x00,0x00,0xFC,0x00,0x01,0xFC,0x00,
+  0x03,0xFC,0x00,0x07,0xFC,0x00,0x07,0xBC,0x00,0x0F,0xBC,0x00,
+  0x0F,0x3C,0x00,0x1F,0x3C,0x00,0x1E,0x3C,0x00,0x3E,0x3C,0x00,
+  0x3C,0x3C,0x00,0x7C,0x3C,0x00,0x78,0x3C,0x00,0xF8,0x3C,0x00,
+  0xFF,0xFF,0xC0,0x00,0x3C,0x00
+};
+const GuiConst_INT8U Ch000328[69] =
+{
+  1,1,1,2,8,  16,15,17,15,9,
+  0,18,
+  8,30,
+  0xEE,0x11,0x1E,0x08,
+  0x7F,0xFF,0x80,0x78,0x00,0x00,0x7B,0xF0,0x00,0x7F,0xFC,0x00,
+  0x7F,0xFF,0x00,0x7C,0x1F,0x80,0x70,0x07,0x80,0x00,0x07,0xC0,
+  0x00,0x03,0xC0,0x30,0x03,0xC0,0x70,0x03,0xC0,0xF8,0x07,0xC0,
+  0x78,0x07,0x80,0x7E,0x1F,0x80,0x3F,0xFF,0x00,0x0F,0xFC,0x00,
+  0x03,0xF0,0x00
+};
+const GuiConst_INT8U Ch000329[87] =
+{
+  6,0,0,2,8,  14,15,17,15,9,
+  0,18,
+  8,30,
+  0x00,0x20,0x7C,0x08,
+  0x00,0x38,0x00,0x00,0xF8,0x00,0x03,0xFC,0x00,0x07,0xF8,0x00,
+  0x0F,0xE0,0x00,0x1F,0x80,0x00,0x3F,0x00,0x00,0x3E,0x00,0x00,
+  0x7C,0x00,0x00,0x78,0x00,0x00,0x7B,0xF0,0x00,0xFF,0xFC,0x00,
+  0xFF,0xFF,0x00,0xFE,0x1F,0x80,0xF8,0x07,0x80,0xF8,0x07,0xC0,
+  0xF0,0x03,0xC0,0xF8,0x07,0xC0,0x78,0x07,0x80,0x7E,0x1F,0x80,
+  0x3F,0xFF,0x00,0x0F,0xFC,0x00,0x03,0xF0,0x00
+};
+const GuiConst_INT8U Ch000330[60] =
+{
+  0,7,5,1,8,  17,15,11,9,9,
+  0,18,
+  8,30,
+  0xAE,0xAA,0xAA,0x2A,
+  0xFF,0xFF,0xC0,0x00,0x07,0xC0,0x00,0x0F,0x80,0x00,0x1F,0x00,
+  0x00,0x3E,0x00,0x00,0x7C,0x00,0x00,0xF8,0x00,0x01,0xF0,0x00,
+  0x03,0xE0,0x00,0x07,0xC0,0x00,0x0F,0x80,0x00,0x1F,0x00,0x00,
+  0x3E,0x00,0x00,0x7C,0x00,0x00
+};
+const GuiConst_INT8U Ch000331[93] =
+{
+  2,0,0,2,8,  15,17,17,15,9,
+  0,18,
+  8,30,
+  0x08,0x01,0x60,0x08,
+  0x03,0xF0,0x00,0x0F,0xFC,0x00,0x3F,0xFF,0x00,0x7E,0x1F,0x80,
+  0x78,0x07,0x80,0xF8,0x07,0xC0,0xF0,0x03,0xC0,0xF8,0x07,0xC0,
+  0x78,0x07,0x80,0x7E,0x1F,0x80,0x3F,0xFF,0x00,0x1F,0xFE,0x00,
+  0x0F,0xFC,0x00,0x1F,0xFE,0x00,0x3F,0xFF,0x00,0x7E,0x1F,0x80,
+  0x78,0x07,0x80,0xF8,0x07,0xC0,0xF0,0x03,0xC0,0xF8,0x07,0xC0,
+  0x78,0x07,0x80,0x7E,0x1F,0x80,0x3F,0xFF,0x00,0x0F,0xFC,0x00,
+  0x03,0xF0,0x00
+};
+const GuiConst_INT8U Ch000332[87] =
+{
+  2,0,2,3,8,  15,17,17,11,9,
+  0,18,
+  8,30,
+  0x08,0x1F,0x02,0x00,
+  0x03,0xF0,0x00,0x0F,0xFC,0x00,0x3F,0xFF,0x00,0x7E,0x1F,0x80,
+  0x78,0x07,0x80,0xF8,0x07,0xC0,0xF0,0x03,0xC0,0xF8,0x07,0xC0,
+  0x78,0x07,0xC0,0x7E,0x1F,0xC0,0x3F,0xFF,0xC0,0x0F,0xFF,0xC0,
+  0x03,0xF7,0x80,0x00,0x07,0x80,0x00,0x0F,0x80,0x00,0x1F,0x00,
+  0x00,0x3F,0x00,0x00,0x7E,0x00,0x01,0xFC,0x00,0x07,0xF8,0x00,
+  0x0F,0xF0,0x00,0x07,0xC0,0x00,0x07,0x00,0x00
+};
+const GuiConst_INT8U Ch000333[24] =
+{
+  6,4,6,4,6,  7,9,7,9,7,
+  4,6,
+  15,23,
+  0x9C,0xFF,0x39,
+  0x78,0xFC,0x78,0x00,0x78,0xFC,0x78
+};
+const GuiConst_INT8U Ch000334[54] =
+{
+  6,4,1,0,8,  11,13,16,17,9,
+  0,18,
+  8,30,
+  0xDA,0x99,0xD9,0x39,
+  0x01,0xE0,0x00,0x03,0xF0,0x00,0x07,0xF8,0x00,0x0F,0xFC,0x00,
+  0x0F,0x3C,0x00,0x1F,0x3E,0x00,0x1E,0x1E,0x00,0x3E,0x1F,0x00,
+  0x3C,0x0F,0x00,0x7F,0xFF,0x80,0xF8,0x07,0xC0,0xF0,0x03,0xC0
+};
+const GuiConst_INT8U Ch000335[87] =
+{
+  0,0,0,0,8,  15,17,17,15,9,
+  0,18,
+  8,30,
+  0x08,0x83,0x60,0x08,
+  0xFF,0xF0,0x00,0xFF,0xFC,0x00,0xFF,0xFF,0x00,0xF0,0x1F,0x80,
+  0xF0,0x07,0x80,0xF0,0x07,0xC0,0xF0,0x03,0xC0,0xF0,0x07,0xC0,
+  0xF0,0x07,0x80,0xF0,0x1F,0x80,0xFF,0xFF,0x00,0xFF,0xFE,0x00,
+  0xFF,0xFF,0x00,0xF0,0x1F,0x80,0xF0,0x07,0x80,0xF0,0x07,0xC0,
+  0xF0,0x03,0xC0,0xF0,0x07,0xC0,0xF0,0x07,0x80,0xF0,0x1F,0x80,
+  0xFF,0xFF,0x00,0xFF,0xFC,0x00,0xFF,0xF0,0x00
+};
+const GuiConst_INT8U Ch000336[69] =
+{
+  2,0,0,2,8,  15,16,16,15,9,
+  0,18,
+  8,30,
+  0x08,0xFC,0x1F,0x08,
+  0x03,0xF0,0x00,0x0F,0xFC,0x00,0x3F,0xFF,0x00,0x7E,0x1F,0x80,
+  0x78,0x07,0x80,0xF8,0x07,0xC0,0xF0,0x03,0x80,0xF0,0x03,0x00,
+  0xF0,0x00,0x00,0xF0,0x03,0x00,0xF0,0x03,0x80,0xF8,0x07,0xC0,
+  0x78,0x07,0x80,0x7E,0x1F,0x80,0x3F,0xFF,0x00,0x0F,0xFC,0x00,
+  0x03,0xF0,0x00
+};
+const GuiConst_INT8U Ch000337[57] =
+{
+  0,0,0,0,8,  15,17,17,15,9,
+  0,18,
+  8,30,
+  0x08,0xFF,0x7F,0x08,
+  0xFF,0xF0,0x00,0xFF,0xFC,0x00,0xFF,0xFF,0x00,0xF0,0x1F,0x80,
+  0xF0,0x07,0x80,0xF0,0x07,0xC0,0xF0,0x03,0xC0,0xF0,0x07,0xC0,
+  0xF0,0x07,0x80,0xF0,0x1F,0x80,0xFF,0xFF,0x00,0xFF,0xFC,0x00,
+  0xFF,0xF0,0x00
+};
+const GuiConst_INT8U Ch000338[33] =
+{
+  0,0,0,0,8,  17,11,11,17,9,
+  0,18,
+  8,30,
+  0xEE,0xDF,0xFD,0x3B,
+  0xFF,0xFF,0xC0,0xF0,0x00,0x00,0xFF,0xF0,0x00,0xF0,0x00,0x00,
+  0xFF,0xFF,0xC0
+};
+const GuiConst_INT8U Ch000339[30] =
+{
+  0,0,0,0,8,  17,11,11,3,9,
+  0,18,
+  8,30,
+  0xEE,0xDF,0xFD,0x3F,
+  0xFF,0xFF,0xC0,0xF0,0x00,0x00,0xFF,0xF0,0x00,0xF0,0x00,0x00
+};
+const GuiConst_INT8U Ch000340[42] =
+{
+  0,0,0,0,8,  3,14,16,16,8,
+  0,17,
+  8,30,
+  0xFE,0x23,0xFC,0x3F,
+  0xF0,0x00,0x00,0xF3,0xE0,0x00,0xFF,0xF8,0x00,0xFF,0xFE,0x00,
+  0xFC,0x1F,0x00,0xF0,0x0F,0x00,0xF0,0x0F,0x80,0xF0,0x07,0x80
+};
+const GuiConst_INT8U Ch000341[23] =
+{
+  0,0,0,0,0,  20,20,20,20,20,
+  0,21,
+  0,47,
+  0xFE,0xFF,0xFF,0xFF,0xFF,0x7F,
+  0xFF,0xFF,0xF8
+};
+const GuiConst_INT8U Ch000342[16] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000343[18] =
+{
+  2,0,0,2,2,  3,5,5,3,3,
+  0,6,
+  6,5,
+  0x12,
+  0x30,0xFC,0x30
+};
+const GuiConst_INT8U Ch000344[17] =
+{
+  2,2,2,1,1,  2,2,3,3,2,
+  1,3,
+  10,3,
+  0x02,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000345[16] =
+{
+  2,0,0,2,2,  3,5,5,3,3,
+  0,6,
+  8,1,
+  0x00,
+  0xFC
+};
+const GuiConst_INT8U Ch000346[16] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  10,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000347[20] =
+{
+  1,0,0,1,2,  4,5,5,4,3,
+  0,6,
+  5,7,
+  0x18,
+  0x30,0x78,0xCC,0x78,0x30
+};
+const GuiConst_INT8U Ch000348[19] =
+{
+  2,1,3,3,2,  4,4,4,4,3,
+  1,4,
+  5,7,
+  0x70,
+  0x30,0x70,0xF0,0x30
+};
+const GuiConst_INT8U Ch000349[22] =
+{
+  0,0,0,0,2,  5,5,4,5,3,
+  0,6,
+  5,7,
+  0x00,
+  0x78,0xCC,0x0C,0x38,0x60,0xC0,0xFC
+};
+const GuiConst_INT8U Ch000350[22] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  5,7,
+  0x00,
+  0x78,0xCC,0x0C,0x38,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000351[20] =
+{
+  1,0,0,3,2,  4,4,5,4,3,
+  0,6,
+  5,7,
+  0x48,
+  0x38,0x78,0xD8,0xFC,0x18
+};
+const GuiConst_INT8U Ch000352[21] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  5,7,
+  0x10,
+  0xFC,0xC0,0xF8,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000353[21] =
+{
+  1,0,0,0,2,  4,4,5,5,3,
+  0,6,
+  5,7,
+  0x20,
+  0x38,0x60,0xC0,0xF8,0xCC,0x78
+};
+const GuiConst_INT8U Ch000354[20] =
+{
+  0,1,2,1,2,  5,5,4,3,3,
+  0,6,
+  5,7,
+  0x28,
+  0xFC,0x0C,0x18,0x30,0x60
+};
+const GuiConst_INT8U Ch000355[20] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  5,7,
+  0x24,
+  0x78,0xCC,0x78,0xCC,0x78
+};
+const GuiConst_INT8U Ch000356[21] =
+{
+  0,0,1,1,2,  5,5,5,4,3,
+  0,6,
+  5,7,
+  0x04,
+  0x78,0xCC,0x7C,0x0C,0x18,0x70
+};
+const GuiConst_INT8U Ch000357[18] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  6,6,
+  0x2A,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000358[20] =
+{
+  1,0,0,0,2,  4,5,5,5,3,
+  0,6,
+  5,7,
+  0x48,
+  0x30,0x78,0xCC,0xFC,0xCC
+};
+const GuiConst_INT8U Ch000359[20] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  5,7,
+  0x24,
+  0xF8,0xCC,0xF8,0xCC,0xF8
+};
+const GuiConst_INT8U Ch000360[20] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  5,7,
+  0x18,
+  0x78,0xCC,0xC0,0xCC,0x78
+};
+const GuiConst_INT8U Ch000361[20] =
+{
+  0,0,0,0,2,  4,5,5,4,3,
+  0,6,
+  5,7,
+  0x18,
+  0xF0,0xD8,0xCC,0xD8,0xF0
+};
+const GuiConst_INT8U Ch000362[20] =
+{
+  0,0,0,0,2,  5,4,4,5,3,
+  0,6,
+  5,7,
+  0x24,
+  0xFC,0xC0,0xF8,0xC0,0xFC
+};
+const GuiConst_INT8U Ch000363[19] =
+{
+  0,0,0,0,2,  5,4,4,2,3,
+  0,6,
+  5,7,
+  0x64,
+  0xFC,0xC0,0xF8,0xC0
+};
+const GuiConst_INT8U Ch000364[18] =
+{
+  0,0,0,0,2,  1,4,4,4,2,
+  0,5,
+  5,7,
+  0x72,
+  0xC0,0xF0,0xD8
+};
+const GuiConst_INT8U Ch000365[18] =
+{
+  0,0,0,0,0,  14,14,14,14,14,
+  0,15,
+  0,16,
+  0xFE,0xFF,
+  0xFF,0xFE
+};
+const GuiConst_INT8U Ch000366[16] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000367[18] =
+{
+  2,1,0,2,2,  3,4,5,3,3,
+  0,6,
+  6,5,
+  0x12,
+  0x30,0xFC,0x30
+};
+const GuiConst_INT8U Ch000368[17] =
+{
+  2,2,2,1,2,  2,2,2,3,2,
+  1,3,
+  11,3,
+  0x02,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000369[16] =
+{
+  2,1,0,2,2,  2,3,4,2,2,
+  0,5,
+  8,2,
+  0x02,
+  0xF8
+};
+const GuiConst_INT8U Ch000370[16] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  11,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000371[19] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  4,9,
+  0xFC,0x00,
+  0x78,0xCC,0x78
+};
+const GuiConst_INT8U Ch000372[20] =
+{
+  2,1,3,3,2,  4,4,4,4,3,
+  1,4,
+  4,9,
+  0xF0,0x01,
+  0x30,0x70,0xF0,0x30
+};
+const GuiConst_INT8U Ch000373[24] =
+{
+  0,0,0,0,2,  5,5,3,5,3,
+  0,6,
+  4,9,
+  0x80,0x00,
+  0x78,0xCC,0x0C,0x18,0x30,0x60,0xC0,0xFC
+};
+const GuiConst_INT8U Ch000374[24] =
+{
+  0,0,1,0,2,  5,5,5,5,3,
+  0,6,
+  4,9,
+  0x40,0x00,
+  0x78,0xCC,0x04,0x0C,0x18,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000375[23] =
+{
+  2,1,0,1,3,  5,5,6,5,3,
+  0,7,
+  4,9,
+  0x20,0x01,
+  0x0C,0x1C,0x3C,0x6C,0xCC,0xFE,0x0C
+};
+const GuiConst_INT8U Ch000376[22] =
+{
+  0,0,1,0,2,  5,4,5,5,3,
+  0,6,
+  4,9,
+  0x64,0x00,
+  0xFC,0xC0,0xF8,0x0C,0xCC,0x78
+};
+const GuiConst_INT8U Ch000377[22] =
+{
+  1,0,0,0,2,  4,4,5,5,3,
+  0,6,
+  4,9,
+  0xE0,0x00,
+  0x38,0x60,0xC0,0xF8,0xCC,0x78
+};
+const GuiConst_INT8U Ch000378[20] =
+{
+  0,1,2,2,2,  5,5,4,3,3,
+  0,6,
+  4,9,
+  0xB4,0x01,
+  0xFC,0x0C,0x18,0x30
+};
+const GuiConst_INT8U Ch000379[21] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  4,9,
+  0xCC,0x00,
+  0x78,0xCC,0x78,0xCC,0x78
+};
+const GuiConst_INT8U Ch000380[22] =
+{
+  0,0,0,1,2,  5,5,5,4,3,
+  0,6,
+  4,9,
+  0x1C,0x00,
+  0x78,0xCC,0x7C,0x0C,0x18,0x70
+};
+const GuiConst_INT8U Ch000381[18] =
+{
+  2,2,2,2,2,  3,3,3,3,3,
+  2,2,
+  6,7,
+  0x5A,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000382[21] =
+{
+  2,1,0,0,2,  3,4,5,5,3,
+  0,6,
+  4,9,
+  0x2A,0x01,
+  0x30,0x78,0xCC,0xFC,0xCC
+};
+const GuiConst_INT8U Ch000383[21] =
+{
+  0,0,0,0,2,  5,5,5,5,3,
+  0,6,
+  4,9,
+  0xCC,0x00,
+  0xF8,0xCC,0xF8,0xCC,0xF8
+};
+const GuiConst_INT8U Ch000384[21] =
+{
+  0,0,0,0,2,  5,5,4,5,3,
+  0,6,
+  4,9,
+  0x78,0x00,
+  0x78,0xCC,0xC0,0xCC,0x78
+};
+const GuiConst_INT8U Ch000385[21] =
+{
+  0,0,0,0,2,  4,5,5,4,3,
+  0,6,
+  4,9,
+  0x78,0x00,
+  0xF0,0xD8,0xCC,0xD8,0xF0
+};
+const GuiConst_INT8U Ch000386[21] =
+{
+  0,0,0,0,2,  4,3,3,4,2,
+  0,5,
+  4,9,
+  0xCC,0x00,
+  0xF8,0xC0,0xF0,0xC0,0xF8
+};
+const GuiConst_INT8U Ch000387[20] =
+{
+  0,0,0,0,2,  4,3,3,1,2,
+  0,5,
+  4,9,
+  0xCC,0x01,
+  0xF8,0xC0,0xF0,0xC0
+};
+const GuiConst_INT8U Ch000388[19] =
+{
+  0,0,0,0,2,  3,5,5,5,3,
+  0,6,
+  4,9,
+  0xF2,0x01,
+  0xC0,0xF8,0xCC
+};
+const GuiConst_INT8U Ch000389[19] =
+{
+  0,0,0,0,0,  15,15,15,15,15,
+  0,16,
+  0,17,
+  0xFE,0xFF,0x01,
+  0xFF,0xFF
+};
+const GuiConst_INT8U Ch000390[16] =
+{
+  0,0,0,0,0,  2,2,2,2,2,
+  0,3,
+  0,0,
+  0x00,
+  0x00
+};
+const GuiConst_INT8U Ch000391[18] =
+{
+  3,1,0,3,3,  4,6,7,4,4,
+  0,8,
+  5,7,
+  0x66,
+  0x18,0xFF,0x18
+};
+const GuiConst_INT8U Ch000392[17] =
+{
+  3,3,3,3,2,  3,3,3,4,4,
+  2,3,
+  12,4,
+  0x06,
+  0x60,0xC0
+};
+const GuiConst_INT8U Ch000393[16] =
+{
+  3,1,0,3,3,  4,6,7,4,4,
+  0,8,
+  8,1,
+  0x00,
+  0xFF
+};
+const GuiConst_INT8U Ch000394[16] =
+{
+  3,3,3,3,3,  4,4,4,4,4,
+  3,2,
+  12,2,
+  0x02,
+  0xC0
+};
+const GuiConst_INT8U Ch000395[21] =
+{
+  1,0,0,1,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0xF4,0x02,
+  0x3C,0x66,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000396[20] =
+{
+  2,1,3,3,2,  4,4,4,4,3,
+  1,4,
+  3,11,
+  0xF0,0x07,
+  0x30,0x70,0xF0,0x30
+};
+const GuiConst_INT8U Ch000397[25] =
+{
+  1,0,1,0,3,  6,7,6,7,4,
+  0,8,
+  3,11,
+  0x08,0x02,
+  0x3C,0x66,0xC3,0x03,0x0E,0x38,0x60,0xC0,0xFF
+};
+const GuiConst_INT8U Ch000398[27] =
+{
+  1,0,4,1,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0x00,0x00,
+  0x3C,0x66,0xC3,0x03,0x06,0x0C,0x06,0x03,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000399[22] =
+{
+  2,1,0,4,3,  5,5,7,5,4,
+  0,8,
+  3,11,
+  0x54,0x06,
+  0x1C,0x3C,0x6C,0xCC,0xFF,0x0C
+};
+const GuiConst_INT8U Ch000400[24] =
+{
+  0,0,1,1,3,  7,6,7,6,4,
+  0,8,
+  3,11,
+  0xC4,0x00,
+  0xFF,0xC0,0xFC,0xE6,0x03,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000401[25] =
+{
+  2,0,0,1,3,  6,5,7,6,4,
+  0,8,
+  3,11,
+  0x80,0x01,
+  0x1E,0x30,0x60,0xC0,0xFC,0xE6,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000402[22] =
+{
+  0,3,3,2,3,  7,7,5,4,4,
+  0,8,
+  3,11,
+  0x54,0x05,
+  0xFF,0x03,0x06,0x0C,0x18,0x30
+};
+const GuiConst_INT8U Ch000403[25] =
+{
+  1,0,0,1,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0x08,0x01,
+  0x3C,0x66,0xC3,0x66,0x3C,0x66,0xC3,0x66,0x3C
+};
+const GuiConst_INT8U Ch000404[25] =
+{
+  1,0,1,1,3,  6,7,7,5,4,
+  0,8,
+  3,11,
+  0x18,0x00,
+  0x3C,0x66,0xC3,0x67,0x3F,0x03,0x06,0x0C,0x78
+};
+const GuiConst_INT8U Ch000405[18] =
+{
+  3,3,3,3,3,  4,4,4,4,4,
+  3,2,
+  6,8,
+  0xBA,
+  0xC0,0x00,0xC0
+};
+const GuiConst_INT8U Ch000406[21] =
+{
+  2,2,1,0,3,  5,5,6,7,4,
+  0,8,
+  3,11,
+  0xDA,0x04,
+  0x18,0x3C,0x66,0xFF,0xC3
+};
+const GuiConst_INT8U Ch000407[25] =
+{
+  0,0,0,0,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0x08,0x01,
+  0xFC,0xC6,0xC3,0xC6,0xFC,0xC6,0xC3,0xC6,0xFC
+};
+const GuiConst_INT8U Ch000408[21] =
+{
+  1,0,0,1,3,  7,6,6,7,4,
+  0,8,
+  3,11,
+  0xF8,0x01,
+  0x3E,0x63,0xC0,0x63,0x3E
+};
+const GuiConst_INT8U Ch000409[21] =
+{
+  0,0,0,0,3,  6,7,7,6,4,
+  0,8,
+  3,11,
+  0xF8,0x01,
+  0xFC,0xC6,0xC3,0xC6,0xFC
+};
+const GuiConst_INT8U Ch000410[21] =
+{
+  0,0,0,0,3,  7,5,5,7,4,
+  0,8,
+  3,11,
+  0x9C,0x03,
+  0xFF,0xC0,0xFC,0xC0,0xFF
+};
+const GuiConst_INT8U Ch000411[20] =
+{
+  0,0,0,0,3,  7,5,5,1,4,
+  0,8,
+  3,11,
+  0x9C,0x07,
+  0xFF,0xC0,0xFC,0xC0
+};
+const GuiConst_INT8U Ch000412[20] =
+{
+  0,0,0,0,3,  1,5,6,6,3,
+  0,7,
+  3,11,
+  0xC6,0x07,
+  0xC0,0xF8,0xEC,0xC6
+};
+const GuiConst_INT8U Ch000413[20] =
+{
+  0,0,0,0,0,  16,16,16,16,16,
+  0,17,
+  0,18,
+  0xFE,0xFF,0x03,
+  0xFF,0xFF,0x80
+};
+const GuiConst_PTR const GuiFont_ChPtrList[GuiFont_CharCnt] =
+{
+  (GuiConst_PTR)Ch000000,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000001,
+  (GuiConst_PTR)Ch000002,
+  (GuiConst_PTR)Ch000003,
+  (GuiConst_PTR)Ch000004,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000005,
+  (GuiConst_PTR)Ch000006,
+  (GuiConst_PTR)Ch000007,
+  (GuiConst_PTR)Ch000008,
+  (GuiConst_PTR)Ch000009,
+  (GuiConst_PTR)Ch000010,
+  (GuiConst_PTR)Ch000011,
+  (GuiConst_PTR)Ch000012,
+  (GuiConst_PTR)Ch000013,
+  (GuiConst_PTR)Ch000014,
+  (GuiConst_PTR)Ch000015,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000016,
+  (GuiConst_PTR)Ch000017,
+  (GuiConst_PTR)Ch000018,
+  (GuiConst_PTR)Ch000019,
+  (GuiConst_PTR)Ch000020,
+  (GuiConst_PTR)Ch000021,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000022,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000023,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000024,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000025,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000026,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000027,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000028,
+  (GuiConst_PTR)Ch000029,
+  (GuiConst_PTR)Ch000030,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000031,
+  (GuiConst_PTR)Ch000032,
+  (GuiConst_PTR)Ch000033,
+  (GuiConst_PTR)Ch000034,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000035,
+  (GuiConst_PTR)Ch000036,
+  (GuiConst_PTR)Ch000037,
+  (GuiConst_PTR)Ch000038,
+  (GuiConst_PTR)Ch000039,
+  (GuiConst_PTR)Ch000040,
+  (GuiConst_PTR)Ch000041,
+  (GuiConst_PTR)Ch000042,
+  (GuiConst_PTR)Ch000043,
+  (GuiConst_PTR)Ch000044,
+  (GuiConst_PTR)Ch000045,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000046,
+  (GuiConst_PTR)Ch000047,
+  (GuiConst_PTR)Ch000048,
+  (GuiConst_PTR)Ch000049,
+  (GuiConst_PTR)Ch000050,
+  (GuiConst_PTR)Ch000051,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000052,
+  (GuiConst_PTR)Ch000053,
+  (GuiConst_PTR)Ch000054,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000055,
+  (GuiConst_PTR)Ch000056,
+  (GuiConst_PTR)Ch000057,
+  (GuiConst_PTR)Ch000058,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000059,
+  (GuiConst_PTR)Ch000060,
+  (GuiConst_PTR)Ch000061,
+  (GuiConst_PTR)Ch000062,
+  (GuiConst_PTR)Ch000063,
+  (GuiConst_PTR)Ch000064,
+  (GuiConst_PTR)Ch000065,
+  (GuiConst_PTR)Ch000066,
+  (GuiConst_PTR)Ch000067,
+  (GuiConst_PTR)Ch000068,
+  (GuiConst_PTR)Ch000069,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000070,
+  (GuiConst_PTR)Ch000071,
+  (GuiConst_PTR)Ch000072,
+  (GuiConst_PTR)Ch000073,
+  (GuiConst_PTR)Ch000074,
+  (GuiConst_PTR)Ch000075,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000076,
+  (GuiConst_PTR)Ch000077,
+  (GuiConst_PTR)Ch000078,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000079,
+  (GuiConst_PTR)Ch000080,
+  (GuiConst_PTR)Ch000081,
+  (GuiConst_PTR)Ch000082,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000083,
+  (GuiConst_PTR)Ch000084,
+  (GuiConst_PTR)Ch000085,
+  (GuiConst_PTR)Ch000086,
+  (GuiConst_PTR)Ch000087,
+  (GuiConst_PTR)Ch000088,
+  (GuiConst_PTR)Ch000089,
+  (GuiConst_PTR)Ch000090,
+  (GuiConst_PTR)Ch000091,
+  (GuiConst_PTR)Ch000092,
+  (GuiConst_PTR)Ch000093,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000094,
+  (GuiConst_PTR)Ch000095,
+  (GuiConst_PTR)Ch000096,
+  (GuiConst_PTR)Ch000097,
+  (GuiConst_PTR)Ch000098,
+  (GuiConst_PTR)Ch000099,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000100,
+  (GuiConst_PTR)Ch000101,
+  (GuiConst_PTR)Ch000102,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000103,
+  (GuiConst_PTR)Ch000104,
+  (GuiConst_PTR)Ch000105,
+  (GuiConst_PTR)Ch000106,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000107,
+  (GuiConst_PTR)Ch000108,
+  (GuiConst_PTR)Ch000109,
+  (GuiConst_PTR)Ch000110,
+  (GuiConst_PTR)Ch000111,
+  (GuiConst_PTR)Ch000112,
+  (GuiConst_PTR)Ch000113,
+  (GuiConst_PTR)Ch000114,
+  (GuiConst_PTR)Ch000115,
+  (GuiConst_PTR)Ch000116,
+  (GuiConst_PTR)Ch000117,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000118,
+  (GuiConst_PTR)Ch000119,
+  (GuiConst_PTR)Ch000120,
+  (GuiConst_PTR)Ch000121,
+  (GuiConst_PTR)Ch000122,
+  (GuiConst_PTR)Ch000123,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000124,
+  (GuiConst_PTR)Ch000125,
+  (GuiConst_PTR)Ch000126,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000127,
+  (GuiConst_PTR)Ch000128,
+  (GuiConst_PTR)Ch000129,
+  (GuiConst_PTR)Ch000130,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000131,
+  (GuiConst_PTR)Ch000132,
+  (GuiConst_PTR)Ch000133,
+  (GuiConst_PTR)Ch000134,
+  (GuiConst_PTR)Ch000135,
+  (GuiConst_PTR)Ch000136,
+  (GuiConst_PTR)Ch000137,
+  (GuiConst_PTR)Ch000138,
+  (GuiConst_PTR)Ch000139,
+  (GuiConst_PTR)Ch000140,
+  (GuiConst_PTR)Ch000141,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000142,
+  (GuiConst_PTR)Ch000143,
+  (GuiConst_PTR)Ch000144,
+  (GuiConst_PTR)Ch000145,
+  (GuiConst_PTR)Ch000146,
+  (GuiConst_PTR)Ch000147,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000148,
+  (GuiConst_PTR)Ch000149,
+  (GuiConst_PTR)Ch000150,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000151,
+  (GuiConst_PTR)Ch000152,
+  (GuiConst_PTR)Ch000153,
+  (GuiConst_PTR)Ch000154,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000155,
+  (GuiConst_PTR)Ch000156,
+  (GuiConst_PTR)Ch000157,
+  (GuiConst_PTR)Ch000158,
+  (GuiConst_PTR)Ch000159,
+  (GuiConst_PTR)Ch000160,
+  (GuiConst_PTR)Ch000161,
+  (GuiConst_PTR)Ch000162,
+  (GuiConst_PTR)Ch000163,
+  (GuiConst_PTR)Ch000164,
+  (GuiConst_PTR)Ch000165,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000166,
+  (GuiConst_PTR)Ch000167,
+  (GuiConst_PTR)Ch000168,
+  (GuiConst_PTR)Ch000169,
+  (GuiConst_PTR)Ch000170,
+  (GuiConst_PTR)Ch000171,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000172,
+  (GuiConst_PTR)Ch000173,
+  (GuiConst_PTR)Ch000174,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000175,
+  (GuiConst_PTR)Ch000176,
+  (GuiConst_PTR)Ch000177,
+  (GuiConst_PTR)Ch000178,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000179,
+  (GuiConst_PTR)Ch000180,
+  (GuiConst_PTR)Ch000181,
+  (GuiConst_PTR)Ch000182,
+  (GuiConst_PTR)Ch000183,
+  (GuiConst_PTR)Ch000184,
+  (GuiConst_PTR)Ch000185,
+  (GuiConst_PTR)Ch000186,
+  (GuiConst_PTR)Ch000187,
+  (GuiConst_PTR)Ch000188,
+  (GuiConst_PTR)Ch000189,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000190,
+  (GuiConst_PTR)Ch000191,
+  (GuiConst_PTR)Ch000192,
+  (GuiConst_PTR)Ch000193,
+  (GuiConst_PTR)Ch000194,
+  (GuiConst_PTR)Ch000195,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000196,
+  (GuiConst_PTR)Ch000197,
+  (GuiConst_PTR)Ch000198,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000199,
+  (GuiConst_PTR)Ch000200,
+  (GuiConst_PTR)Ch000201,
+  (GuiConst_PTR)Ch000202,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000203,
+  (GuiConst_PTR)Ch000204,
+  (GuiConst_PTR)Ch000205,
+  (GuiConst_PTR)Ch000206,
+  (GuiConst_PTR)Ch000207,
+  (GuiConst_PTR)Ch000208,
+  (GuiConst_PTR)Ch000209,
+  (GuiConst_PTR)Ch000210,
+  (GuiConst_PTR)Ch000211,
+  (GuiConst_PTR)Ch000212,
+  (GuiConst_PTR)Ch000213,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000214,
+  (GuiConst_PTR)Ch000215,
+  (GuiConst_PTR)Ch000216,
+  (GuiConst_PTR)Ch000217,
+  (GuiConst_PTR)Ch000218,
+  (GuiConst_PTR)Ch000219,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000220,
+  (GuiConst_PTR)Ch000221,
+  (GuiConst_PTR)Ch000222,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000223,
+  (GuiConst_PTR)Ch000224,
+  (GuiConst_PTR)Ch000225,
+  (GuiConst_PTR)Ch000226,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000227,
+  (GuiConst_PTR)Ch000228,
+  (GuiConst_PTR)Ch000229,
+  (GuiConst_PTR)Ch000230,
+  (GuiConst_PTR)Ch000231,
+  (GuiConst_PTR)Ch000232,
+  (GuiConst_PTR)Ch000233,
+  (GuiConst_PTR)Ch000234,
+  (GuiConst_PTR)Ch000235,
+  (GuiConst_PTR)Ch000236,
+  (GuiConst_PTR)Ch000237,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000238,
+  (GuiConst_PTR)Ch000239,
+  (GuiConst_PTR)Ch000240,
+  (GuiConst_PTR)Ch000241,
+  (GuiConst_PTR)Ch000242,
+  (GuiConst_PTR)Ch000243,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000244,
+  (GuiConst_PTR)Ch000245,
+  (GuiConst_PTR)Ch000246,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000247,
+  (GuiConst_PTR)Ch000248,
+  (GuiConst_PTR)Ch000249,
+  (GuiConst_PTR)Ch000250,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000251,
+  (GuiConst_PTR)Ch000252,
+  (GuiConst_PTR)Ch000253,
+  (GuiConst_PTR)Ch000254,
+  (GuiConst_PTR)Ch000255,
+  (GuiConst_PTR)Ch000256,
+  (GuiConst_PTR)Ch000257,
+  (GuiConst_PTR)Ch000258,
+  (GuiConst_PTR)Ch000259,
+  (GuiConst_PTR)Ch000260,
+  (GuiConst_PTR)Ch000261,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000262,
+  (GuiConst_PTR)Ch000263,
+  (GuiConst_PTR)Ch000264,
+  (GuiConst_PTR)Ch000265,
+  (GuiConst_PTR)Ch000266,
+  (GuiConst_PTR)Ch000267,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000268,
+  (GuiConst_PTR)Ch000269,
+  (GuiConst_PTR)Ch000270,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000271,
+  (GuiConst_PTR)Ch000272,
+  (GuiConst_PTR)Ch000273,
+  (GuiConst_PTR)Ch000274,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000275,
+  (GuiConst_PTR)Ch000276,
+  (GuiConst_PTR)Ch000277,
+  (GuiConst_PTR)Ch000278,
+  (GuiConst_PTR)Ch000279,
+  (GuiConst_PTR)Ch000280,
+  (GuiConst_PTR)Ch000281,
+  (GuiConst_PTR)Ch000282,
+  (GuiConst_PTR)Ch000283,
+  (GuiConst_PTR)Ch000284,
+  (GuiConst_PTR)Ch000285,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000286,
+  (GuiConst_PTR)Ch000287,
+  (GuiConst_PTR)Ch000288,
+  (GuiConst_PTR)Ch000289,
+  (GuiConst_PTR)Ch000290,
+  (GuiConst_PTR)Ch000291,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000292,
+  (GuiConst_PTR)Ch000293,
+  (GuiConst_PTR)Ch000294,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000295,
+  (GuiConst_PTR)Ch000296,
+  (GuiConst_PTR)Ch000297,
+  (GuiConst_PTR)Ch000298,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000299,
+  (GuiConst_PTR)Ch000300,
+  (GuiConst_PTR)Ch000301,
+  (GuiConst_PTR)Ch000302,
+  (GuiConst_PTR)Ch000303,
+  (GuiConst_PTR)Ch000304,
+  (GuiConst_PTR)Ch000305,
+  (GuiConst_PTR)Ch000306,
+  (GuiConst_PTR)Ch000307,
+  (GuiConst_PTR)Ch000308,
+  (GuiConst_PTR)Ch000309,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000310,
+  (GuiConst_PTR)Ch000311,
+  (GuiConst_PTR)Ch000312,
+  (GuiConst_PTR)Ch000313,
+  (GuiConst_PTR)Ch000314,
+  (GuiConst_PTR)Ch000315,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000316,
+  (GuiConst_PTR)Ch000317,
+  (GuiConst_PTR)Ch000318,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000319,
+  (GuiConst_PTR)Ch000320,
+  (GuiConst_PTR)Ch000321,
+  (GuiConst_PTR)Ch000322,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000323,
+  (GuiConst_PTR)Ch000324,
+  (GuiConst_PTR)Ch000325,
+  (GuiConst_PTR)Ch000326,
+  (GuiConst_PTR)Ch000327,
+  (GuiConst_PTR)Ch000328,
+  (GuiConst_PTR)Ch000329,
+  (GuiConst_PTR)Ch000330,
+  (GuiConst_PTR)Ch000331,
+  (GuiConst_PTR)Ch000332,
+  (GuiConst_PTR)Ch000333,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000334,
+  (GuiConst_PTR)Ch000335,
+  (GuiConst_PTR)Ch000336,
+  (GuiConst_PTR)Ch000337,
+  (GuiConst_PTR)Ch000338,
+  (GuiConst_PTR)Ch000339,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000340,
+  (GuiConst_PTR)Ch000341,
+  (GuiConst_PTR)Ch000342,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000343,
+  (GuiConst_PTR)Ch000344,
+  (GuiConst_PTR)Ch000345,
+  (GuiConst_PTR)Ch000346,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000347,
+  (GuiConst_PTR)Ch000348,
+  (GuiConst_PTR)Ch000349,
+  (GuiConst_PTR)Ch000350,
+  (GuiConst_PTR)Ch000351,
+  (GuiConst_PTR)Ch000352,
+  (GuiConst_PTR)Ch000353,
+  (GuiConst_PTR)Ch000354,
+  (GuiConst_PTR)Ch000355,
+  (GuiConst_PTR)Ch000356,
+  (GuiConst_PTR)Ch000357,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000358,
+  (GuiConst_PTR)Ch000359,
+  (GuiConst_PTR)Ch000360,
+  (GuiConst_PTR)Ch000361,
+  (GuiConst_PTR)Ch000362,
+  (GuiConst_PTR)Ch000363,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000364,
+  (GuiConst_PTR)Ch000365,
+  (GuiConst_PTR)Ch000366,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000367,
+  (GuiConst_PTR)Ch000368,
+  (GuiConst_PTR)Ch000369,
+  (GuiConst_PTR)Ch000370,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000371,
+  (GuiConst_PTR)Ch000372,
+  (GuiConst_PTR)Ch000373,
+  (GuiConst_PTR)Ch000374,
+  (GuiConst_PTR)Ch000375,
+  (GuiConst_PTR)Ch000376,
+  (GuiConst_PTR)Ch000377,
+  (GuiConst_PTR)Ch000378,
+  (GuiConst_PTR)Ch000379,
+  (GuiConst_PTR)Ch000380,
+  (GuiConst_PTR)Ch000381,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000382,
+  (GuiConst_PTR)Ch000383,
+  (GuiConst_PTR)Ch000384,
+  (GuiConst_PTR)Ch000385,
+  (GuiConst_PTR)Ch000386,
+  (GuiConst_PTR)Ch000387,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000388,
+  (GuiConst_PTR)Ch000389,
+  (GuiConst_PTR)Ch000390,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000391,
+  (GuiConst_PTR)Ch000392,
+  (GuiConst_PTR)Ch000393,
+  (GuiConst_PTR)Ch000394,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000395,
+  (GuiConst_PTR)Ch000396,
+  (GuiConst_PTR)Ch000397,
+  (GuiConst_PTR)Ch000398,
+  (GuiConst_PTR)Ch000399,
+  (GuiConst_PTR)Ch000400,
+  (GuiConst_PTR)Ch000401,
+  (GuiConst_PTR)Ch000402,
+  (GuiConst_PTR)Ch000403,
+  (GuiConst_PTR)Ch000404,
+  (GuiConst_PTR)Ch000405,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000406,
+  (GuiConst_PTR)Ch000407,
+  (GuiConst_PTR)Ch000408,
+  (GuiConst_PTR)Ch000409,
+  (GuiConst_PTR)Ch000410,
+  (GuiConst_PTR)Ch000411,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000413,
+  (GuiConst_PTR)Ch000412,
+  (GuiConst_PTR)Ch000413
+};
+const GuiLib_FontRec Font_ANSI7 =
+{
+  32,
+  121,
+  0,
+  90,
+  6,11,
+  1,
+  2,4,8,
+  9,10,
+  10,10,
+  5,
+  5,
+  1,
+  1
+};
+const GuiLib_FontRec Font_ANSI7Bold =
+{
+  32,
+  104,
+  91,
+  164,
+  7,11,
+  1,
+  2,4,8,
+  10,10,
+  9,9,
+  6,
+  6,
+  1,
+  1
+};
+const GuiLib_FontRec Font_ANSI7Condensed =
+{
+  32,
+  104,
+  165,
+  238,
+  5,11,
+  1,
+  2,4,8,
+  9,10,
+  10,10,
+  4,
+  4,
+  1,
+  1
+};
+const GuiLib_FontRec Font_ANSI9 =
+{
+  32,
+  104,
+  239,
+  312,
+  9,14,
+  1,
+  3,5,11,
+  14,14,
+  14,14,
+  6,
+  7,
+  2,
+  2
+};
+const GuiLib_FontRec Font_ANSI11 =
+{
+  32,
+  104,
+  313,
+  386,
+  9,17,
+  1,
+  3,6,13,
+  15,16,
+  15,15,
+  8,
+  7,
+  2,
+  2
+};
+const GuiLib_FontRec Font_ANSI11Condensed =
+{
+  32,
+  104,
+  387,
+  460,
+  8,17,
+  1,
+  3,6,13,
+  15,16,
+  15,15,
+  7,
+  7,
+  1,
+  1
+};
+const GuiLib_FontRec Font_ANSI11Light =
+{
+  32,
+  104,
+  461,
+  534,
+  6,17,
+  1,
+  3,7,13,
+  15,16,
+  15,15,
+  5,
+  5,
+  1,
+  1
+};
+const GuiLib_FontRec Font_ANSI11AA =
+{
+  32,
+  104,
+  535,
+  608,
+  18,20,
+  4,
+  5,8,15,
+  19,19,
+  17,17,
+  8,
+  5,
+  2,
+  9
+};
+const GuiLib_FontRec Font_ANSI13 =
+{
+  32,
+  104,
+  609,
+  682,
+  11,21,
+  1,
+  4,7,16,
+  18,20,
+  18,19,
+  9,
+  9,
+  2,
+  2
+};
+const GuiLib_FontRec Font_ANSI17AA =
+{
+  32,
+  104,
+  683,
+  756,
+  24,29,
+  4,
+  6,11,22,
+  28,28,
+  25,26,
+  10,
+  7,
+  3,
+  12
+};
+const GuiLib_FontRec Font_ANSI19 =
+{
+  32,
+  104,
+  757,
+  830,
+  17,31,
+  1,
+  5,10,23,
+  25,28,
+  25,26,
+  14,
+  14,
+  3,
+  3
+};
+const GuiLib_FontRec Font_ANSI23AA =
+{
+  32,
+  104,
+  831,
+  904,
+  28,37,
+  4,
+  7,13,29,
+  36,36,
+  32,33,
+  14,
+  11,
+  4,
+  14
+};
+const GuiLib_FontRec Font_ANSI24 =
+{
+  32,
+  104,
+  905,
+  978,
+  19,39,
+  1,
+  7,14,30,
+  32,36,
+  32,33,
+  16,
+  15,
+  3,
+  3
+};
+const GuiLib_FontRec Font_ANSI30 =
+{
+  32,
+  104,
+  979,
+  1052,
+  21,47,
+  1,
+  8,18,37,
+  40,44,
+  39,41,
+  18,
+  17,
+  4,
+  3
+};
+const GuiLib_FontRec Font_Unicode7_14Bold =
+{
+  32,
+  104,
+  1053,
+  1126,
+  15,16,
+  1,
+  5,7,11,
+  14,15,
+  14,15,
+  14,
+  6,
+  2,
+  2
+};
+const GuiLib_FontRec Font_Unicode9_15 =
+{
+  32,
+  104,
+  1127,
+  1200,
+  16,17,
+  1,
+  4,6,12,
+  15,16,
+  15,16,
+  15,
+  7,
+  2,
+  2
+};
+const GuiLib_FontRec Font_Unicode11_16 =
+{
+  32,
+  104,
+  1201,
+  1274,
+  17,18,
+  1,
+  3,6,13,
+  16,17,
+  15,16,
+  16,
+  7,
+  2,
+  3
+};
+const GuiLib_FontRecPtr GuiFont_FontList[GuiFont_FontCnt] = 
+{
+  (GuiLib_FontRecPtr)&Font_ANSI7,
+  (GuiLib_FontRecPtr)&Font_ANSI7,
+  (GuiLib_FontRecPtr)&Font_ANSI7Bold,
+  (GuiLib_FontRecPtr)&Font_ANSI7Condensed,
+  (GuiLib_FontRecPtr)&Font_ANSI9,
+  (GuiLib_FontRecPtr)&Font_ANSI11,
+  (GuiLib_FontRecPtr)&Font_ANSI11Condensed,
+  (GuiLib_FontRecPtr)&Font_ANSI11Light,
+  (GuiLib_FontRecPtr)&Font_ANSI11AA,
+  (GuiLib_FontRecPtr)&Font_ANSI13,
+  (GuiLib_FontRecPtr)&Font_ANSI17AA,
+  (GuiLib_FontRecPtr)&Font_ANSI19,
+  (GuiLib_FontRecPtr)&Font_ANSI23AA,
+  (GuiLib_FontRecPtr)&Font_ANSI24,
+  (GuiLib_FontRecPtr)&Font_ANSI30,
+  (GuiLib_FontRecPtr)&Font_Unicode7_14Bold,
+  (GuiLib_FontRecPtr)&Font_Unicode9_15,
+  (GuiLib_FontRecPtr)&Font_Unicode11_16
+};
+const GuiConst_INT8U GuiFont_LanguageActive[GuiConst_LANGUAGE_CNT] =
+{
+  1
+};
+const GuiConst_INT16U GuiFont_LanguageIndex[GuiConst_LANGUAGE_CNT] =
+{
+  0
+};
+const GuiConst_INT8U GuiFont_LanguageTextDir[GuiConst_LANGUAGE_CNT] =
+{
+  GuiLib_LANGUAGE_TEXTDIR_LEFTTORIGHT
+};
+const GuiConst_INT8U GuiFont_DecimalChar[GuiConst_LANGUAGE_CNT] =
+{
+  GuiLib_DECIMAL_PERIOD
+};
+
+
+// --------------------------  CUSTOM SECTION  ---------------------------
+
+// My own code is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+
+// My own footer is inserted here - edit it in the C code generation window
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIUpdated/GuiFont.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,81 @@
+// My own header is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+//
+//                            *** ATTENTION ***
+//
+//   This file is maintained by the easyGUI Graphical User Interface
+//   program. Modifications should therefore not be made directly in
+//   this file, as the changes will be lost next time easyGUI creates
+//   the file.
+//
+//                            *** ATTENTION ***
+//
+// -----------------------------------------------------------------------
+
+//
+// Generated by easyGUI version 6.0.9.005
+// Generated for project BitmapLoader
+// in project file C:\easyGUI Projects\BitmapLoader.gui
+//
+
+// Ensure that this header file is only included once
+#ifndef __GUIFONT_H
+#define __GUIFONT_H
+
+// --------------------------  INCLUDE SECTION  --------------------------
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+
+// ---------------------  GLOBAL DECLARATION SECTION  --------------------
+
+#define GuiFont_CharCnt  1275
+extern const GuiConst_PTR const GuiFont_ChPtrList[GuiFont_CharCnt];
+
+// Fonts
+// =====
+
+#define GuiFont_DEFAULT_TEXT_FONT      0
+
+#define GuiFont_ANSI7                  1
+#define GuiFont_ANSI7Bold              2
+#define GuiFont_ANSI7Condensed         3
+#define GuiFont_ANSI9                  4
+#define GuiFont_ANSI11                 5
+#define GuiFont_ANSI11Condensed        6
+#define GuiFont_ANSI11Light            7
+#define GuiFont_ANSI11AA               8
+#define GuiFont_ANSI13                 9
+#define GuiFont_ANSI17AA               10
+#define GuiFont_ANSI19                 11
+#define GuiFont_ANSI23AA               12
+#define GuiFont_ANSI24                 13
+#define GuiFont_ANSI30                 14
+#define GuiFont_Unicode7_14Bold        15
+#define GuiFont_Unicode9_15            16
+#define GuiFont_Unicode11_16           17
+
+#define GuiFont_FontCnt  18
+extern const GuiLib_FontRecPtr GuiFont_FontList[GuiFont_FontCnt];
+
+extern const GuiConst_INT8U GuiFont_LanguageActive[GuiConst_LANGUAGE_CNT];
+
+extern const GuiConst_INT16U GuiFont_LanguageIndex[GuiConst_LANGUAGE_CNT];
+
+extern const GuiConst_INT8U GuiFont_LanguageTextDir[GuiConst_LANGUAGE_CNT];
+
+extern const GuiConst_INT8U GuiFont_DecimalChar[GuiConst_LANGUAGE_CNT];
+
+
+// --------------------------  CUSTOM SECTION  ---------------------------
+
+// My own code is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+
+#endif
+
+// -----------------------------------------------------------------------
+
+// My own footer is inserted here - edit it in the C code generation window
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIUpdated/GuiStruct.c	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,14577 @@
+// My own header is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+//
+//                            *** ATTENTION ***
+//
+//   This file is maintained by the easyGUI Graphical User Interface
+//   program. Modifications should therefore not be made directly in
+//   this file, as the changes will be lost next time easyGUI creates
+//   the file.
+//
+//                            *** ATTENTION ***
+//
+// -----------------------------------------------------------------------
+
+//
+// Generated by easyGUI version 6.0.9.005
+// Generated for project GC500_2_5inch_bitmap_loader
+// in project file C:\easyGUI Projects\GC500_2_5inch_bitmap_loader.gui
+//
+
+// --------------------------  INCLUDE SECTION  --------------------------
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+
+// ---------------------  GLOBAL DECLARATION SECTION  --------------------
+
+const GuiConst_INT8U GuiStruct_00000[29] =
+{
+  2,10,80,12,0,0,0,0,0,31,3,223,1,0,0,10,80,12,0,
+  0,0,0,0,31,3,223,1,1,0
+};
+const GuiConst_INT8U GuiStruct_00001[73] =
+{
+  4,10,80,15,64,0,0,0,0,10,0,10,0,173,0,167,0,2,0,
+  10,80,15,192,0,0,0,0,22,3,10,0,173,0,167,0,3,0,10,80,
+  15,64,0,0,0,0,10,0,190,0,173,0,167,0,4,0,10,80,15,192,
+  0,0,0,0,22,3,190,0,173,0,167,0,5,0
+};
+const GuiConst_INT8U GuiStruct_00002[85] =
+{
+  5,0,0,2,0,2,72,0,0,13,0,1,0,6,81,119,101,114,116,
+  121,0,10,80,12,0,0,0,0,0,123,1,184,0,6,0,10,80,13,0,
+  0,0,0,0,144,1,123,1,184,0,7,0,10,80,14,0,0,0,0,0,
+  200,0,123,1,184,0,8,0,10,80,15,0,0,0,0,0,144,1,200,0,
+  123,1,184,0,9,0
+};
+const GuiConst_INT8U GuiStruct_00003[109] =
+{
+  6,10,80,15,128,0,0,0,0,144,1,140,0,79,0,39,0,10,0,
+  10,80,15,0,0,0,0,0,144,1,200,0,79,0,39,0,11,0,10,80,
+  15,0,0,0,0,0,240,0,140,0,39,0,19,0,12,0,10,80,15,0,
+  0,0,0,0,240,0,170,0,39,0,19,0,13,0,10,80,15,0,0,0,
+  0,0,28,2,140,0,59,0,29,0,14,0,10,80,15,0,0,0,0,0,
+  28,2,180,0,59,0,29,0,15,0
+};
+const GuiConst_PTR const GuiStruct_StructPtrList[GuiStruct_StructCnt] =
+{
+  (GuiConst_PTR)GuiStruct_00000,
+  (GuiConst_PTR)GuiStruct_00001,
+  (GuiConst_PTR)GuiStruct_00002,
+  (GuiConst_PTR)GuiStruct_00003
+};
+const GuiConst_INT16U GuiStruct_StructNdxList[GuiStruct_StructCnt] =
+{
+  65535,
+  65535,
+  0,
+  65535
+};
+const GuiConst_PTR const GuiStruct_VarPtrList[GuiStruct_VarPtrCnt] =
+{
+  0
+};
+
+const GuiConst_INT8U GuiStruct_VarTypeList[GuiStruct_VarPtrCnt] =
+{
+  0
+};
+
+const GuiConst_INT8U GuiBitmap_0[123419] =
+{
+  32,3,224,1,28,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,127,255,255,36,255,255,130,125,239,8,66,30,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,35,255,255,131,190,247,138,82,
+  0,0,30,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,127,
+  255,255,35,255,255,131,203,90,0,0,64,0,32,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,34,255,255,132,77,107,0,0,
+  64,0,64,0,31,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,127,255,255,33,255,255,130,47,132,0,0,3,64,0,31,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,32,255,255,130,112,
+  140,0,0,4,64,0,33,0,127,255,255,127,255,255,127,255,255,127,255,255,
+  127,255,255,127,255,255,31,255,255,131,51,165,0,0,0,0,4,64,0,33,
+  0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,30,
+  255,255,131,116,165,64,8,0,0,5,64,0,34,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,29,255,255,130,182,181,65,8,
+  3,0,0,4,64,0,34,0,127,255,255,127,255,255,127,255,255,127,255,255,
+  127,255,255,127,255,255,28,255,255,130,56,198,129,16,4,0,0,4,64,0,
+  34,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,
+  27,255,255,130,121,206,195,24,5,0,0,4,64,0,34,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,127,255,255,127,255,255,26,255,255,130,186,214,
+  4,33,7,0,0,3,64,0,34,0,127,255,255,127,255,255,127,255,255,127,
+  255,255,127,255,255,127,255,255,25,255,255,130,60,231,134,49,6,0,0,5,
+  64,0,34,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,127,
+  255,255,24,255,255,130,125,239,199,57,6,0,0,6,64,0,34,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,23,255,255,130,
+  190,247,8,66,7,0,0,6,64,0,34,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,127,255,255,127,255,255,22,255,255,130,254,255,138,82,8,0,
+  0,6,64,0,32,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,127,255,255,22,255,255,129,202,82,9,0,0,6,64,0,36,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,21,255,255,131,
+  76,99,0,0,64,0,8,0,0,6,64,0,40,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,20,255,255,133,47,132,64,0,
+  128,0,64,0,64,0,7,0,0,6,64,0,44,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,19,255,255,135,176,140,128,0,
+  192,8,128,8,128,0,64,0,64,0,6,0,0,6,64,0,46,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,18,255,255,136,
+  51,165,192,16,0,17,0,17,192,8,128,8,128,0,64,0,6,0,0,6,
+  64,0,52,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,127,
+  255,255,17,255,255,139,180,173,130,33,65,25,1,25,0,17,192,16,192,8,
+  128,8,128,0,64,0,64,0,4,0,0,6,64,0,56,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,127,255,255,127,255,255,16,255,255,141,246,181,
+  195,41,131,33,130,33,66,33,1,25,0,17,192,16,192,8,128,8,128,0,
+  64,0,64,0,3,0,0,6,64,0,63,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,127,255,255,127,255,255,15,255,255,146,119,198,69,58,4,50,
+  196,41,131,41,130,33,65,25,0,25,0,17,192,16,192,8,128,0,128,0,
+  64,0,0,0,64,0,64,0,0,0,5,64,0,55,0,127,255,255,127,255,
+  255,127,255,255,127,255,255,127,255,255,127,255,255,14,255,255,142,185,206,199,
+  74,68,50,69,58,4,50,195,41,131,33,66,33,65,25,0,25,0,17,192,
+  16,192,8,128,0,10,64,0,59,0,127,255,255,127,255,255,127,255,255,127,
+  255,255,127,255,255,127,255,255,13,255,255,144,250,214,199,74,69,58,133,58,
+  69,58,4,50,196,49,195,41,130,33,65,33,65,25,0,17,0,17,192,16,
+  192,8,128,0,9,64,0,63,0,127,255,255,127,255,255,127,255,255,127,255,
+  255,127,255,255,127,255,255,12,255,255,146,59,223,8,83,69,58,134,66,133,
+  66,69,58,68,58,4,50,195,41,131,41,130,33,65,33,1,25,0,17,0,
+  17,192,16,128,8,128,0,8,64,0,67,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,127,255,255,127,255,255,11,255,255,148,60,231,73,91,133,58,
+  198,66,134,66,134,66,69,58,69,58,4,50,196,41,195,41,130,33,130,33,
+  65,25,1,25,0,17,192,16,192,8,128,8,128,0,7,64,0,71,0,127,
+  255,255,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,10,255,255,
+  150,125,239,138,99,133,58,198,66,198,66,134,66,134,66,133,58,69,58,4,
+  50,4,50,195,41,195,41,130,33,66,33,65,25,0,25,0,17,192,16,192,
+  8,128,0,128,0,6,64,0,73,0,127,255,255,127,255,255,127,255,255,127,
+  255,255,127,255,255,127,255,255,9,255,255,151,189,247,203,107,133,58,198,74,
+  198,66,198,66,134,66,134,66,133,66,69,58,69,58,4,50,196,49,195,41,
+  130,33,130,33,65,33,65,25,0,25,0,17,192,8,128,8,128,0,6,64,
+  0,75,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,8,255,255,131,190,247,44,108,133,58,3,198,74,147,198,66,198,66,134,
+  66,134,66,133,58,69,58,68,50,4,50,195,41,195,41,130,33,129,33,65,
+  25,1,25,0,17,192,16,192,8,128,8,128,0,5,64,0,140,0,78,255,
+  255,131,245,189,245,189,133,115,4,0,99,131,133,115,245,189,245,189,26,255,
+  255,131,245,189,245,189,133,115,4,0,99,131,133,115,245,189,245,189,39,255,
+  255,132,124,239,245,189,245,189,133,115,6,0,99,132,40,132,245,189,245,189,
+  118,206,127,255,255,127,255,255,127,255,255,127,255,255,84,255,255,131,190,247,
+  45,116,133,58,4,198,74,152,198,66,198,66,134,66,134,66,133,58,69,58,
+  68,58,4,50,196,49,195,41,130,41,130,33,65,33,1,25,0,25,0,17,
+  192,8,128,8,128,0,64,0,64,0,0,0,64,0,64,0,137,0,36,255,
+  255,129,245,189,21,0,99,129,118,206,17,255,255,129,179,181,12,0,99,130,
+  179,181,190,247,21,255,255,129,179,181,12,0,99,130,179,181,190,247,34,255,
+  255,130,245,189,40,132,15,0,99,130,107,140,245,189,63,255,255,130,124,239,
+  245,189,4,0,99,130,245,189,124,239,127,255,255,127,255,255,127,255,255,127,
+  255,255,10,255,255,130,110,132,133,58,6,198,74,146,198,66,198,66,134,66,
+  133,66,69,58,69,58,4,50,4,50,195,41,195,41,130,33,130,33,65,25,
+  1,25,0,25,0,17,192,8,128,8,5,64,0,143,0,36,255,255,129,245,
+  189,21,0,99,129,118,206,15,255,255,130,249,222,40,132,14,0,99,130,133,
+  115,184,214,18,255,255,130,249,222,40,132,14,0,99,130,133,115,184,214,31,
+  255,255,130,249,222,40,132,20,0,99,130,113,173,190,247,59,255,255,130,59,
+  231,133,115,7,0,99,129,249,222,127,255,255,127,255,255,127,255,255,127,255,
+  255,7,255,255,131,254,247,175,132,133,58,7,198,74,147,198,66,198,66,134,
+  66,134,66,133,58,69,58,68,58,4,50,196,41,195,41,131,41,130,33,65,
+  33,65,25,0,25,0,17,192,16,192,8,128,0,4,64,0,128,0,36,255,
+  255,129,245,189,21,0,99,129,118,206,14,255,255,129,249,222,18,0,99,129,
+  118,206,16,255,255,129,249,222,18,0,99,129,118,206,29,255,255,129,245,189,
+  22,0,99,129,40,132,60,255,255,129,40,132,8,0,99,130,133,115,124,239,
+  127,255,255,127,255,255,127,255,255,127,255,255,6,255,255,130,240,140,133,58,
+  8,198,74,3,198,66,145,134,66,133,66,69,58,68,58,4,50,4,50,195,
+  41,195,41,130,33,66,33,65,25,1,25,0,17,0,17,192,8,128,0,128,
+  0,3,64,0,131,0,36,255,255,129,245,189,21,0,99,129,118,206,13,255,
+  255,129,59,231,20,0,99,129,184,214,14,255,255,129,59,231,20,0,99,129,
+  184,214,27,255,255,129,245,189,23,0,99,129,245,189,59,255,255,129,184,214,
+  10,0,99,129,179,181,127,255,255,127,255,255,127,255,255,127,255,255,5,255,
+  255,132,49,149,133,58,198,74,199,74,8,198,74,147,198,66,198,66,134,66,
+  134,66,69,58,69,58,4,50,4,50,195,41,195,41,130,33,66,33,65,25,
+  1,25,0,17,0,17,192,16,192,8,128,0,3,64,0,142,0,36,255,255,
+  129,245,189,21,0,99,129,118,206,12,255,255,130,190,247,40,132,20,0,99,
+  130,133,115,124,239,12,255,255,130,190,247,40,132,20,0,99,130,133,115,124,
+  239,25,255,255,129,59,231,24,0,99,129,59,231,59,255,255,129,245,189,10,
+  0,99,129,173,148,127,255,255,127,255,255,127,255,255,127,255,255,4,255,255,
+  132,50,149,133,58,198,74,199,74,9,198,74,150,198,66,198,66,134,66,134,
+  66,69,58,69,58,68,50,4,50,196,49,195,41,131,41,130,33,65,33,1,
+  25,0,25,0,17,192,16,192,8,128,0,128,0,64,0,64,0,130,0,36,
+  255,255,129,245,189,21,0,99,129,118,206,12,255,255,129,245,189,22,0,99,
+  129,113,173,12,255,255,129,245,189,22,0,99,129,113,173,25,255,255,129,173,
+  148,23,0,99,129,107,140,60,255,255,129,245,189,10,0,99,129,173,148,127,
+  255,255,127,255,255,127,255,255,127,255,255,3,255,255,133,115,157,133,58,198,
+  66,199,74,199,74,9,198,74,3,198,66,144,134,66,133,58,69,58,68,58,
+  4,50,4,50,195,41,131,41,130,33,65,33,1,25,0,25,0,17,0,17,
+  192,8,192,8,3,128,0,138,0,36,255,255,129,245,189,21,0,99,129,118,
+  206,11,255,255,129,124,239,24,0,99,129,124,239,10,255,255,129,124,239,24,
+  0,99,129,124,239,23,255,255,129,249,222,24,0,99,129,245,189,60,255,255,
+  129,184,214,10,0,99,129,179,181,127,255,255,127,255,255,127,255,255,127,255,
+  255,137,255,255,255,255,180,173,133,58,198,66,198,74,198,74,199,74,199,74,
+  8,198,74,3,198,66,147,134,66,134,66,69,58,69,58,4,50,4,50,195,
+  41,195,41,130,33,66,33,65,25,1,25,0,17,0,17,192,16,192,8,128,
+  8,128,0,128,0,170,0,36,255,255,129,245,189,21,0,99,129,118,206,11,
+  255,255,129,245,189,9,0,99,134,47,165,59,231,255,255,255,255,184,214,107,
+  140,9,0,99,129,113,173,10,255,255,129,245,189,9,0,99,134,47,165,59,
+  231,255,255,255,255,184,214,107,140,9,0,99,129,113,173,23,255,255,129,47,
+  165,24,0,99,129,124,239,60,255,255,130,190,247,40,132,9,0,99,129,124,
+  239,127,255,255,127,255,255,127,255,255,127,255,255,134,255,255,180,173,133,66,
+  198,66,199,74,198,74,3,199,74,9,198,74,149,198,66,198,66,134,66,134,
+  66,133,58,69,58,68,50,4,50,196,41,195,41,130,33,66,33,65,25,1,
+  25,0,17,0,17,192,16,192,8,192,8,128,8,128,0,184,0,36,255,255,
+  129,245,189,21,0,99,129,118,206,11,255,255,129,133,115,8,0,99,129,179,
+  181,6,255,255,129,107,140,8,0,99,130,133,115,190,247,9,255,255,129,133,
+  115,8,0,99,129,179,181,6,255,255,129,107,140,8,0,99,130,133,115,190,
+  247,22,255,255,129,133,115,10,0,99,130,179,181,184,214,5,255,255,131,249,
+  222,245,189,179,181,3,0,99,129,173,148,62,255,255,129,249,222,8,0,99,
+  129,118,206,127,255,255,127,255,255,127,255,255,127,255,255,132,255,255,54,190,
+  134,66,198,66,3,198,74,131,199,74,198,74,199,74,8,198,74,3,198,66,
+  147,134,66,134,66,133,58,69,58,69,50,4,50,4,50,195,41,131,41,130,
+  33,65,25,1,25,0,25,0,17,0,17,192,16,192,8,128,8,128,8,179,
+  0,36,255,255,129,245,189,7,0,99,129,249,222,24,255,255,129,184,214,8,
+  0,99,129,40,132,7,255,255,130,124,239,133,115,8,0,99,129,184,214,8,
+  255,255,129,184,214,8,0,99,129,40,132,7,255,255,130,124,239,133,115,8,
+  0,99,129,184,214,21,255,255,129,59,231,9,0,99,130,133,115,59,231,11,
+  255,255,131,249,222,113,173,118,206,63,255,255,130,124,239,245,189,4,0,99,
+  130,245,189,59,231,127,255,255,127,255,255,127,255,255,127,255,255,132,255,255,
+  54,190,198,66,198,66,4,198,74,4,199,74,8,198,74,149,198,66,198,66,
+  134,66,134,66,133,58,69,58,69,58,4,50,4,50,195,41,131,41,130,33,
+  66,33,65,25,1,25,0,25,0,17,192,16,192,8,192,8,128,8,146,0,
+  36,255,255,129,245,189,7,0,99,129,249,222,24,255,255,129,179,181,8,0,
+  99,129,245,189,8,255,255,129,113,173,8,0,99,129,113,173,8,255,255,129,
+  179,181,8,0,99,129,245,189,8,255,255,129,113,173,8,0,99,129,113,173,
+  21,255,255,129,118,206,9,0,99,129,118,206,127,255,255,127,255,255,127,255,
+  255,127,255,255,86,255,255,131,120,198,198,66,134,66,5,198,74,4,199,74,
+  9,198,74,148,198,66,198,66,134,66,134,66,69,58,69,58,68,50,4,50,
+  196,41,195,41,130,33,130,33,65,33,1,25,0,25,0,17,192,16,192,16,
+  192,8,192,8,146,0,36,255,255,129,245,189,7,0,99,129,249,222,24,255,
+  255,129,107,140,8,0,99,129,190,247,8,255,255,129,59,231,8,0,99,129,
+  133,115,8,255,255,129,107,140,8,0,99,129,190,247,8,255,255,129,59,231,
+  8,0,99,129,133,115,21,255,255,129,245,189,9,0,99,129,190,247,127,255,
+  255,127,255,255,127,255,255,127,255,255,85,255,255,131,184,206,199,74,134,66,
+  4,198,74,7,199,74,8,198,74,148,198,66,198,66,134,66,134,66,133,58,
+  69,58,69,58,4,50,4,50,195,41,131,41,130,33,65,33,1,25,0,25,
+  0,17,0,17,192,16,192,8,192,8,150,0,36,255,255,129,245,189,7,0,
+  99,129,249,222,23,255,255,129,190,247,8,0,99,129,107,140,10,255,255,129,
+  133,115,8,0,99,129,124,239,6,255,255,129,190,247,8,0,99,129,107,140,
+  10,255,255,129,133,115,8,0,99,129,124,239,20,255,255,129,245,189,8,0,
+  99,129,40,132,127,255,255,127,255,255,127,255,255,127,255,255,85,255,255,133,
+  185,206,7,75,133,66,198,74,198,66,4,198,74,7,199,74,7,198,74,148,
+  198,66,198,66,134,66,134,66,133,58,69,58,69,58,4,50,4,50,195,41,
+  195,41,130,33,65,33,65,25,1,25,0,17,0,17,192,16,192,16,192,8,
+  155,0,36,255,255,129,245,189,7,0,99,129,249,222,23,255,255,129,184,214,
+  8,0,99,129,179,181,10,255,255,129,47,165,8,0,99,129,184,214,6,255,
+  255,129,184,214,8,0,99,129,179,181,10,255,255,129,47,165,8,0,99,129,
+  184,214,20,255,255,129,245,189,8,0,99,129,133,115,127,255,255,127,255,255,
+  127,255,255,127,255,255,84,255,255,138,185,214,199,74,133,66,198,66,198,66,
+  198,74,198,74,199,74,199,74,198,74,6,199,74,9,198,74,147,198,66,134,
+  66,134,66,134,58,69,58,69,58,68,50,4,50,196,49,195,41,130,33,130,
+  33,65,25,1,25,0,25,0,17,0,17,192,16,192,16,182,0,36,255,255,
+  129,245,189,7,0,99,129,249,222,23,255,255,129,179,181,8,0,99,129,118,
+  206,10,255,255,129,245,189,8,0,99,129,245,189,6,255,255,129,179,181,8,
+  0,99,129,118,206,10,255,255,129,245,189,8,0,99,129,245,189,20,255,255,
+  129,245,189,9,0,99,129,59,231,32,255,255,130,245,189,245,189,5,0,99,
+  131,40,132,245,189,118,206,61,255,255,130,245,189,245,189,5,0,99,131,40,
+  132,245,189,118,206,127,255,255,127,255,255,127,255,255,96,255,255,131,250,222,
+  8,83,133,58,4,198,66,130,198,74,198,74,8,199,74,9,198,74,147,198,
+  66,198,66,134,66,134,66,133,58,69,58,69,58,4,50,4,50,195,41,131,
+  41,130,33,65,33,1,25,0,25,0,17,0,17,192,16,192,16,234,0,36,
+  255,255,129,245,189,7,0,99,129,249,222,23,255,255,129,47,165,8,0,99,
+  129,59,231,10,255,255,129,184,214,8,0,99,129,113,173,6,255,255,129,47,
+  165,8,0,99,129,59,231,10,255,255,129,184,214,8,0,99,129,113,173,20,
+  255,255,129,118,206,9,0,99,129,47,165,29,255,255,130,59,231,47,165,12,
+  0,99,129,245,189,11,255,255,129,40,132,6,0,99,129,59,231,4,255,255,
+  130,118,206,173,148,3,0,99,130,173,148,245,189,4,255,255,9,0,99,13,
+  255,255,130,59,231,47,165,12,0,99,129,245,189,16,255,255,131,118,206,245,
+  189,133,115,5,0,99,132,133,115,245,189,245,189,59,231,127,255,255,127,255,
+  255,127,255,255,65,255,255,131,251,222,73,83,133,58,5,198,66,129,199,66,
+  3,199,74,129,198,74,6,199,74,8,198,74,147,198,66,198,66,134,66,134,
+  66,133,58,69,58,69,58,68,50,4,50,195,41,131,41,130,33,65,33,65,
+  25,1,25,0,17,0,17,192,16,192,16,216,0,36,255,255,129,245,189,7,
+  0,99,129,249,222,23,255,255,129,107,140,8,0,99,129,190,247,10,255,255,
+  129,59,231,8,0,99,129,173,148,6,255,255,129,107,140,8,0,99,129,190,
+  247,10,255,255,129,59,231,8,0,99,129,173,148,20,255,255,129,249,222,10,
+  0,99,129,245,189,27,255,255,129,245,189,15,0,99,130,107,140,190,247,9,
+  255,255,129,40,132,6,0,99,133,118,206,255,255,255,255,124,239,107,140,6,
+  0,99,129,40,132,4,255,255,9,0,99,12,255,255,129,245,189,15,0,99,
+  130,107,140,190,247,12,255,255,129,245,189,14,0,99,130,179,181,59,231,127,
+  255,255,127,255,255,127,255,255,61,255,255,131,60,231,73,91,133,58,5,198,
+  66,129,198,74,11,199,74,8,198,74,130,198,66,198,66,3,134,66,142,133,
+  58,69,58,69,58,4,50,196,49,195,41,130,33,66,33,65,25,1,25,0,
+  25,0,17,0,17,192,16,213,0,36,255,255,129,245,189,7,0,99,129,249,
+  222,23,255,255,129,133,115,8,0,99,11,255,255,129,190,247,8,0,99,129,
+  40,132,6,255,255,129,133,115,8,0,99,11,255,255,129,190,247,8,0,99,
+  129,40,132,20,255,255,129,190,247,11,0,99,129,245,189,25,255,255,129,173,
+  148,17,0,99,130,40,132,124,239,8,255,255,129,40,132,6,0,99,132,179,
+  181,255,255,190,247,40,132,7,0,99,129,173,148,4,255,255,9,0,99,11,
+  255,255,129,173,148,17,0,99,130,40,132,124,239,9,255,255,130,190,247,107,
+  140,17,0,99,130,47,165,190,247,127,255,255,127,255,255,127,255,255,58,255,
+  255,131,124,231,74,91,133,58,6,198,66,8,199,74,129,198,74,3,199,74,
+  9,198,74,146,198,66,198,66,134,66,134,66,133,58,69,58,69,58,4,50,
+  4,50,195,41,131,41,130,33,65,33,65,25,0,25,0,17,0,17,192,16,
+  197,0,36,255,255,129,245,189,7,0,99,129,249,222,22,255,255,129,190,247,
+  8,0,99,129,40,132,12,255,255,9,0,99,5,255,255,129,190,247,8,0,
+  99,129,40,132,12,255,255,9,0,99,21,255,255,129,107,140,11,0,99,129,
+  47,165,23,255,255,129,173,148,19,0,99,129,107,140,8,255,255,129,40,132,
+  6,0,99,131,107,140,255,255,47,165,8,0,99,129,113,173,4,255,255,9,
+  0,99,10,255,255,129,173,148,19,0,99,129,107,140,9,255,255,129,107,140,
+  18,0,99,129,107,140,127,255,255,127,255,255,127,255,255,58,255,255,131,125,
+  239,74,91,133,58,7,198,66,132,198,74,199,66,199,74,198,74,7,199,74,
+  10,198,74,143,198,66,198,66,134,66,134,66,133,66,69,58,69,58,68,50,
+  4,50,195,41,195,41,130,33,65,33,1,25,0,25,3,0,17,210,0,36,
+  255,255,129,245,189,7,0,99,129,107,140,3,0,99,131,133,115,245,189,245,
+  189,16,255,255,129,124,239,8,0,99,129,107,140,12,255,255,129,40,132,8,
+  0,99,129,190,247,4,255,255,129,124,239,8,0,99,129,107,140,12,255,255,
+  129,40,132,8,0,99,129,190,247,20,255,255,129,118,206,12,0,99,130,107,
+  140,59,231,20,255,255,129,179,181,21,0,99,129,245,189,7,255,255,129,40,
+  132,6,0,99,130,133,115,249,222,9,0,99,129,245,189,4,255,255,9,0,
+  99,9,255,255,129,179,181,21,0,99,129,245,189,7,255,255,129,245,189,19,
+  0,99,129,179,181,127,255,255,127,255,255,127,255,255,57,255,255,131,125,239,
+  139,99,133,58,9,198,66,7,199,74,13,198,74,143,198,66,198,66,134,66,
+  134,66,133,66,133,58,69,58,68,58,4,50,195,49,195,41,130,33,65,33,
+  65,25,0,25,3,0,17,202,0,36,255,255,129,245,189,15,0,99,129,179,
+  181,14,255,255,129,249,222,8,0,99,129,173,148,12,255,255,129,40,132,8,
+  0,99,129,124,239,4,255,255,129,249,222,8,0,99,129,173,148,12,255,255,
+  129,40,132,8,0,99,129,124,239,20,255,255,130,190,247,40,132,13,0,99,
+  129,245,189,18,255,255,129,59,231,22,0,99,130,133,115,190,247,6,255,255,
+  129,40,132,17,0,99,129,118,206,4,255,255,9,0,99,8,255,255,129,59,
+  231,22,0,99,130,133,115,190,247,5,255,255,130,190,247,133,115,19,0,99,
+  129,249,222,127,255,255,127,255,255,127,255,255,56,255,255,131,189,239,203,107,
+  133,58,9,198,66,131,199,74,199,74,198,66,6,199,74,12,198,74,3,198,
+  66,140,134,66,133,66,133,58,69,58,68,58,4,50,4,50,195,41,130,33,
+  66,33,65,25,0,25,3,0,17,192,0,36,255,255,129,245,189,16,0,99,
+  130,133,115,249,222,12,255,255,129,249,222,8,0,99,129,173,148,12,255,255,
+  129,107,140,8,0,99,129,59,231,4,255,255,129,249,222,8,0,99,129,173,
+  148,12,255,255,129,107,140,8,0,99,129,59,231,21,255,255,129,118,206,14,
+  0,99,130,107,140,59,231,16,255,255,129,173,148,23,0,99,129,118,206,6,
+  255,255,129,40,132,17,0,99,129,249,222,4,255,255,9,0,99,8,255,255,
+  129,173,148,23,0,99,129,118,206,5,255,255,129,245,189,19,0,99,129,133,
+  115,127,255,255,127,255,255,127,255,255,56,255,255,131,189,239,204,107,69,58,
+  9,198,66,129,198,74,10,199,74,12,198,74,3,198,66,139,133,66,133,66,
+  69,58,68,58,4,50,4,50,195,41,131,41,66,33,65,25,0,25,3,0,
+  17,227,0,36,255,255,129,245,189,18,0,99,129,184,214,11,255,255,129,118,
+  206,8,0,99,129,113,173,12,255,255,129,173,148,8,0,99,129,249,222,4,
+  255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,148,8,0,99,
+  129,249,222,22,255,255,129,173,148,15,0,99,129,245,189,14,255,255,129,249,
+  222,10,0,99,134,179,181,190,247,255,255,255,255,184,214,40,132,8,0,99,
+  129,173,148,6,255,255,129,40,132,17,0,99,129,124,239,4,255,255,9,0,
+  99,7,255,255,129,249,222,10,0,99,134,179,181,190,247,255,255,255,255,184,
+  214,40,132,8,0,99,129,173,148,5,255,255,129,47,165,19,0,99,129,47,
+  165,127,255,255,127,255,255,127,255,255,55,255,255,131,190,247,45,116,69,58,
+  9,198,66,130,198,74,198,74,8,199,74,130,198,74,199,74,12,198,74,3,
+  198,66,139,134,66,133,66,133,58,69,58,68,50,4,50,195,41,130,41,130,
+  33,65,33,1,25,3,0,17,239,0,36,255,255,129,245,189,19,0,99,129,
+  249,222,10,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,148,
+  8,0,99,129,249,222,4,255,255,129,118,206,8,0,99,129,113,173,12,255,
+  255,129,173,148,8,0,99,129,249,222,22,255,255,130,124,239,40,132,15,0,
+  99,130,107,140,124,239,12,255,255,129,113,173,9,0,99,129,249,222,5,255,
+  255,130,124,239,133,115,8,0,99,129,190,247,5,255,255,129,40,132,17,0,
+  99,5,255,255,9,0,99,7,255,255,129,113,173,9,0,99,129,249,222,5,
+  255,255,130,124,239,133,115,8,0,99,129,190,247,4,255,255,129,40,132,8,
+  0,99,130,133,115,118,206,4,255,255,130,245,189,179,181,3,0,99,129,245,
+  189,127,255,255,127,255,255,127,255,255,54,255,255,131,189,239,45,116,69,58,
+  10,198,66,130,198,74,198,74,10,199,74,13,198,74,144,198,66,198,66,134,
+  66,133,66,133,58,69,58,68,50,4,50,195,41,131,41,130,33,65,25,1,
+  25,0,25,0,17,0,17,236,0,36,255,255,129,245,189,19,0,99,130,133,
+  115,124,239,9,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,
+  148,8,0,99,129,249,222,4,255,255,129,118,206,8,0,99,129,113,173,12,
+  255,255,129,173,148,8,0,99,129,249,222,23,255,255,130,59,231,133,115,15,
+  0,99,130,133,115,249,222,11,255,255,129,133,115,8,0,99,129,245,189,7,
+  255,255,129,245,189,8,0,99,129,249,222,5,255,255,129,40,132,10,0,99,
+  130,107,140,245,189,3,255,255,130,249,222,245,189,5,255,255,9,0,99,7,
+  255,255,129,133,115,8,0,99,129,245,189,7,255,255,129,245,189,8,0,99,
+  129,249,222,4,255,255,9,0,99,129,249,222,8,255,255,131,118,206,173,148,
+  190,247,127,255,255,127,255,255,127,255,255,53,255,255,131,190,247,45,124,69,
+  50,12,198,66,129,198,74,11,199,74,12,198,74,3,198,66,141,133,66,133,
+  58,69,58,68,58,4,50,195,41,131,41,130,33,65,33,1,25,0,25,0,
+  17,0,17,224,0,36,255,255,129,245,189,20,0,99,129,113,173,9,255,255,
+  129,118,206,8,0,99,129,113,173,12,255,255,129,173,148,8,0,99,129,249,
+  222,4,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,148,8,
+  0,99,129,249,222,24,255,255,130,59,231,133,115,16,0,99,129,118,206,9,
+  255,255,129,59,231,8,0,99,130,133,115,190,247,7,255,255,129,124,239,8,
+  0,99,129,118,206,5,255,255,129,40,132,9,0,99,129,173,148,12,255,255,
+  9,0,99,6,255,255,129,59,231,8,0,99,130,133,115,190,247,7,255,255,
+  129,124,239,8,0,99,129,118,206,4,255,255,9,0,99,127,255,255,127,255,
+  255,127,255,255,64,255,255,133,190,247,110,124,69,58,134,66,134,66,9,198,
+  66,131,198,74,198,66,198,74,12,199,74,129,6,75,10,198,74,3,198,66,
+  141,134,66,133,58,69,58,68,58,4,50,196,49,195,41,130,33,65,33,65,
+  25,0,25,0,17,0,17,218,0,36,255,255,129,245,189,21,0,99,129,124,
+  239,8,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,148,8,
+  0,99,129,184,214,4,255,255,129,118,206,8,0,99,129,113,173,12,255,255,
+  129,173,148,8,0,99,129,184,214,25,255,255,130,59,231,40,132,16,0,99,
+  129,118,206,8,255,255,129,245,189,8,0,99,129,113,173,9,255,255,129,133,
+  115,7,0,99,129,245,189,5,255,255,129,40,132,8,0,99,129,40,132,13,
+  255,255,9,0,99,6,255,255,129,245,189,8,0,99,129,113,173,9,255,255,
+  129,133,115,7,0,99,129,245,189,3,255,255,129,190,247,9,0,99,127,255,
+  255,127,255,255,127,255,255,63,255,255,131,190,247,111,132,69,50,5,134,66,
+  9,198,66,130,198,74,198,74,10,199,74,13,198,74,143,198,66,198,66,134,
+  66,133,66,69,58,68,58,4,50,195,49,195,41,130,33,65,33,1,25,0,
+  25,0,17,0,17,224,0,36,255,255,130,249,222,124,239,6,255,255,130,118,
+  206,245,189,12,0,99,129,179,181,8,255,255,129,118,206,8,0,99,129,113,
+  173,12,255,255,129,173,148,8,0,99,129,249,222,4,255,255,129,118,206,8,
+  0,99,129,113,173,12,255,255,129,173,148,8,0,99,129,249,222,26,255,255,
+  130,190,247,173,148,16,0,99,129,184,214,7,255,255,129,113,173,8,0,99,
+  129,184,214,9,255,255,129,173,148,7,0,99,129,113,173,5,255,255,129,40,
+  132,8,0,99,129,245,189,13,255,255,9,0,99,6,255,255,129,113,173,8,
+  0,99,129,184,214,9,255,255,129,173,148,7,0,99,129,113,173,4,255,255,
+  9,0,99,129,245,189,127,255,255,127,255,255,127,255,255,62,255,255,130,111,
+  132,69,50,5,134,66,11,198,66,129,198,74,11,199,74,12,198,74,143,198,
+  66,198,66,134,66,133,66,69,58,69,58,4,50,196,49,195,41,130,33,65,
+  33,65,25,0,25,0,17,0,17,217,0,47,255,255,129,245,189,10,0,99,
+  129,133,115,8,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,
+  148,8,0,99,129,249,222,4,255,255,129,118,206,8,0,99,129,113,173,12,
+  255,255,129,173,148,8,0,99,129,249,222,28,255,255,129,118,206,15,0,99,
+  130,133,115,124,239,6,255,255,129,173,148,8,0,99,129,59,231,9,255,255,
+  129,113,173,7,0,99,129,113,173,5,255,255,129,40,132,8,0,99,129,124,
+  239,13,255,255,9,0,99,6,255,255,129,173,148,8,0,99,129,59,231,9,
+  255,255,129,113,173,7,0,99,129,113,173,4,255,255,129,107,140,9,0,99,
+  129,245,189,127,255,255,127,255,255,127,255,255,60,255,255,130,176,132,69,58,
+  7,134,66,11,198,66,129,198,74,11,199,74,11,198,74,143,198,66,198,66,
+  134,66,133,66,69,58,69,58,4,50,4,50,195,41,130,33,66,33,65,25,
+  0,25,0,17,0,17,223,0,48,255,255,129,249,222,10,0,99,129,59,231,
+  7,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,148,8,0,
+  99,129,249,222,4,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,
+  173,148,8,0,99,129,249,222,29,255,255,130,124,239,173,148,14,0,99,129,
+  173,148,6,255,255,129,40,132,8,0,99,10,255,255,129,113,173,7,0,99,
+  129,113,173,5,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,
+  99,6,255,255,129,40,132,8,0,99,10,255,255,129,113,173,7,0,99,129,
+  113,173,4,255,255,129,179,181,10,0,99,130,107,140,59,231,127,255,255,127,
+  255,255,127,255,255,57,255,255,130,176,140,69,58,9,134,66,7,198,66,130,
+  198,74,198,66,3,198,74,9,199,74,130,198,74,6,75,10,198,74,143,198,
+  66,198,66,134,66,134,66,133,58,69,58,4,50,4,50,195,41,130,41,66,
+  33,65,25,1,25,0,25,0,17,220,0,49,255,255,129,245,189,9,0,99,
+  129,245,189,7,255,255,129,118,206,8,0,99,129,113,173,12,255,255,129,173,
+  148,8,0,99,129,249,222,4,255,255,129,118,206,8,0,99,129,113,173,12,
+  255,255,129,173,148,8,0,99,129,249,222,31,255,255,129,118,206,14,0,99,
+  129,184,214,5,255,255,8,0,99,129,133,115,10,255,255,129,113,173,7,0,
+  99,129,113,173,5,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,
+  0,99,6,255,255,8,0,99,129,133,115,10,255,255,129,113,173,7,0,99,
+  129,113,173,4,255,255,129,249,222,12,0,99,130,47,165,124,239,127,255,255,
+  127,255,255,127,255,255,54,255,255,130,240,140,69,58,9,134,66,11,198,66,
+  130,198,74,198,74,6,199,74,131,198,74,199,74,199,74,12,198,74,143,198,
+  66,198,66,134,66,134,66,133,58,69,58,68,50,4,50,195,41,131,41,130,
+  33,65,25,1,25,0,25,0,17,201,0,50,255,255,129,133,115,8,0,99,
+  129,113,173,7,255,255,129,249,222,8,0,99,129,173,148,12,255,255,129,173,
+  148,8,0,99,129,59,231,4,255,255,129,249,222,8,0,99,129,173,148,12,
+  255,255,129,173,148,8,0,99,129,59,231,32,255,255,130,124,239,173,148,12,
+  0,99,129,40,132,5,255,255,27,0,99,129,245,189,5,255,255,129,40,132,
+  8,0,99,129,124,239,13,255,255,9,0,99,6,255,255,27,0,99,129,245,
+  189,5,255,255,129,173,148,13,0,99,130,113,173,190,247,127,255,255,127,255,
+  255,127,255,255,51,255,255,130,241,148,69,58,9,134,66,9,198,66,133,198,
+  74,198,66,198,66,198,74,198,74,5,199,74,131,198,74,199,74,199,74,12,
+  198,74,4,198,66,140,134,66,133,58,69,58,68,58,4,50,195,41,130,41,
+  130,33,65,33,1,25,0,25,0,17,207,0,50,255,255,129,179,181,8,0,
+  99,129,173,148,7,255,255,129,249,222,8,0,99,129,173,148,12,255,255,129,
+  40,132,8,0,99,129,124,239,4,255,255,129,249,222,8,0,99,129,173,148,
+  12,255,255,129,40,132,8,0,99,129,124,239,34,255,255,129,245,189,12,0,
+  99,129,249,222,3,255,255,129,124,239,27,0,99,129,245,189,5,255,255,129,
+  40,132,8,0,99,129,124,239,13,255,255,9,0,99,5,255,255,129,124,239,
+  27,0,99,129,245,189,5,255,255,130,124,239,133,115,13,0,99,130,133,115,
+  184,214,127,255,255,127,255,255,127,255,255,49,255,255,130,50,149,69,58,8,
+  134,66,132,198,66,198,66,134,66,134,66,8,198,66,5,198,74,6,199,74,
+  4,198,74,129,6,75,8,198,74,4,198,66,140,134,66,133,66,69,58,68,
+  58,4,50,195,41,131,41,130,33,65,33,65,25,0,25,0,17,190,0,50,
+  255,255,129,184,214,8,0,99,129,107,140,7,255,255,129,124,239,8,0,99,
+  129,40,132,12,255,255,129,40,132,8,0,99,5,255,255,129,124,239,8,0,
+  99,129,40,132,12,255,255,129,40,132,8,0,99,36,255,255,129,249,222,11,
+  0,99,129,179,181,3,255,255,129,124,239,27,0,99,129,118,206,5,255,255,
+  129,40,132,8,0,99,129,124,239,13,255,255,9,0,99,5,255,255,129,124,
+  239,27,0,99,129,118,206,6,255,255,129,184,214,15,0,99,129,179,181,127,
+  255,255,127,255,255,127,255,255,47,255,255,130,50,157,69,58,10,134,66,13,
+  198,66,3,198,74,4,199,74,130,198,74,199,74,14,198,74,143,198,66,198,
+  66,134,66,134,66,133,66,69,58,68,58,4,50,196,41,131,41,130,33,65,
+  25,65,25,0,25,0,25,197,0,50,255,255,129,59,231,8,0,99,129,40,
+  132,7,255,255,129,190,247,8,0,99,129,40,132,12,255,255,8,0,99,129,
+  133,115,5,255,255,129,190,247,8,0,99,129,40,132,12,255,255,8,0,99,
+  129,133,115,37,255,255,129,249,222,10,0,99,129,107,140,3,255,255,129,124,
+  239,27,0,99,129,249,222,5,255,255,129,40,132,8,0,99,129,124,239,13,
+  255,255,9,0,99,5,255,255,129,124,239,27,0,99,129,249,222,7,255,255,
+  129,184,214,15,0,99,129,113,173,127,255,255,127,255,255,127,255,255,45,255,
+  255,130,50,157,69,58,12,134,66,8,198,66,131,198,74,198,74,198,66,5,
+  198,74,130,199,74,199,74,6,198,74,129,6,75,10,198,74,3,198,66,140,
+  134,66,133,66,69,58,69,58,4,50,196,41,195,41,130,33,65,33,1,25,
+  0,25,0,25,196,0,50,255,255,129,124,239,8,0,99,129,40,132,8,255,
+  255,129,133,115,8,0,99,11,255,255,129,190,247,8,0,99,129,107,140,6,
+  255,255,129,133,115,8,0,99,11,255,255,129,190,247,8,0,99,129,107,140,
+  38,255,255,129,184,214,10,0,99,3,255,255,129,124,239,27,0,99,129,124,
+  239,5,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,99,5,
+  255,255,129,124,239,27,0,99,129,124,239,8,255,255,130,59,231,40,132,14,
+  0,99,129,179,181,127,255,255,127,255,255,127,255,255,43,255,255,130,115,157,
+  69,58,12,134,66,4,198,66,129,199,66,6,198,66,131,198,74,198,74,198,
+  66,3,198,74,130,199,74,199,74,17,198,74,3,198,66,140,134,66,133,66,
+  69,58,69,58,4,50,196,49,195,41,130,33,65,33,65,25,0,25,0,25,
+  193,0,50,255,255,129,124,239,8,0,99,129,40,132,8,255,255,129,107,140,
+  8,0,99,129,124,239,10,255,255,129,59,231,8,0,99,129,47,165,6,255,
+  255,129,107,140,8,0,99,129,124,239,10,255,255,129,59,231,8,0,99,129,
+  47,165,39,255,255,129,173,148,9,0,99,129,124,239,3,255,255,26,0,99,
+  129,133,115,6,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,
+  99,6,255,255,26,0,99,129,133,115,11,255,255,129,179,181,14,0,99,129,
+  59,231,127,255,255,127,255,255,127,255,255,41,255,255,130,115,165,69,58,13,
+  134,66,9,198,66,132,198,74,198,66,198,74,198,66,5,198,74,130,199,74,
+  199,74,16,198,74,3,198,66,140,134,66,134,66,133,58,69,58,4,50,4,
+  50,195,41,130,33,65,33,65,25,0,25,0,25,201,0,50,255,255,129,124,
+  239,8,0,99,129,40,132,8,255,255,129,47,165,8,0,99,129,249,222,10,
+  255,255,129,184,214,8,0,99,129,179,181,6,255,255,129,47,165,8,0,99,
+  129,249,222,10,255,255,129,184,214,8,0,99,129,179,181,39,255,255,129,245,
+  189,9,0,99,129,124,239,3,255,255,8,0,99,129,113,173,24,255,255,129,
+  40,132,8,0,99,129,124,239,13,255,255,9,0,99,6,255,255,8,0,99,
+  129,113,173,30,255,255,130,124,239,113,173,12,0,99,129,173,148,127,255,255,
+  127,255,255,127,255,255,40,255,255,132,115,165,69,58,134,66,198,66,12,134,
+  66,6,198,66,129,198,74,4,198,66,131,198,74,198,74,198,66,17,198,74,
+  129,199,74,4,198,74,3,198,66,140,134,66,134,66,133,58,69,58,4,50,
+  4,50,195,41,131,41,66,33,65,25,1,25,0,25,211,0,50,255,255,129,
+  249,222,8,0,99,129,173,148,8,255,255,129,179,181,8,0,99,129,245,189,
+  10,255,255,129,245,189,8,0,99,129,118,206,6,255,255,129,179,181,8,0,
+  99,129,245,189,10,255,255,129,245,189,8,0,99,129,118,206,39,255,255,129,
+  249,222,9,0,99,129,59,231,3,255,255,129,40,132,7,0,99,129,47,165,
+  24,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,99,6,255,
+  255,129,40,132,7,0,99,129,47,165,32,255,255,130,59,231,173,148,11,0,
+  99,129,124,239,127,255,255,127,255,255,127,255,255,38,255,255,130,115,165,69,
+  58,14,134,66,6,198,66,133,198,74,198,74,198,66,198,74,198,74,4,198,
+  66,4,198,74,129,199,74,9,198,74,4,199,74,5,198,74,142,198,66,198,
+  66,134,66,134,66,133,58,69,58,68,58,4,50,196,41,195,41,130,33,65,
+  25,0,25,0,25,222,0,50,255,255,129,245,189,8,0,99,129,47,165,8,
+  255,255,129,118,206,8,0,99,129,113,173,10,255,255,129,47,165,8,0,99,
+  129,59,231,6,255,255,129,118,206,8,0,99,129,113,173,10,255,255,129,47,
+  165,8,0,99,129,59,231,39,255,255,129,249,222,9,0,99,129,124,239,3,
+  255,255,129,173,148,7,0,99,129,107,140,24,255,255,129,40,132,8,0,99,
+  129,124,239,13,255,255,9,0,99,6,255,255,129,173,148,7,0,99,129,107,
+  140,34,255,255,129,118,206,10,0,99,129,245,189,127,255,255,127,255,255,127,
+  255,255,37,255,255,133,180,173,69,58,134,66,199,66,134,66,3,198,66,7,
+  134,66,131,198,66,134,66,134,66,5,198,66,132,198,74,198,74,198,66,198,
+  74,6,198,66,3,198,74,129,199,74,7,198,74,6,199,74,4,198,74,3,
+  198,66,140,134,66,134,66,133,66,69,58,69,58,4,50,196,49,195,41,130,
+  33,65,33,0,25,0,17,203,0,50,255,255,129,173,148,8,0,99,129,245,
+  189,8,255,255,129,59,231,8,0,99,129,107,140,10,255,255,129,133,115,7,
+  0,99,129,133,115,7,255,255,129,59,231,8,0,99,129,107,140,10,255,255,
+  129,133,115,7,0,99,129,133,115,40,255,255,129,184,214,9,0,99,129,124,
+  239,3,255,255,129,113,173,8,0,99,129,190,247,23,255,255,129,40,132,8,
+  0,99,129,124,239,13,255,255,9,0,99,6,255,255,129,113,173,8,0,99,
+  129,190,247,34,255,255,129,249,222,9,0,99,129,113,173,127,255,255,127,255,
+  255,127,255,255,36,255,255,133,180,173,133,58,134,66,199,66,134,66,4,198,
+  66,129,134,66,23,198,66,4,198,74,130,199,74,199,74,4,198,74,9,199,
+  74,4,198,74,3,198,66,139,134,66,134,66,69,58,69,58,4,50,196,49,
+  195,41,131,33,66,33,1,25,0,17,198,0,49,255,255,129,124,239,9,0,
+  99,129,184,214,9,255,255,129,133,115,8,0,99,129,59,231,8,255,255,129,
+  59,231,8,0,99,129,47,165,8,255,255,129,133,115,8,0,99,129,59,231,
+  8,255,255,129,59,231,8,0,99,129,47,165,40,255,255,129,113,173,9,0,
+  99,4,255,255,129,245,189,8,0,99,129,118,206,23,255,255,129,40,132,8,
+  0,99,129,124,239,13,255,255,9,0,99,6,255,255,129,245,189,8,0,99,
+  129,118,206,35,255,255,129,245,189,8,0,99,129,173,148,127,255,255,127,255,
+  255,127,255,255,35,255,255,135,180,173,69,58,134,66,199,66,134,66,135,66,
+  199,66,28,198,66,129,198,74,3,199,74,4,198,74,12,199,74,130,198,74,
+  198,74,3,198,66,139,134,66,134,66,69,58,69,58,4,50,196,49,195,41,
+  130,33,66,33,1,25,0,17,240,0,49,255,255,129,47,165,9,0,99,129,
+  190,247,9,255,255,129,47,165,8,0,99,129,179,181,8,255,255,129,245,189,
+  8,0,99,129,245,189,8,255,255,129,47,165,8,0,99,129,179,181,8,255,
+  255,129,245,189,8,0,99,129,245,189,23,255,255,130,113,173,118,206,14,255,
+  255,129,59,231,9,0,99,129,107,140,4,255,255,129,59,231,8,0,99,129,
+  107,140,23,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,99,
+  6,255,255,129,59,231,8,0,99,129,107,140,35,255,255,129,249,222,8,0,
+  99,129,173,148,127,255,255,127,255,255,127,255,255,34,255,255,134,181,173,133,
+  58,134,66,135,66,134,66,135,66,3,199,66,131,198,66,198,66,199,66,12,
+  198,66,132,199,66,198,66,198,74,198,74,8,198,66,133,198,74,199,74,199,
+  74,198,74,198,74,3,199,74,3,198,74,131,199,74,199,74,198,74,6,199,
+  74,129,198,74,5,198,66,138,134,66,133,58,69,58,4,50,4,50,195,41,
+  131,33,66,33,1,25,0,17,247,0,48,255,255,129,118,206,9,0,99,129,
+  47,165,10,255,255,129,118,206,8,0,99,130,133,115,124,239,6,255,255,130,
+  190,247,133,115,8,0,99,129,124,239,8,255,255,129,118,206,8,0,99,130,
+  133,115,124,239,6,255,255,130,190,247,133,115,8,0,99,129,124,239,22,255,
+  255,133,190,247,0,99,0,99,40,132,245,189,11,255,255,130,59,231,40,132,
+  9,0,99,129,179,181,5,255,255,129,133,115,8,0,99,129,245,189,22,255,
+  255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,99,7,255,255,129,
+  133,115,8,0,99,129,245,189,34,255,255,129,184,214,8,0,99,129,173,148,
+  127,255,255,127,255,255,127,255,255,33,255,255,132,181,181,134,66,134,66,199,
+  74,3,199,66,134,199,74,199,66,199,66,198,66,199,66,199,66,12,198,66,
+  131,199,66,198,66,198,74,8,198,66,130,198,74,198,66,3,198,74,3,199,
+  74,3,198,74,10,199,74,4,198,74,140,198,66,198,66,134,66,134,66,69,
+  58,4,50,4,50,195,41,131,33,66,25,1,25,0,17,15,1,47,255,255,
+  129,245,189,10,0,99,129,184,214,10,255,255,130,190,247,133,115,8,0,99,
+  129,173,148,6,255,255,129,47,165,8,0,99,129,173,148,9,255,255,130,190,
+  247,133,115,8,0,99,129,173,148,6,255,255,129,47,165,8,0,99,129,173,
+  148,23,255,255,129,118,206,5,0,99,131,47,165,245,189,59,231,5,255,255,
+  130,245,189,47,165,11,0,99,129,184,214,5,255,255,129,47,165,9,0,99,
+  129,184,214,10,255,255,131,184,214,173,148,190,247,8,255,255,129,40,132,8,
+  0,99,129,124,239,13,255,255,9,0,99,7,255,255,129,47,165,9,0,99,
+  129,184,214,10,255,255,131,184,214,173,148,190,247,8,255,255,131,249,222,47,
+  165,184,214,9,255,255,129,113,173,8,0,99,129,113,173,127,255,255,127,255,
+  255,127,255,255,32,255,255,133,181,181,134,66,134,66,199,74,199,74,3,199,
+  66,129,199,74,4,199,66,13,198,66,129,199,66,7,198,66,129,198,74,3,
+  198,66,130,198,74,198,74,6,199,74,130,198,74,198,74,10,199,74,4,198,
+  74,140,198,66,198,66,134,66,134,66,69,58,4,50,196,49,195,41,131,33,
+  66,25,1,25,0,17,45,1,35,255,255,132,179,181,47,165,245,189,118,206,
+  6,255,255,130,245,189,107,140,10,0,99,129,40,132,12,255,255,129,113,173,
+  9,0,99,134,107,140,249,222,255,255,255,255,249,222,173,148,9,0,99,129,
+  118,206,10,255,255,129,113,173,9,0,99,134,107,140,249,222,255,255,255,255,
+  249,222,173,148,9,0,99,129,118,206,23,255,255,129,47,165,25,0,99,129,
+  133,115,6,255,255,129,184,214,10,0,99,130,173,148,245,189,5,255,255,130,
+  245,189,245,189,3,0,99,129,245,189,8,255,255,129,40,132,8,0,99,129,
+  124,239,13,255,255,9,0,99,7,255,255,129,184,214,10,0,99,130,173,148,
+  245,189,5,255,255,130,245,189,245,189,3,0,99,129,245,189,8,255,255,129,
+  113,173,3,0,99,130,245,189,245,189,4,255,255,130,59,231,47,165,9,0,
+  99,129,245,189,127,255,255,127,255,255,127,255,255,31,255,255,136,245,181,134,
+  66,134,66,199,74,199,74,199,66,199,74,199,74,3,199,66,3,199,74,133,
+  199,66,199,74,198,66,199,74,199,66,3,198,66,129,199,66,6,198,66,129,
+  199,66,9,198,66,130,198,74,198,74,6,199,74,129,198,74,11,199,74,4,
+  198,74,140,198,66,198,66,134,66,134,66,69,58,5,58,196,49,195,41,131,
+  33,66,33,1,25,0,17,199,0,35,255,255,129,133,115,21,0,99,129,184,
+  214,12,255,255,129,59,231,23,0,99,129,40,132,11,255,255,129,59,231,23,
+  0,99,129,40,132,23,255,255,129,190,247,26,0,99,129,245,189,7,255,255,
+  129,40,132,21,0,99,129,40,132,8,255,255,129,40,132,8,0,99,129,124,
+  239,13,255,255,9,0,99,8,255,255,129,40,132,21,0,99,129,40,132,8,
+  255,255,129,133,115,20,0,99,129,59,231,127,255,255,127,255,255,127,255,255,
+  30,255,255,135,245,181,134,66,134,66,199,74,199,66,199,74,199,66,3,199,
+  74,138,199,66,198,66,199,66,199,66,199,74,199,74,198,66,198,66,199,66,
+  199,66,21,198,66,129,198,74,5,199,74,129,198,74,13,199,74,130,198,74,
+  198,74,3,198,66,138,134,66,134,66,69,58,69,58,4,50,195,41,131,33,
+  66,33,1,25,0,17,187,0,34,255,255,129,59,231,21,0,99,129,47,165,
+  14,255,255,129,47,165,22,0,99,129,118,206,12,255,255,129,47,165,22,0,
+  99,129,118,206,23,255,255,129,245,189,25,0,99,129,40,132,8,255,255,129,
+  118,206,22,0,99,129,118,206,7,255,255,129,40,132,8,0,99,129,124,239,
+  13,255,255,9,0,99,8,255,255,129,118,206,22,0,99,129,118,206,6,255,
+  255,129,184,214,20,0,99,129,40,132,127,255,255,127,255,255,127,255,255,30,
+  255,255,131,245,181,134,66,134,66,5,199,74,129,199,66,7,199,74,132,198,
+  74,198,66,198,66,199,66,23,198,66,129,199,66,3,199,74,130,198,74,198,
+  74,13,199,74,130,198,74,198,74,3,198,66,138,134,66,134,66,69,58,69,
+  58,4,50,196,41,131,41,66,33,1,25,0,17,189,0,34,255,255,129,179,
+  181,20,0,99,130,40,132,190,247,14,255,255,130,124,239,133,115,20,0,99,
+  129,173,148,13,255,255,130,124,239,133,115,20,0,99,129,173,148,24,255,255,
+  129,173,148,25,0,99,129,59,231,9,255,255,129,47,165,21,0,99,129,173,
+  148,7,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,99,9,
+  255,255,129,47,165,21,0,99,129,173,148,6,255,255,129,113,173,20,0,99,
+  129,118,206,127,255,255,127,255,255,127,255,255,29,255,255,131,245,181,134,66,
+  134,66,11,199,74,4,199,66,134,198,66,198,66,199,74,199,66,198,66,199,
+  66,19,198,66,132,199,66,199,74,199,74,198,74,15,199,74,129,198,74,4,
+  198,66,3,134,66,136,133,58,69,58,5,50,4,50,195,41,130,33,65,25,
+  0,17,188,0,34,255,255,129,40,132,19,0,99,130,133,115,124,239,16,255,
+  255,129,184,214,19,0,99,130,40,132,124,239,14,255,255,129,184,214,19,0,
+  99,130,40,132,124,239,23,255,255,129,124,239,25,0,99,129,118,206,10,255,
+  255,130,190,247,40,132,21,0,99,129,249,222,6,255,255,129,40,132,8,0,
+  99,129,124,239,13,255,255,9,0,99,9,255,255,130,190,247,40,132,21,0,
+  99,129,249,222,5,255,255,129,133,115,19,0,99,129,107,140,127,255,255,127,
+  255,255,127,255,255,29,255,255,131,246,181,134,66,134,66,10,199,74,129,198,
+  74,3,198,66,134,199,74,199,66,199,74,198,74,199,66,199,74,23,198,66,
+  19,199,74,132,198,74,199,74,198,66,198,66,3,134,66,135,69,58,69,58,
+  4,50,196,41,131,41,66,33,1,25,205,0,33,255,255,129,59,231,19,0,
+  99,130,107,140,124,239,18,255,255,129,245,189,17,0,99,130,133,115,59,231,
+  16,255,255,129,245,189,17,0,99,130,133,115,59,231,24,255,255,129,245,189,
+  24,0,99,129,184,214,12,255,255,130,124,239,40,132,19,0,99,130,133,115,
+  184,214,6,255,255,129,40,132,8,0,99,129,124,239,13,255,255,9,0,99,
+  10,255,255,130,124,239,40,132,19,0,99,130,133,115,184,214,4,255,255,129,
+  184,214,19,0,99,130,40,132,124,239,127,255,255,127,255,255,127,255,255,28,
+  255,255,133,245,181,134,66,134,66,199,74,198,74,8,199,74,136,199,66,199,
+  74,199,74,198,74,199,66,199,74,199,66,199,66,3,198,66,130,198,74,198,
+  74,8,198,66,129,199,74,12,198,66,20,199,74,129,198,74,3,198,66,3,
+  134,66,134,69,58,5,58,4,50,195,41,130,33,65,25,210,0,33,255,255,
+  129,179,181,18,0,99,129,113,173,21,255,255,129,184,214,15,0,99,130,107,
+  140,124,239,18,255,255,129,184,214,15,0,99,130,107,140,124,239,25,255,255,
+  130,190,247,245,189,21,0,99,130,173,148,124,239,14,255,255,130,190,247,173,
+  148,17,0,99,130,47,165,124,239,7,255,255,129,40,132,8,0,99,129,124,
+  239,13,255,255,9,0,99,11,255,255,130,190,247,173,148,17,0,99,130,47,
+  165,124,239,5,255,255,130,184,214,40,132,17,0,99,130,107,140,124,239,127,
+  255,255,127,255,255,127,255,255,28,255,255,131,246,181,134,66,134,66,11,199,
+  74,141,199,66,199,66,199,74,198,74,198,66,199,74,199,66,198,66,198,66,
+  199,66,198,66,198,66,198,74,9,198,66,129,199,66,12,198,66,129,199,66,
+  16,199,74,129,199,66,5,198,66,3,134,66,134,69,58,69,58,4,50,196,
+  49,131,41,66,33,224,0,33,255,255,130,249,222,179,181,15,0,99,130,179,
+  181,124,239,23,255,255,130,124,239,113,173,11,0,99,130,133,115,245,189,21,
+  255,255,130,124,239,113,173,11,0,99,130,133,115,245,189,30,255,255,130,118,
+  206,113,173,16,0,99,130,47,165,249,222,18,255,255,130,118,206,40,132,13,
+  0,99,130,245,189,124,239,9,255,255,129,40,132,8,0,99,129,124,239,13,
+  255,255,9,0,99,13,255,255,130,118,206,40,132,13,0,99,130,245,189,124,
+  239,9,255,255,130,118,206,173,148,13,0,99,130,133,115,245,189,127,255,255,
+  127,255,255,127,255,255,29,255,255,133,245,181,134,66,134,66,199,74,198,74,
+  5,199,74,129,198,74,4,199,74,130,198,66,199,74,3,198,74,129,199,74,
+  6,198,66,129,198,74,21,198,66,129,199,66,3,199,74,129,198,74,12,199,
+  74,3,199,66,132,198,66,199,66,199,66,198,66,3,134,66,134,133,66,69,
+  58,69,58,4,50,195,41,130,33,255,0,36,255,255,132,124,239,245,189,245,
+  189,173,148,6,0,99,131,173,148,245,189,184,214,29,255,255,130,245,189,179,
+  181,5,0,99,131,40,132,245,189,118,206,26,255,255,130,245,189,179,181,5,
+  0,99,131,40,132,245,189,118,206,35,255,255,132,249,222,245,189,245,189,107,
+  140,7,0,99,131,173,148,245,189,245,189,23,255,255,131,249,222,245,189,47,
+  165,6,0,99,131,179,181,245,189,249,222,59,255,255,131,249,222,245,189,47,
+  165,6,0,99,131,179,181,245,189,249,222,15,255,255,131,118,206,245,189,113,
+  173,6,0,99,131,173,148,245,189,184,214,127,255,255,127,255,255,127,255,255,
+  30,255,255,133,246,181,134,66,134,66,199,74,198,74,10,199,74,135,198,74,
+  198,66,198,74,198,74,199,74,199,66,198,74,3,198,66,129,198,74,3,198,
+  66,129,198,74,7,198,66,129,199,66,11,198,66,134,199,66,198,66,198,74,
+  199,74,198,66,198,74,8,199,74,131,199,66,199,66,199,74,3,199,66,133,
+  198,66,199,66,199,66,198,66,198,66,4,134,66,133,69,58,69,58,4,50,
+  196,49,131,41,91,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,81,255,255,131,246,181,134,66,134,66,11,199,74,130,198,74,199,74,3,
+  198,66,130,198,74,199,66,8,198,66,129,198,74,26,198,66,130,199,74,199,
+  66,4,199,74,130,199,66,199,74,5,199,66,129,198,66,3,199,66,130,198,
+  66,198,66,5,134,66,132,69,58,5,58,196,49,195,41,88,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,80,255,255,131,245,181,134,66,
+  134,66,11,199,74,131,198,66,198,74,198,74,19,198,66,136,198,74,198,66,
+  198,66,199,66,198,66,199,66,198,66,199,66,11,198,66,4,199,66,5,199,
+  74,10,199,66,131,198,66,199,66,198,66,4,134,66,132,70,58,69,58,4,
+  50,196,41,81,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,
+  79,255,255,131,245,181,134,66,134,66,12,199,74,131,198,66,198,74,198,74,
+  23,198,66,3,199,66,11,198,66,4,199,66,130,198,66,199,66,3,199,74,
+  8,199,66,130,198,66,198,66,3,199,66,129,198,66,5,134,66,131,69,58,
+  5,50,196,41,100,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,78,255,255,131,245,181,134,66,134,66,13,199,74,130,198,74,198,74,6,
+  198,66,129,198,74,3,198,66,129,198,74,11,198,66,133,199,74,198,66,199,
+  66,199,66,199,74,11,198,66,133,199,66,198,66,199,66,199,66,198,66,12,
+  199,66,132,198,66,199,66,199,74,199,74,4,198,66,3,134,66,131,70,58,
+  69,58,196,49,91,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,77,255,255,131,180,173,134,66,198,66,13,199,74,132,198,74,198,74,198,
+  66,198,74,5,198,66,130,199,74,198,74,15,198,66,130,199,66,199,66,4,
+  198,66,129,199,66,8,198,66,131,199,66,198,66,198,66,4,199,66,129,198,
+  66,12,199,66,6,198,66,3,134,66,130,69,58,4,50,87,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,76,255,255,131,245,181,134,66,
+  198,66,14,199,74,130,198,74,198,74,7,198,66,129,198,74,17,198,66,131,
+  199,66,199,66,198,66,4,199,66,10,198,66,3,199,66,3,198,66,7,199,
+  66,132,198,66,198,66,199,66,199,74,7,198,66,132,134,66,134,66,69,58,
+  4,50,109,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,75,
+  255,255,131,181,181,134,66,198,66,14,199,74,3,198,74,131,198,66,198,74,
+  134,66,3,198,66,130,134,66,134,66,20,198,66,130,199,66,199,66,11,198,
+  66,131,199,66,199,66,198,66,3,199,66,131,198,66,198,66,199,66,3,198,
+  66,4,199,66,141,198,66,199,66,199,66,198,74,198,74,198,66,198,66,199,
+  66,198,66,134,66,134,66,69,58,4,50,104,0,127,255,255,127,255,255,127,
+  255,255,127,255,255,127,255,255,74,255,255,131,180,165,133,66,198,66,15,199,
+  74,130,198,74,198,74,5,198,66,130,134,66,134,66,3,198,66,130,134,66,
+  134,66,6,198,66,129,134,66,22,198,66,3,199,66,129,198,66,3,199,66,
+  5,198,66,135,134,66,199,66,198,66,198,66,199,66,198,66,199,66,3,198,
+  74,3,199,74,133,198,66,198,66,134,66,69,58,5,50,105,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,73,255,255,131,180,173,133,66,
+  198,66,16,199,74,136,199,66,199,74,198,74,198,66,198,66,134,66,198,66,
+  198,66,6,134,66,4,198,66,130,134,66,134,66,9,198,66,129,199,66,14,
+  198,66,5,199,66,136,198,66,198,66,134,66,198,66,198,66,134,66,198,66,
+  134,66,5,198,66,129,199,66,6,199,74,132,198,66,134,66,134,58,5,58,
+  109,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,72,255,255,
+  131,180,173,134,66,198,66,12,199,74,131,199,66,199,74,199,66,4,199,74,
+  3,198,66,131,199,66,198,66,198,66,4,134,66,129,198,66,8,134,66,134,
+  198,66,134,66,134,66,198,66,198,66,134,66,18,198,66,4,199,66,129,198,
+  66,5,134,66,130,198,66,134,66,4,198,66,130,199,66,199,66,6,199,74,
+  132,199,66,134,66,134,58,5,58,101,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,127,255,255,71,255,255,131,179,165,133,58,198,66,12,199,74,131,
+  199,66,199,66,199,74,5,199,66,132,135,66,198,66,198,66,199,66,19,134,
+  66,130,198,66,134,66,13,198,66,131,134,66,198,66,198,66,4,199,66,129,
+  135,66,7,134,66,131,198,66,198,66,134,66,3,198,66,3,199,66,5,199,
+  74,132,199,66,134,66,134,66,69,58,113,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,127,255,255,70,255,255,131,115,165,133,66,198,74,14,199,74,
+  129,199,66,3,199,74,3,199,66,133,135,66,199,66,135,66,134,66,135,66,
+  20,134,66,139,198,66,198,66,134,66,198,66,134,66,134,66,198,66,134,66,
+  134,66,198,66,198,66,4,134,66,130,198,66,134,66,3,199,66,129,135,66,
+  9,134,66,131,198,66,134,66,198,66,4,199,66,6,199,74,131,134,66,134,
+  66,69,58,87,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,
+  69,255,255,131,114,165,133,58,198,66,9,199,74,130,199,66,199,66,5,199,
+  74,3,199,66,136,135,66,135,66,199,66,135,66,135,66,134,66,134,66,135,
+  66,36,134,66,3,135,66,11,134,66,131,198,66,198,66,134,66,3,199,66,
+  7,199,74,131,198,66,198,66,197,74,85,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,127,255,255,68,255,255,131,114,157,133,66,198,66,10,199,74,
+  3,199,66,137,199,74,199,66,199,66,135,66,199,66,135,66,135,66,199,66,
+  199,66,5,135,66,38,134,66,130,135,66,135,66,14,134,66,131,135,66,199,
+  66,199,66,6,199,74,132,198,74,6,75,6,83,70,91,97,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,67,255,255,131,50,157,133,58,
+  198,74,10,199,74,131,199,66,199,66,199,74,3,199,66,3,135,66,129,199,
+  66,6,135,66,3,134,66,129,135,66,34,134,66,5,135,66,7,134,66,131,
+  198,66,135,66,135,66,3,134,66,131,135,66,199,66,199,66,4,199,74,134,
+  6,75,6,83,6,83,70,83,70,91,70,91,90,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,127,255,255,66,255,255,131,49,149,133,58,198,74,9,
+  199,74,130,198,66,199,74,3,199,66,5,135,66,129,199,66,10,135,66,34,
+  134,66,8,135,66,129,134,66,3,135,66,130,134,66,134,66,5,135,66,135,
+  199,66,199,66,199,74,198,74,6,75,6,83,6,83,4,70,91,130,134,99,
+  134,99,87,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,65,
+  255,255,132,49,149,133,58,198,74,198,74,8,199,74,133,199,66,198,66,199,
+  74,199,74,199,66,14,135,66,38,134,66,6,135,66,130,134,66,134,66,6,
+  135,66,136,199,66,134,66,198,66,198,66,198,74,198,74,6,83,6,83,6,
+  70,91,131,70,99,134,99,134,99,80,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,127,255,255,64,255,255,130,240,148,133,58,3,198,74,8,199,74,
+  130,198,66,199,74,3,199,66,14,135,66,38,134,66,6,135,66,3,134,66,
+  132,135,66,135,66,198,66,198,66,5,198,74,3,6,83,5,70,91,133,134,
+  99,70,99,70,99,134,99,70,91,83,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,127,255,255,63,255,255,130,240,140,69,58,4,198,74,7,199,74,
+  132,198,74,198,74,199,74,199,66,16,135,66,33,134,66,133,134,58,134,66,
+  134,66,134,58,134,66,5,135,66,3,134,66,129,198,66,5,198,74,5,6,
+  83,6,70,91,130,134,99,134,91,4,70,91,88,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,127,255,255,62,255,255,130,175,140,68,58,7,198,74,
+  131,199,74,198,74,198,74,3,199,74,130,199,66,199,66,15,135,66,30,134,
+  66,131,134,58,134,58,134,66,7,134,58,4,135,66,130,134,66,198,66,3,
+  198,74,6,6,83,130,6,91,6,91,11,70,91,131,70,83,70,83,6,83,
+  81,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,61,255,255,
+  130,175,132,68,58,7,198,74,131,198,66,198,74,198,66,3,198,74,129,199,
+  74,16,135,66,26,134,66,9,134,58,129,70,58,4,134,58,3,134,66,133,
+  198,66,198,74,198,74,6,83,6,83,19,70,91,3,70,83,130,6,83,6,
+  83,100,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,59,255,
+  255,131,190,247,110,124,68,58,6,198,74,129,198,66,3,198,74,4,198,66,
+  129,134,66,15,135,66,26,134,66,134,70,58,134,58,70,58,70,58,134,58,
+  134,58,6,70,58,141,134,58,134,66,134,66,198,66,198,74,198,74,6,83,
+  6,83,6,91,70,91,70,91,70,99,70,99,11,70,91,6,70,83,5,6,
+  83,103,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,58,255,
+  255,133,190,247,45,124,68,58,198,66,198,66,3,198,74,131,198,66,198,74,
+  198,66,5,134,66,132,198,66,198,66,134,66,134,66,10,135,66,131,134,66,
+  134,66,135,66,24,134,66,129,134,58,11,70,58,134,134,58,134,66,134,66,
+  198,74,198,74,6,75,3,6,83,3,70,91,5,70,99,6,70,91,10,70,
+  83,5,6,83,109,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,57,255,255,131,190,247,45,124,68,58,3,134,66,133,198,74,198,66,198,
+  74,198,66,198,66,10,134,66,7,135,66,28,134,66,129,134,58,10,70,58,
+  136,134,58,134,66,134,66,198,74,198,74,6,83,6,83,70,83,7,70,91,
+  4,70,99,4,70,91,3,70,83,138,6,83,70,83,6,83,70,83,70,83,
+  6,83,70,83,6,83,6,83,70,83,5,6,83,101,0,127,255,255,127,255,
+  255,127,255,255,127,255,255,127,255,255,56,255,255,131,125,239,204,115,68,58,
+  4,134,66,129,198,66,16,134,66,131,135,66,134,66,135,66,3,134,66,129,
+  135,66,3,134,66,129,135,66,18,134,66,12,70,58,135,134,66,134,66,198,
+  66,198,74,198,74,6,83,6,83,4,70,91,3,70,99,9,70,91,130,70,
+  83,70,83,10,6,83,130,70,83,70,83,7,6,83,80,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,127,255,255,55,255,255,131,189,239,203,107,68,
+  58,49,134,66,11,70,58,134,134,66,134,66,198,74,198,74,6,83,6,83,
+  4,70,91,4,70,99,131,134,99,70,99,70,99,4,70,91,3,70,83,11,
+  6,83,129,70,83,4,6,83,3,70,83,4,6,83,84,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,127,255,255,54,255,255,131,124,231,139,107,68,
+  58,28,134,66,3,135,66,15,134,66,131,134,58,134,58,134,66,8,70,58,
+  135,134,66,134,66,198,66,198,74,198,74,6,83,6,91,4,70,91,8,70,
+  99,3,70,91,129,70,83,22,6,83,130,70,83,70,83,4,6,83,82,0,
+  127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,53,255,255,131,60,
+  231,74,99,68,58,29,134,66,3,135,66,11,134,66,129,134,58,9,70,58,
+  4,134,66,133,198,74,198,74,6,83,6,83,6,91,3,70,91,7,70,99,
+  5,70,91,129,70,83,22,6,83,130,70,83,6,83,3,70,83,4,6,83,
+  100,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,52,255,255,
+  131,60,231,73,91,69,58,28,134,66,132,135,66,134,66,134,66,135,66,8,
+  134,66,129,134,58,10,70,58,3,134,66,130,198,74,198,74,3,6,83,129,
+  6,91,3,70,91,7,70,99,4,70,91,129,70,83,23,6,83,130,70,83,
+  70,83,3,6,83,135,70,83,70,83,6,83,70,83,6,83,6,83,6,75,
+  78,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,51,255,255,
+  131,59,223,73,91,69,58,38,134,66,129,70,66,9,70,58,3,134,66,135,
+  198,74,198,74,198,82,6,83,6,83,6,91,6,91,5,70,91,4,70,99,
+  4,70,91,8,6,83,3,6,75,18,6,83,8,70,83,3,6,83,77,0,
+  127,255,255,127,255,255,127,255,255,127,255,255,127,255,255,50,255,255,131,251,
+  222,8,83,69,58,19,134,66,3,70,66,13,134,66,3,70,66,6,70,58,
+  4,134,66,3,198,74,130,6,83,6,83,4,6,91,10,70,91,129,6,91,
+  5,6,83,10,6,75,17,6,83,8,70,83,4,6,83,95,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,127,255,255,49,255,255,131,250,214,8,83,
+  69,58,19,134,66,5,70,66,11,134,66,130,70,66,70,66,3,70,58,133,
+  70,66,70,66,134,66,134,66,134,74,3,198,74,4,6,83,4,6,91,7,
+  70,91,129,6,91,4,6,83,129,198,82,5,198,74,11,6,75,15,6,83,
+  10,70,83,131,6,83,6,83,5,83,79,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,127,255,255,48,255,255,131,185,206,199,74,69,58,16,134,66,
+  12,70,66,5,134,66,6,70,66,4,134,66,131,134,74,198,74,198,82,4,
+  6,83,10,6,91,3,6,83,7,198,74,129,199,74,5,198,74,9,6,75,
+  16,6,83,12,70,83,1,6,83,123,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,127,255,255,47,255,255,133,120,206,199,74,69,58,134,66,134,66,
+  4,70,66,7,134,66,131,70,66,134,66,134,66,6,70,66,135,70,58,70,
+  66,70,66,70,58,70,66,70,58,70,58,4,70,66,130,134,66,70,66,6,
+  134,66,133,134,74,134,74,198,74,198,74,198,82,3,6,83,6,6,91,5,
+  6,83,6,198,74,129,199,74,3,198,74,5,199,74,132,198,74,6,75,6,
+  75,198,74,8,6,75,15,6,83,13,70,83,131,0,45,255,255,131,124,239,
+  245,189,245,189,7,0,99,132,47,165,245,189,245,189,190,247,96,255,255,131,
+  118,206,245,189,173,148,6,0,99,132,133,115,245,189,245,189,249,222,127,255,
+  255,127,255,255,127,255,255,127,255,255,5,255,255,131,55,198,134,66,69,58,
+  3,70,66,129,70,58,4,70,66,5,134,66,5,70,66,130,70,58,70,66,
+  10,70,58,129,70,66,9,134,66,129,134,74,5,198,74,10,6,83,6,198,
+  74,14,199,74,130,198,74,198,74,11,6,75,12,6,83,130,70,83,6,83,
+  13,70,83,139,0,42,255,255,131,190,247,245,189,133,115,15,0,99,130,245,
+  189,249,222,90,255,255,130,184,214,47,165,15,0,99,130,47,165,118,206,5,
+  255,255,129,40,132,8,0,99,129,249,222,127,255,255,127,255,255,80,255,255,
+  129,40,132,8,0,99,129,249,222,127,255,255,23,255,255,131,246,181,134,66,
+  69,58,3,70,66,4,70,58,4,70,66,129,134,66,3,70,66,13,70,58,
+  130,70,66,70,66,8,134,66,129,134,74,24,198,74,13,199,74,3,198,74,
+  9,6,75,130,6,83,6,75,10,6,83,5,70,83,10,70,91,130,69,91,
+  69,91,149,0,41,255,255,129,245,189,20,0,99,129,47,165,87,255,255,130,
+  59,231,107,140,19,0,99,129,245,189,4,255,255,129,40,132,8,0,99,129,
+  249,222,127,255,255,127,255,255,80,255,255,129,40,132,8,0,99,129,249,222,
+  127,255,255,22,255,255,133,246,181,70,58,69,58,70,66,70,66,4,70,58,
+  131,69,58,70,58,70,58,3,70,66,131,70,58,69,58,69,58,10,70,58,
+  130,70,66,70,66,6,134,66,129,134,74,30,198,74,12,199,74,3,198,74,
+  9,6,75,10,6,83,3,70,83,4,70,91,131,69,91,70,91,70,91,3,
+  134,91,3,133,91,129,133,99,3,133,91,149,0,39,255,255,130,124,239,107,
+  140,21,0,99,129,245,189,86,255,255,129,245,189,21,0,99,129,249,222,4,
+  255,255,129,40,132,8,0,99,129,249,222,127,255,255,127,255,255,80,255,255,
+  129,40,132,8,0,99,129,249,222,127,255,255,21,255,255,134,180,173,69,58,
+  69,58,70,66,70,58,70,58,4,69,58,129,70,58,8,69,58,4,70,58,
+  4,70,66,5,134,66,130,134,74,134,74,19,198,74,4,134,74,129,198,74,
+  11,199,74,131,135,66,199,66,199,66,8,199,74,4,198,74,4,6,75,8,
+  6,83,4,70,83,5,70,91,132,69,91,70,91,134,91,133,91,13,133,99,
+  156,0,38,255,255,130,249,222,133,115,22,0,99,129,249,222,85,255,255,129,
+  113,173,22,0,99,129,190,247,4,255,255,129,40,132,8,0,99,129,249,222,
+  127,255,255,127,255,255,80,255,255,129,40,132,8,0,99,129,249,222,127,255,
+  255,20,255,255,132,115,165,4,50,69,58,70,58,13,69,58,131,70,58,70,
+  66,70,66,10,134,66,129,134,74,20,198,74,3,134,74,5,135,66,131,135,
+  74,199,74,135,74,3,199,74,136,135,66,199,74,199,74,199,66,135,66,135,
+  66,199,66,199,66,5,199,74,130,198,74,199,74,3,198,74,3,6,75,7,
+  6,83,130,70,83,70,83,10,70,91,6,134,99,12,133,99,157,0,37,255,
+  255,129,59,231,24,0,99,129,190,247,84,255,255,129,179,181,22,0,99,129,
+  107,140,5,255,255,129,40,132,8,0,99,129,249,222,127,255,255,127,255,255,
+  80,255,255,129,40,132,8,0,99,129,249,222,127,255,255,19,255,255,132,50,
+  157,4,50,69,58,70,58,8,69,58,132,70,58,70,58,70,66,70,66,8,
+  134,66,130,134,74,134,74,20,198,74,3,134,74,129,135,74,13,135,66,132,
+  135,74,135,74,135,66,135,66,5,199,66,5,199,74,4,198,74,130,6,75,
+  6,75,5,6,83,3,70,83,12,70,91,129,70,99,4,134,99,130,133,99,
+  134,99,8,133,99,130,134,99,134,99,4,133,99,175,0,36,255,255,130,124,
+  239,133,115,23,0,99,129,107,140,84,255,255,129,245,189,23,0,99,129,113,
+  173,5,255,255,129,40,132,8,0,99,129,249,222,127,255,255,41,255,255,131,
+  245,189,47,165,118,206,127,255,255,36,255,255,129,40,132,8,0,99,129,249,
+  222,127,255,255,18,255,255,131,241,148,196,49,5,58,3,70,58,3,69,58,
+  3,70,66,7,134,66,129,134,74,23,198,74,129,134,74,3,134,66,18,135,
+  66,133,199,74,199,66,199,74,199,66,199,66,5,199,74,130,198,74,199,74,
+  3,198,74,4,6,83,130,70,83,70,83,12,70,91,137,134,99,70,91,70,
+  99,134,99,134,99,134,91,70,91,134,91,134,91,3,134,99,11,134,91,132,
+  134,99,134,99,133,99,133,99,145,0,36,255,255,129,107,140,24,0,99,129,
+  179,181,83,255,255,129,124,239,24,0,99,129,245,189,5,255,255,129,40,132,
+  8,0,99,129,249,222,127,255,255,37,255,255,131,190,247,245,189,107,140,3,
+  0,99,129,118,206,127,255,255,36,255,255,129,40,132,8,0,99,129,249,222,
+  127,255,255,17,255,255,131,176,140,196,49,70,58,10,134,66,3,134,74,17,
+  198,74,131,134,74,134,74,198,74,4,134,74,3,134,66,130,135,66,134,66,
+  18,135,66,7,199,74,5,198,74,129,6,75,3,6,83,129,70,83,4,70,
+  91,9,134,99,6,70,91,129,134,91,26,70,91,134,0,35,255,255,129,245,
+  189,25,0,99,129,184,214,83,255,255,129,173,148,24,0,99,129,59,231,5,
+  255,255,129,40,132,8,0,99,129,249,222,127,255,255,34,255,255,131,59,231,
+  245,189,40,132,6,0,99,129,118,206,127,255,255,36,255,255,129,40,132,8,
+  0,99,129,249,222,127,255,255,15,255,255,133,190,247,111,132,4,50,134,66,
+  134,74,27,198,74,129,134,74,10,134,66,20,135,66,129,135,74,4,199,74,
+  3,198,74,4,6,83,129,70,83,3,70,91,15,134,99,129,133,99,26,70,
+  91,6,70,83,1,70,91,185,0,34,255,255,130,190,247,133,115,12,0,99,
+  130,47,165,245,189,5,255,255,131,190,247,245,189,179,181,3,0,99,129,59,
+  231,82,255,255,129,249,222,13,0,99,130,245,189,249,222,5,255,255,133,245,
+  189,245,189,133,115,0,99,133,115,6,255,255,129,40,132,8,0,99,129,249,
+  222,127,255,255,34,255,255,129,113,173,8,0,99,129,118,206,127,255,255,36,
+  255,255,129,40,132,8,0,99,129,249,222,127,255,255,14,255,255,134,190,247,
+  110,132,68,58,134,74,198,74,198,74,5,6,83,12,198,74,8,134,74,11,
+  134,66,3,135,66,131,71,66,135,66,71,66,13,135,66,129,135,74,3,199,
+  74,131,198,74,198,74,6,75,3,6,83,4,70,91,19,134,99,129,70,99,
+  22,70,91,129,70,83,3,70,91,8,70,83,176,0,34,255,255,129,245,189,
+  11,0,99,130,107,140,59,231,11,255,255,130,118,206,173,148,83,255,255,129,
+  173,148,11,0,99,129,113,173,11,255,255,130,184,214,47,165,6,255,255,129,
+  40,132,8,0,99,129,249,222,127,255,255,34,255,255,129,113,173,8,0,99,
+  129,118,206,127,255,255,36,255,255,129,40,132,8,0,99,129,249,222,127,255,
+  255,13,255,255,131,190,247,45,124,68,58,3,198,74,8,6,83,6,198,74,
+  130,134,74,134,74,16,134,66,131,135,66,70,66,70,66,7,71,66,11,135,
+  66,129,135,74,3,199,74,3,198,74,3,6,83,4,70,91,3,134,99,129,
+  133,99,13,134,99,133,133,99,134,99,133,91,69,91,69,91,5,70,91,8,
+  70,83,16,70,91,6,70,83,170,0,33,255,255,130,190,247,133,115,10,0,
+  99,129,113,173,97,255,255,129,249,222,11,0,99,129,245,189,20,255,255,129,
+  40,132,8,0,99,129,249,222,127,255,255,34,255,255,129,113,173,8,0,99,
+  129,118,206,127,255,255,36,255,255,129,40,132,8,0,99,129,249,222,127,255,
+  255,12,255,255,131,189,247,204,115,133,66,3,198,74,6,6,83,4,198,74,
+  129,134,74,18,134,66,132,70,66,71,66,70,66,70,66,8,71,66,10,135,
+  66,130,135,74,135,74,6,198,74,132,6,75,6,83,6,83,70,83,3,70,
+  91,129,134,91,3,134,99,4,133,99,7,134,99,131,134,91,134,91,133,91,
+  4,70,91,4,70,83,129,6,83,10,70,83,17,70,91,5,70,83,172,0,
+  33,255,255,129,245,189,10,0,99,129,173,148,98,255,255,129,113,173,10,0,
+  99,129,179,181,21,255,255,129,40,132,8,0,99,129,249,222,127,255,255,34,
+  255,255,129,113,173,8,0,99,129,118,206,127,255,255,36,255,255,129,40,132,
+  8,0,99,129,249,222,127,255,255,11,255,255,131,124,231,203,107,133,66,11,
+  198,74,129,134,74,11,134,66,4,70,66,138,71,66,71,66,70,66,71,66,
+  70,66,70,66,71,66,71,66,70,66,70,66,4,71,66,11,135,66,131,135,
+  74,134,74,135,74,6,198,74,5,6,83,4,70,91,131,134,91,134,91,134,
+  99,4,133,99,3,134,91,6,70,91,3,70,83,14,6,83,4,70,83,130,
+  70,91,70,83,16,70,91,4,70,83,175,0,33,255,255,129,107,140,9,0,
+  99,130,133,115,124,239,98,255,255,129,133,115,9,0,99,129,40,132,22,255,
+  255,129,40,132,8,0,99,129,249,222,127,255,255,34,255,255,129,113,173,8,
+  0,99,129,118,206,127,255,255,36,255,255,129,40,132,8,0,99,129,249,222,
+  127,255,255,10,255,255,131,59,223,138,99,133,66,6,198,74,130,134,74,134,
+  74,6,134,66,132,70,66,70,66,70,58,70,58,6,70,66,3,70,58,139,
+  71,58,70,58,71,66,71,66,70,66,71,66,70,66,71,66,70,66,70,66,
+  71,66,9,135,66,131,134,66,134,74,134,74,9,198,74,6,6,83,129,70,
+  83,13,70,91,5,70,83,21,6,83,4,70,83,17,70,91,132,70,83,70,
+  83,71,83,71,83,181,0,32,255,255,129,124,239,10,0,99,129,245,189,98,
+  255,255,129,184,214,10,0,99,129,118,206,22,255,255,129,40,132,8,0,99,
+  129,249,222,127,255,255,34,255,255,129,113,173,8,0,99,129,118,206,127,255,
+  255,36,255,255,129,40,132,8,0,99,129,249,222,127,255,255,9,255,255,135,
+  251,222,73,91,133,66,198,74,198,74,134,74,134,74,9,134,66,129,70,66,
+  12,70,58,133,71,58,70,58,71,58,71,58,70,58,5,70,66,130,134,66,
+  70,66,8,134,66,130,134,74,134,74,7,198,74,130,6,75,6,75,7,6,
+  83,3,70,83,8,70,91,5,70,83,13,6,83,135,6,75,6,83,6,75,
+  6,83,6,83,6,75,6,75,7,6,83,130,70,83,70,83,19,70,91,131,
+  70,83,71,83,71,83,155,0,32,255,255,129,245,189,9,0,99,130,133,115,
+  190,247,98,255,255,129,179,181,9,0,99,129,40,132,23,255,255,129,40,132,
+  8,0,99,129,249,222,127,255,255,34,255,255,129,113,173,8,0,99,129,118,
+  206,127,255,255,36,255,255,129,40,132,8,0,99,129,249,222,127,255,255,8,
+  255,255,132,185,206,8,83,133,66,135,74,10,134,66,130,70,66,70,66,18,
+  70,58,3,70,66,7,134,66,130,134,74,134,74,7,198,74,129,6,75,11,
+  6,83,10,70,83,129,70,91,4,70,83,15,6,83,129,198,74,11,197,74,
+  129,5,75,4,6,83,129,70,83,11,70,91,129,134,91,7,70,91,3,70,
+  83,227,1,32,255,255,129,47,165,9,0,99,129,113,173,33,255,255,132,184,
+  214,245,189,245,189,40,132,6,0,99,131,133,115,245,189,118,206,17,255,255,
+  131,118,206,245,189,133,115,5,0,99,132,133,115,245,189,245,189,59,231,24,
+  255,255,129,107,140,9,0,99,129,245,189,23,255,255,129,40,132,8,0,99,
+  129,249,222,4,255,255,130,245,189,47,165,5,0,99,130,245,189,184,214,11,
+  255,255,129,40,132,6,0,99,129,59,231,4,255,255,130,118,206,173,148,3,
+  0,99,130,173,148,245,189,11,255,255,131,59,231,245,189,47,165,5,0,99,
+  131,133,115,245,189,245,189,14,255,255,129,40,132,6,0,99,129,249,222,5,
+  255,255,131,249,222,245,189,133,115,4,0,99,130,179,181,184,214,8,255,255,
+  131,59,231,245,189,133,115,4,0,99,131,47,165,245,189,190,247,16,255,255,
+  132,184,214,245,189,245,189,40,132,6,0,99,131,133,115,245,189,118,206,9,
+  255,255,129,173,148,19,0,99,129,113,173,11,255,255,131,59,231,245,189,47,
+  165,5,0,99,131,133,115,245,189,245,189,24,255,255,131,118,206,245,189,107,
+  140,7,0,99,132,47,165,245,189,245,189,249,222,10,255,255,129,40,132,6,
+  0,99,129,59,231,4,255,255,130,118,206,173,148,3,0,99,130,173,148,245,
+  189,9,255,255,132,184,214,245,189,245,189,40,132,6,0,99,131,133,115,245,
+  189,118,206,12,255,255,129,40,132,6,0,99,5,255,255,131,190,247,245,189,
+  173,148,4,0,99,131,40,132,245,189,249,222,11,255,255,129,40,132,8,0,
+  99,129,249,222,4,255,255,130,245,189,47,165,5,0,99,130,245,189,184,214,
+  121,255,255,131,120,206,199,74,69,58,3,135,66,8,134,66,3,70,66,8,
+  70,58,8,70,66,6,134,66,130,134,74,134,74,8,198,74,131,6,75,6,
+  75,6,83,3,7,83,134,6,83,6,83,70,83,6,83,70,83,70,83,4,
+  71,83,5,70,83,129,70,91,4,70,83,129,70,91,6,70,83,12,6,83,
+  129,6,75,16,197,74,3,6,83,129,70,83,7,70,91,5,134,91,8,70,
+  91,1,70,83,173,1,32,255,255,129,133,115,9,0,99,129,184,214,30,255,
+  255,130,245,189,173,148,15,0,99,129,245,189,13,255,255,129,245,189,14,0,
+  99,130,179,181,59,231,20,255,255,129,190,247,10,0,99,129,59,231,23,255,
+  255,129,40,132,8,0,99,132,249,222,255,255,255,255,245,189,10,0,99,130,
+  107,140,124,239,9,255,255,129,40,132,6,0,99,133,118,206,255,255,255,255,
+  124,239,107,140,6,0,99,129,40,132,9,255,255,130,184,214,107,140,12,0,
+  99,130,113,173,124,239,11,255,255,129,40,132,6,0,99,129,245,189,3,255,
+  255,130,124,239,173,148,9,0,99,130,173,148,190,247,4,255,255,130,124,239,
+  47,165,10,0,99,129,245,189,12,255,255,130,245,189,173,148,15,0,99,129,
+  245,189,7,255,255,129,173,148,19,0,99,129,113,173,9,255,255,130,184,214,
+  107,140,12,0,99,130,113,173,124,239,18,255,255,130,190,247,179,181,16,0,
+  99,131,173,148,245,189,190,247,6,255,255,129,40,132,6,0,99,133,118,206,
+  255,255,255,255,124,239,107,140,6,0,99,129,40,132,6,255,255,130,245,189,
+  173,148,15,0,99,129,245,189,10,255,255,129,40,132,6,0,99,129,59,231,
+  3,255,255,129,245,189,10,0,99,130,173,148,59,231,9,255,255,129,40,132,
+  8,0,99,132,249,222,255,255,255,255,245,189,10,0,99,130,107,140,124,239,
+  118,255,255,131,55,190,135,66,70,66,7,135,66,5,134,66,129,70,66,3,
+  134,66,6,70,66,8,134,66,130,134,74,134,74,9,198,74,3,6,75,130,
+  6,83,6,83,3,7,83,6,71,83,135,70,83,70,83,71,83,71,83,70,
+  83,71,83,71,83,5,70,83,130,70,91,70,91,10,70,83,12,6,83,130,
+  198,74,198,74,5,197,74,131,133,74,197,74,133,74,9,197,74,131,6,83,
+  6,83,70,83,6,70,91,7,134,91,8,70,91,162,1,31,255,255,129,124,
+  239,10,0,99,129,190,247,27,255,255,130,190,247,179,181,19,0,99,129,173,
+  148,10,255,255,130,190,247,107,140,17,0,99,130,47,165,190,247,18,255,255,
+  129,59,231,9,0,99,129,133,115,24,255,255,129,40,132,8,0,99,131,249,
+  222,190,247,173,148,12,0,99,130,40,132,124,239,8,255,255,129,40,132,6,
+  0,99,132,179,181,255,255,190,247,40,132,7,0,99,129,173,148,7,255,255,
+  130,190,247,173,148,16,0,99,129,245,189,10,255,255,129,40,132,6,0,99,
+  133,47,165,255,255,255,255,59,231,133,115,11,0,99,129,173,148,3,255,255,
+  130,59,231,133,115,12,0,99,129,245,189,8,255,255,130,190,247,179,181,19,
+  0,99,129,173,148,6,255,255,129,173,148,19,0,99,129,113,173,7,255,255,
+  130,190,247,173,148,16,0,99,129,245,189,16,255,255,129,118,206,21,0,99,
+  129,124,239,5,255,255,129,40,132,6,0,99,132,179,181,255,255,190,247,40,
+  132,7,0,99,129,173,148,3,255,255,130,190,247,179,181,19,0,99,129,173,
+  148,9,255,255,129,40,132,6,0,99,132,184,214,255,255,190,247,173,148,13,
+  0,99,129,249,222,8,255,255,129,40,132,8,0,99,131,249,222,190,247,173,
+  148,12,0,99,130,40,132,124,239,116,255,255,131,181,181,70,58,134,66,6,
+  135,66,12,134,66,129,134,74,3,134,66,131,134,74,198,74,134,74,13,198,
+  74,5,6,83,3,7,83,3,71,83,135,70,83,71,83,71,83,71,91,71,
+  83,71,83,71,91,5,71,83,130,71,91,71,83,5,70,83,129,70,91,10,
+  70,83,11,6,83,131,6,75,198,74,198,74,4,197,74,130,133,74,133,66,
+  3,132,66,3,133,74,7,197,74,131,5,83,6,83,70,83,4,70,91,3,
+  134,91,129,70,91,3,134,91,9,70,91,114,1,31,255,255,129,184,214,9,
+  0,99,129,107,140,28,255,255,129,179,181,21,0,99,129,47,165,9,255,255,
+  129,107,140,18,0,99,129,107,140,19,255,255,129,118,206,9,0,99,129,173,
+  148,24,255,255,129,40,132,8,0,99,130,184,214,107,140,14,0,99,129,173,
+  148,8,255,255,129,40,132,6,0,99,131,107,140,255,255,47,165,8,0,99,
+  129,113,173,6,255,255,130,124,239,40,132,18,0,99,129,113,173,9,255,255,
+  129,40,132,6,0,99,132,133,115,255,255,59,231,133,115,13,0,99,132,118,
+  206,255,255,59,231,133,115,14,0,99,129,124,239,7,255,255,129,179,181,21,
+  0,99,129,47,165,5,255,255,129,173,148,19,0,99,129,113,173,6,255,255,
+  130,124,239,40,132,18,0,99,129,113,173,14,255,255,129,113,173,22,0,99,
+  129,124,239,5,255,255,129,40,132,6,0,99,131,107,140,255,255,47,165,8,
+  0,99,129,113,173,3,255,255,129,179,181,21,0,99,129,47,165,8,255,255,
+  129,40,132,6,0,99,131,179,181,255,255,173,148,15,0,99,129,59,231,7,
+  255,255,129,40,132,8,0,99,130,184,214,107,140,14,0,99,129,173,148,115,
+  255,255,131,116,165,70,58,134,66,4,135,66,5,134,66,130,134,74,134,74,
+  21,198,74,130,6,75,6,83,9,7,83,8,71,83,131,71,91,71,91,71,
+  83,5,71,91,5,71,83,15,70,83,11,6,83,130,198,74,198,74,3,197,
+  74,130,133,74,133,74,8,132,66,130,132,74,132,74,3,133,74,3,197,74,
+  131,5,75,5,83,6,83,6,70,91,5,134,91,130,70,91,134,91,7,70,
+  91,92,1,31,255,255,129,245,189,9,0,99,129,113,173,28,255,255,129,59,
+  231,22,0,99,129,249,222,7,255,255,129,245,189,19,0,99,129,179,181,19,
+  255,255,129,245,189,9,0,99,129,179,181,24,255,255,129,40,132,8,0,99,
+  129,40,132,16,0,99,129,184,214,7,255,255,129,40,132,6,0,99,130,133,
+  115,249,222,9,0,99,129,245,189,5,255,255,130,190,247,40,132,20,0,99,
+  129,179,181,8,255,255,129,40,132,7,0,99,130,124,239,40,132,14,0,99,
+  131,40,132,190,247,40,132,15,0,99,129,179,181,7,255,255,129,59,231,22,
+  0,99,129,249,222,4,255,255,129,173,148,19,0,99,129,113,173,5,255,255,
+  130,190,247,40,132,20,0,99,129,179,181,12,255,255,129,113,173,23,0,99,
+  129,124,239,5,255,255,129,40,132,6,0,99,130,133,115,249,222,9,0,99,
+  129,245,189,3,255,255,129,59,231,22,0,99,129,249,222,7,255,255,129,40,
+  132,6,0,99,130,47,165,179,181,16,0,99,130,40,132,190,247,6,255,255,
+  129,40,132,8,0,99,129,40,132,16,0,99,129,184,214,113,255,255,132,51,
+  157,70,58,134,66,135,66,3,134,74,7,198,74,130,198,82,198,82,8,6,
+  83,4,198,82,6,6,83,11,7,83,10,71,83,6,71,91,133,71,83,71,
+  83,70,83,71,83,70,91,16,70,83,11,6,83,129,198,82,5,197,74,129,
+  133,74,13,132,66,130,133,74,133,74,3,197,74,131,5,83,6,83,70,83,
+  6,70,91,6,134,91,7,70,91,42,1,31,255,255,129,179,181,9,0,99,
+  129,245,189,29,255,255,129,40,132,21,0,99,129,173,148,6,255,255,130,190,
+  247,133,115,19,0,99,129,249,222,19,255,255,129,113,173,9,0,99,129,245,
+  189,24,255,255,129,40,132,25,0,99,129,47,165,7,255,255,129,40,132,17,
+  0,99,129,118,206,5,255,255,129,173,148,22,0,99,129,249,222,7,255,255,
+  129,40,132,7,0,99,129,40,132,16,0,99,129,107,140,16,0,99,129,133,
+  115,8,255,255,129,40,132,21,0,99,129,173,148,4,255,255,129,173,148,19,
+  0,99,129,113,173,5,255,255,129,173,148,22,0,99,129,249,222,10,255,255,
+  129,245,189,24,0,99,129,124,239,5,255,255,129,40,132,17,0,99,129,118,
+  206,4,255,255,129,40,132,21,0,99,129,173,148,7,255,255,129,40,132,25,
+  0,99,129,245,189,6,255,255,129,40,132,25,0,99,129,47,165,112,255,255,
+  132,241,148,133,66,198,74,199,74,4,198,74,129,198,82,21,6,83,15,7,
+  83,10,71,83,7,71,91,135,71,83,70,83,70,83,70,91,70,83,70,91,
+  70,91,13,70,83,10,6,83,129,5,75,6,197,74,129,133,66,14,132,66,
+  130,133,74,133,74,3,197,74,131,5,83,6,83,70,83,4,70,91,9,134,
+  91,5,70,91,1,71,91,35,1,31,255,255,129,113,173,9,0,99,129,118,
+  206,29,255,255,129,179,181,22,0,99,129,59,231,5,255,255,129,245,189,19,
+  0,99,129,133,115,20,255,255,129,47,165,9,0,99,129,118,206,24,255,255,
+  129,40,132,26,0,99,129,190,247,6,255,255,129,40,132,17,0,99,129,249,
+  222,4,255,255,129,118,206,23,0,99,129,40,132,7,255,255,129,40,132,42,
+  0,99,129,59,231,7,255,255,129,179,181,22,0,99,129,59,231,3,255,255,
+  129,173,148,19,0,99,129,113,173,4,255,255,129,118,206,23,0,99,129,40,
+  132,9,255,255,129,124,239,25,0,99,129,124,239,5,255,255,129,40,132,17,
+  0,99,129,249,222,4,255,255,129,179,181,22,0,99,129,59,231,6,255,255,
+  129,40,132,25,0,99,129,133,115,6,255,255,129,40,132,26,0,99,129,190,
+  247,110,255,255,131,175,140,133,66,198,74,24,6,83,8,7,83,129,7,75,
+  9,7,83,11,71,83,7,71,91,135,71,83,70,91,70,83,70,91,70,83,
+  70,91,70,91,4,70,83,129,70,91,8,70,83,7,6,83,129,6,75,7,
+  197,74,129,133,74,6,132,66,3,68,66,7,132,66,130,133,74,133,74,3,
+  197,74,131,5,83,6,83,6,83,5,70,91,9,134,91,5,70,91,66,1,
+  31,255,255,129,173,148,9,0,99,129,249,222,29,255,255,129,249,222,22,0,
+  99,129,245,189,5,255,255,129,47,165,19,0,99,129,47,165,20,255,255,129,
+  173,148,9,0,99,129,249,222,24,255,255,129,40,132,26,0,99,129,249,222,
+  6,255,255,129,40,132,17,0,99,129,124,239,4,255,255,129,40,132,24,0,
+  99,129,118,206,6,255,255,129,40,132,42,0,99,129,118,206,7,255,255,129,
+  249,222,22,0,99,129,245,189,3,255,255,129,173,148,19,0,99,129,113,173,
+  4,255,255,129,40,132,24,0,99,129,118,206,8,255,255,129,113,173,25,0,
+  99,129,124,239,5,255,255,129,40,132,17,0,99,129,124,239,4,255,255,129,
+  249,222,22,0,99,129,245,189,6,255,255,129,40,132,26,0,99,129,184,214,
+  5,255,255,129,40,132,26,0,99,129,249,222,108,255,255,131,190,247,174,132,
+  197,74,9,6,83,129,6,91,12,6,83,132,7,83,7,83,6,83,6,83,
+  3,7,83,129,7,75,3,7,83,129,7,75,8,7,83,10,71,83,131,71,
+  91,71,91,71,83,3,71,91,133,71,83,71,91,71,91,70,83,71,83,3,
+  70,83,3,70,91,12,70,83,6,6,83,131,6,75,198,74,198,74,6,197,
+  74,129,132,74,5,132,66,4,68,66,8,132,66,129,133,74,4,197,74,132,
+  5,83,6,83,6,83,70,83,4,70,91,9,134,91,4,70,91,1,71,91,
+  238,1,31,255,255,129,173,148,9,0,99,129,249,222,30,255,255,135,133,115,
+  0,99,0,99,133,115,245,189,245,189,124,239,4,255,255,130,184,214,173,148,
+  9,0,99,129,47,165,5,255,255,129,40,132,8,0,99,130,133,115,118,206,
+  4,255,255,130,245,189,179,181,3,0,99,129,245,189,20,255,255,129,173,148,
+  9,0,99,129,59,231,24,255,255,129,40,132,10,0,99,130,133,115,245,189,
+  3,255,255,129,245,189,10,0,99,129,245,189,6,255,255,129,40,132,17,0,
+  99,4,255,255,129,118,206,10,0,99,134,179,181,190,247,255,255,255,255,118,
+  206,40,132,9,0,99,129,107,140,6,255,255,129,40,132,10,0,99,133,47,
+  165,59,231,255,255,255,255,118,206,12,0,99,134,107,140,249,222,255,255,255,
+  255,59,231,173,148,9,0,99,129,245,189,8,255,255,135,133,115,0,99,0,
+  99,133,115,245,189,245,189,124,239,4,255,255,130,184,214,173,148,9,0,99,
+  129,47,165,7,255,255,129,113,173,8,0,99,129,118,206,10,255,255,129,118,
+  206,10,0,99,134,179,181,190,247,255,255,255,255,118,206,40,132,9,0,99,
+  129,107,140,7,255,255,129,124,239,10,0,99,130,47,165,59,231,3,255,255,
+  130,184,214,245,189,9,0,99,129,124,239,5,255,255,129,40,132,17,0,99,
+  6,255,255,135,133,115,0,99,0,99,133,115,245,189,245,189,124,239,4,255,
+  255,130,184,214,173,148,9,0,99,129,47,165,6,255,255,129,40,132,10,0,
+  99,134,173,148,184,214,255,255,255,255,190,247,113,173,10,0,99,129,179,181,
+  5,255,255,129,40,132,10,0,99,130,133,115,245,189,3,255,255,129,245,189,
+  10,0,99,129,245,189,107,255,255,133,189,239,108,132,197,74,70,91,70,91,
+  17,6,83,129,7,83,4,199,82,17,7,83,11,71,83,3,71,91,130,71,
+  83,71,83,4,71,91,3,71,83,129,70,83,4,70,91,12,70,83,5,6,
+  83,131,6,75,6,75,198,74,5,197,74,131,133,74,133,74,132,74,3,132,
+  66,8,68,66,6,132,66,129,133,74,4,197,74,132,5,83,6,83,6,83,
+  70,83,5,70,91,9,134,91,4,70,91,1,5,83,206,1,31,255,255,129,
+  40,132,9,0,99,129,124,239,30,255,255,131,179,181,179,181,124,239,10,255,
+  255,129,107,140,8,0,99,129,107,140,5,255,255,9,0,99,129,249,222,8,
+  255,255,131,118,206,173,148,190,247,20,255,255,129,40,132,9,0,99,129,124,
+  239,24,255,255,129,40,132,9,0,99,130,107,140,124,239,5,255,255,129,118,
+  206,9,0,99,129,179,181,6,255,255,129,40,132,10,0,99,130,107,140,245,
+  189,3,255,255,130,249,222,245,189,4,255,255,129,173,148,9,0,99,129,118,
+  206,5,255,255,130,190,247,107,140,9,0,99,129,59,231,5,255,255,129,40,
+  132,9,0,99,129,113,173,5,255,255,129,118,206,10,0,99,129,107,140,5,
+  255,255,130,190,247,133,115,8,0,99,129,113,173,8,255,255,131,179,181,179,
+  181,124,239,10,255,255,129,107,140,8,0,99,129,107,140,7,255,255,129,113,
+  173,8,0,99,129,118,206,10,255,255,129,173,148,9,0,99,129,118,206,5,
+  255,255,130,190,247,107,140,9,0,99,129,59,231,6,255,255,129,179,181,9,
+  0,99,129,245,189,7,255,255,129,40,132,8,0,99,129,124,239,5,255,255,
+  129,40,132,10,0,99,130,107,140,245,189,3,255,255,130,249,222,245,189,6,
+  255,255,131,179,181,179,181,124,239,10,255,255,129,107,140,8,0,99,129,107,
+  140,6,255,255,129,40,132,9,0,99,129,47,165,6,255,255,129,245,189,9,
+  0,99,129,107,140,5,255,255,129,40,132,9,0,99,130,107,140,124,239,5,
+  255,255,129,118,206,9,0,99,129,179,181,106,255,255,134,124,239,43,124,5,
+  83,70,91,6,91,6,91,17,6,83,19,7,83,13,71,83,9,71,91,4,
+  71,83,134,70,91,70,83,70,91,70,83,70,83,70,91,10,70,83,5,6,
+  83,130,6,75,198,74,4,197,74,130,133,74,133,74,6,132,66,11,68,66,
+  3,132,66,130,132,74,132,74,4,197,74,133,5,83,6,83,6,83,70,83,
+  70,83,5,70,91,8,134,91,3,70,91,130,5,83,136,99,159,1,31,255,
+  255,129,40,132,9,0,99,129,124,239,43,255,255,129,184,214,8,0,99,129,
+  133,115,5,255,255,9,0,99,32,255,255,129,40,132,9,0,99,129,124,239,
+  24,255,255,129,40,132,8,0,99,130,133,115,124,239,7,255,255,129,40,132,
+  8,0,99,129,113,173,6,255,255,129,40,132,9,0,99,129,173,148,10,255,
+  255,129,190,247,9,0,99,129,113,173,7,255,255,129,249,222,9,0,99,129,
+  245,189,5,255,255,129,40,132,8,0,99,129,40,132,6,255,255,129,190,247,
+  10,0,99,129,124,239,6,255,255,129,47,165,8,0,99,129,173,148,21,255,
+  255,129,184,214,8,0,99,129,133,115,7,255,255,129,113,173,8,0,99,129,
+  118,206,9,255,255,129,190,247,9,0,99,129,113,173,7,255,255,129,249,222,
+  9,0,99,129,245,189,6,255,255,129,40,132,8,0,99,129,173,148,8,255,
+  255,129,40,132,8,0,99,129,124,239,5,255,255,129,40,132,9,0,99,129,
+  173,148,26,255,255,129,184,214,8,0,99,129,133,115,6,255,255,129,40,132,
+  8,0,99,130,133,115,190,247,7,255,255,129,40,132,9,0,99,129,190,247,
+  4,255,255,129,40,132,8,0,99,130,133,115,124,239,7,255,255,129,40,132,
+  8,0,99,129,113,173,105,255,255,133,59,223,201,107,5,83,70,91,6,91,
+  5,6,83,130,7,83,7,83,10,6,83,18,7,83,130,71,83,7,83,12,
+  71,83,6,71,91,129,71,83,4,71,91,132,71,83,71,83,70,83,70,83,
+  4,70,91,10,70,83,6,6,83,130,6,75,6,75,4,197,74,130,133,74,
+  133,66,5,132,66,4,68,66,129,68,58,8,68,66,4,132,66,129,132,74,
+  4,197,74,129,5,83,3,6,83,129,70,83,6,70,91,6,134,91,134,70,
+  91,70,91,71,91,5,83,136,99,249,214,169,1,31,255,255,129,40,132,9,
+  0,99,129,124,239,6,255,255,129,173,148,15,0,99,129,245,189,20,255,255,
+  129,190,247,9,0,99,4,255,255,129,190,247,9,0,99,32,255,255,129,40,
+  132,9,0,99,129,124,239,24,255,255,129,40,132,8,0,99,129,245,189,8,
+  255,255,129,179,181,8,0,99,129,47,165,6,255,255,129,40,132,8,0,99,
+  129,40,132,11,255,255,129,184,214,9,0,99,129,124,239,8,255,255,129,107,
+  140,8,0,99,129,47,165,5,255,255,129,40,132,8,0,99,129,118,206,7,
+  255,255,129,107,140,8,0,99,129,47,165,7,255,255,129,245,189,8,0,99,
+  129,173,148,21,255,255,129,190,247,9,0,99,7,255,255,129,113,173,8,0,
+  99,129,118,206,9,255,255,129,184,214,9,0,99,129,124,239,8,255,255,129,
+  107,140,8,0,99,129,47,165,5,255,255,129,59,231,9,0,99,129,249,222,
+  8,255,255,129,40,132,8,0,99,129,124,239,5,255,255,129,40,132,8,0,
+  99,129,40,132,27,255,255,129,190,247,9,0,99,6,255,255,129,40,132,8,
+  0,99,129,245,189,8,255,255,129,245,189,9,0,99,129,59,231,4,255,255,
+  129,40,132,8,0,99,129,245,189,8,255,255,129,179,181,8,0,99,129,47,
+  165,104,255,255,131,250,214,136,99,5,83,4,6,83,4,7,83,133,6,83,
+  6,83,7,83,6,83,6,83,15,7,83,133,71,83,71,83,7,83,71,83,
+  7,83,11,71,83,131,71,91,71,83,71,83,17,71,91,3,70,83,129,70,
+  91,3,70,83,129,70,91,8,70,83,6,6,83,129,6,75,5,197,74,129,
+  133,74,4,132,66,5,68,66,4,67,58,129,68,58,6,68,66,4,132,66,
+  129,133,74,4,197,74,129,5,83,3,6,83,4,70,83,3,70,91,5,134,
+  91,135,70,91,70,91,71,91,5,83,136,99,250,214,255,255,154,1,31,255,
+  255,129,40,132,9,0,99,129,124,239,6,255,255,129,173,148,15,0,99,129,
+  245,189,21,255,255,9,0,99,5,255,255,9,0,99,129,245,189,31,255,255,
+  129,40,132,9,0,99,129,124,239,24,255,255,129,40,132,8,0,99,129,249,
+  222,8,255,255,129,245,189,8,0,99,129,173,148,6,255,255,129,40,132,8,
+  0,99,129,245,189,11,255,255,129,179,181,8,0,99,129,107,140,9,255,255,
+  129,245,189,8,0,99,129,133,115,5,255,255,129,40,132,8,0,99,129,249,
+  222,7,255,255,129,47,165,8,0,99,129,245,189,7,255,255,129,118,206,8,
+  0,99,129,173,148,22,255,255,9,0,99,7,255,255,129,113,173,8,0,99,
+  129,118,206,9,255,255,129,179,181,8,0,99,129,107,140,9,255,255,129,245,
+  189,8,0,99,129,133,115,5,255,255,129,245,189,8,0,99,129,133,115,9,
+  255,255,129,40,132,8,0,99,129,124,239,5,255,255,129,40,132,8,0,99,
+  129,245,189,28,255,255,9,0,99,6,255,255,129,40,132,8,0,99,129,59,
+  231,8,255,255,129,59,231,9,0,99,129,184,214,4,255,255,129,40,132,8,
+  0,99,129,249,222,8,255,255,129,245,189,8,0,99,129,173,148,103,255,255,
+  134,184,206,71,91,5,83,7,83,6,83,6,83,5,7,83,3,6,83,6,
+  7,83,132,6,83,7,83,7,83,70,83,6,7,83,19,71,83,130,71,91,
+  71,83,15,71,91,4,70,91,12,70,83,5,6,83,130,5,83,5,75,5,
+  197,74,132,133,74,133,66,132,66,132,66,8,68,66,130,68,58,67,58,3,
+  68,58,7,68,66,3,132,66,130,133,66,133,74,4,197,74,5,6,83,130,
+  70,83,70,83,5,70,91,129,134,91,3,70,91,134,71,91,5,83,136,99,
+  250,222,255,255,255,255,154,1,31,255,255,129,40,132,9,0,99,129,124,239,
+  6,255,255,129,173,148,15,0,99,129,245,189,21,255,255,129,40,132,8,0,
+  99,5,255,255,129,107,140,9,0,99,129,245,189,30,255,255,129,40,132,9,
+  0,99,129,124,239,24,255,255,129,40,132,8,0,99,129,249,222,8,255,255,
+  129,184,214,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,124,
+  239,11,255,255,129,47,165,8,0,99,129,179,181,9,255,255,129,249,222,9,
+  0,99,129,190,247,4,255,255,129,40,132,8,0,99,129,249,222,7,255,255,
+  129,113,173,8,0,99,129,245,189,7,255,255,129,249,222,8,0,99,129,173,
+  148,22,255,255,129,40,132,8,0,99,7,255,255,129,113,173,8,0,99,129,
+  118,206,9,255,255,129,47,165,8,0,99,129,179,181,9,255,255,129,249,222,
+  9,0,99,129,190,247,4,255,255,129,179,181,8,0,99,129,47,165,9,255,
+  255,129,40,132,8,0,99,129,124,239,5,255,255,129,40,132,8,0,99,129,
+  124,239,28,255,255,129,40,132,8,0,99,6,255,255,129,40,132,8,0,99,
+  129,124,239,9,255,255,129,133,115,8,0,99,129,245,189,4,255,255,129,40,
+  132,8,0,99,129,249,222,8,255,255,129,184,214,8,0,99,129,173,148,102,
+  255,255,132,119,198,71,91,6,83,71,91,4,6,83,5,7,83,6,71,83,
+  132,70,83,71,83,70,83,70,83,21,71,83,130,71,91,71,83,20,71,91,
+  4,70,91,11,70,83,6,6,83,129,5,75,5,197,74,130,133,74,133,66,
+  4,132,66,133,68,66,68,58,68,58,68,66,68,66,8,68,58,8,68,66,
+  131,132,66,132,66,133,66,6,197,74,129,5,83,4,6,83,130,70,83,70,
+  83,7,70,91,132,71,91,6,83,136,99,250,222,3,255,255,160,1,31,255,
+  255,129,173,148,9,0,99,129,249,222,6,255,255,129,173,148,15,0,99,129,
+  245,189,21,255,255,129,40,132,8,0,99,5,255,255,129,179,181,10,0,99,
+  130,107,140,59,231,28,255,255,129,173,148,9,0,99,129,249,222,24,255,255,
+  129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,
+  148,6,255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,40,132,8,
+  0,99,129,245,189,9,255,255,129,190,247,9,0,99,129,249,222,4,255,255,
+  129,40,132,8,0,99,129,249,222,7,255,255,129,179,181,8,0,99,129,245,
+  189,7,255,255,129,249,222,8,0,99,129,40,132,22,255,255,129,40,132,8,
+  0,99,7,255,255,129,113,173,8,0,99,129,118,206,9,255,255,129,40,132,
+  8,0,99,129,245,189,9,255,255,129,190,247,9,0,99,129,249,222,4,255,
+  255,129,173,148,8,0,99,129,245,189,9,255,255,129,40,132,8,0,99,129,
+  124,239,5,255,255,129,40,132,8,0,99,129,124,239,28,255,255,129,40,132,
+  8,0,99,6,255,255,129,40,132,8,0,99,129,124,239,9,255,255,129,107,
+  140,8,0,99,129,245,189,4,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,101,255,255,132,245,181,6,83,6,
+  83,71,91,4,70,91,131,71,91,71,91,7,91,9,71,91,131,70,91,70,
+  91,70,83,3,71,91,11,71,83,132,71,91,71,83,71,83,71,91,4,71,
+  83,19,71,91,6,70,91,10,70,83,6,6,83,129,5,75,5,197,74,130,
+  133,74,133,74,4,132,66,5,68,66,11,68,58,7,68,66,131,132,66,133,
+  66,133,66,5,197,74,129,5,83,5,6,83,130,70,83,70,83,6,70,91,
+  132,71,91,6,83,136,99,250,222,4,255,255,127,1,31,255,255,129,173,148,
+  9,0,99,129,249,222,6,255,255,129,173,148,15,0,99,129,245,189,21,255,
+  255,9,0,99,5,255,255,129,249,222,12,0,99,130,47,165,124,239,26,255,
+  255,129,173,148,9,0,99,129,249,222,24,255,255,129,40,132,8,0,99,129,
+  249,222,8,255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,
+  8,0,99,129,124,239,11,255,255,129,133,115,8,0,99,129,184,214,10,255,
+  255,129,133,115,8,0,99,129,184,214,4,255,255,129,40,132,8,0,99,129,
+  249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,222,
+  8,0,99,129,40,132,22,255,255,9,0,99,7,255,255,129,113,173,8,0,
+  99,129,118,206,9,255,255,129,133,115,8,0,99,129,184,214,10,255,255,129,
+  133,115,8,0,99,129,184,214,4,255,255,129,40,132,8,0,99,129,118,206,
+  9,255,255,129,40,132,8,0,99,129,124,239,5,255,255,129,40,132,8,0,
+  99,129,124,239,28,255,255,9,0,99,6,255,255,129,40,132,8,0,99,129,
+  124,239,9,255,255,129,173,148,8,0,99,129,179,181,4,255,255,129,40,132,
+  8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,100,255,
+  255,131,180,173,6,83,70,83,27,71,91,4,71,83,130,71,91,71,83,29,
+  71,91,6,70,91,6,70,83,130,6,83,70,83,5,6,83,130,5,83,5,
+  75,5,197,74,129,133,74,4,132,66,5,68,66,14,68,58,5,68,66,133,
+  132,66,132,66,133,66,133,66,133,74,4,197,74,129,5,75,5,6,83,3,
+  70,83,6,70,91,131,6,83,136,99,59,223,5,255,255,165,1,31,255,255,
+  129,47,165,9,0,99,129,118,206,6,255,255,129,173,148,15,0,99,129,245,
+  189,12,255,255,131,245,189,245,189,107,140,14,0,99,129,133,115,6,255,255,
+  129,173,148,13,0,99,130,113,173,190,247,24,255,255,129,47,165,9,0,99,
+  129,118,206,24,255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,
+  222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,11,
+  255,255,9,0,99,129,249,222,10,255,255,129,40,132,8,0,99,129,118,206,
+  4,255,255,129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,
+  99,129,245,189,7,255,255,129,249,222,8,0,99,129,40,132,13,255,255,131,
+  245,189,245,189,107,140,14,0,99,129,133,115,7,255,255,129,113,173,8,0,
+  99,129,118,206,9,255,255,9,0,99,129,249,222,10,255,255,129,40,132,8,
+  0,99,129,118,206,4,255,255,9,0,99,129,249,222,9,255,255,129,40,132,
+  8,0,99,129,124,239,5,255,255,129,40,132,8,0,99,129,124,239,19,255,
+  255,131,245,189,245,189,107,140,14,0,99,129,133,115,6,255,255,129,40,132,
+  8,0,99,129,124,239,9,255,255,129,113,173,8,0,99,129,113,173,4,255,
+  255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,
+  173,148,99,255,255,131,113,157,5,83,70,91,3,71,91,129,70,91,25,71,
+  91,131,71,83,71,91,71,83,31,71,91,4,70,91,6,70,83,6,6,83,
+  131,5,83,5,83,5,75,5,197,74,129,133,74,4,132,66,4,68,66,5,
+  68,58,129,67,58,3,68,58,130,67,58,67,58,3,68,58,130,68,66,68,
+  58,5,68,66,3,132,66,130,133,74,133,74,4,197,74,7,6,83,130,70,
+  83,70,83,6,70,91,131,5,83,137,99,59,223,6,255,255,173,1,31,255,
+  255,129,113,173,9,0,99,129,245,189,9,255,255,129,59,231,3,245,189,129,
+  133,115,8,0,99,129,245,189,9,255,255,130,184,214,173,148,18,0,99,129,
+  40,132,6,255,255,130,124,239,133,115,13,0,99,130,133,115,184,214,23,255,
+  255,129,113,173,9,0,99,129,245,189,24,255,255,129,40,132,8,0,99,129,
+  249,222,8,255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,
+  8,0,99,129,124,239,10,255,255,129,124,239,9,0,99,129,124,239,10,255,
+  255,129,173,148,8,0,99,129,245,189,4,255,255,129,40,132,8,0,99,129,
+  249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,222,
+  8,0,99,129,40,132,10,255,255,130,184,214,173,148,18,0,99,129,40,132,
+  7,255,255,129,113,173,8,0,99,129,118,206,8,255,255,129,124,239,9,0,
+  99,129,124,239,10,255,255,129,173,148,8,0,99,129,245,189,4,255,255,9,
+  0,99,129,59,231,9,255,255,129,40,132,8,0,99,129,124,239,5,255,255,
+  129,40,132,8,0,99,129,124,239,16,255,255,130,184,214,173,148,18,0,99,
+  129,40,132,6,255,255,129,40,132,8,0,99,129,124,239,9,255,255,129,113,
+  173,8,0,99,129,113,173,4,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,98,255,255,131,239,148,5,83,70,
+  91,6,71,91,129,70,91,56,71,91,3,70,91,6,70,83,7,6,83,130,
+  5,75,5,75,4,197,74,130,133,74,133,66,4,132,66,3,68,66,4,68,
+  58,3,67,58,3,68,66,136,68,58,68,58,67,58,68,58,68,66,68,58,
+  68,66,68,58,4,68,66,131,132,66,132,66,133,66,3,133,74,3,197,74,
+  129,6,75,6,6,83,6,70,83,134,70,91,70,83,71,83,5,75,137,99,
+  59,223,7,255,255,144,1,31,255,255,129,245,189,9,0,99,129,113,173,14,
+  255,255,129,124,239,7,0,99,129,245,189,7,255,255,130,249,222,107,140,20,
+  0,99,129,40,132,7,255,255,129,184,214,15,0,99,129,179,181,22,255,255,
+  129,245,189,9,0,99,129,47,165,24,255,255,129,40,132,8,0,99,129,249,
+  222,8,255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,
+  0,99,129,124,239,10,255,255,129,124,239,9,0,99,129,124,239,10,255,255,
+  129,173,148,8,0,99,129,245,189,4,255,255,129,40,132,8,0,99,129,249,
+  222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,222,8,
+  0,99,129,40,132,8,255,255,130,249,222,107,140,20,0,99,129,40,132,7,
+  255,255,129,113,173,8,0,99,129,118,206,8,255,255,129,124,239,9,0,99,
+  129,124,239,10,255,255,129,173,148,8,0,99,129,245,189,3,255,255,129,124,
+  239,9,0,99,129,124,239,9,255,255,129,40,132,8,0,99,129,124,239,5,
+  255,255,129,40,132,8,0,99,129,124,239,14,255,255,130,249,222,107,140,20,
+  0,99,129,40,132,6,255,255,129,40,132,8,0,99,129,124,239,9,255,255,
+  129,113,173,8,0,99,129,113,173,4,255,255,129,40,132,8,0,99,129,249,
+  222,8,255,255,129,249,222,8,0,99,129,173,148,96,255,255,131,190,247,174,
+  140,69,83,65,71,91,129,70,91,7,70,83,7,6,83,134,5,75,197,74,
+  197,74,196,74,197,74,133,74,5,132,66,132,68,66,68,66,68,58,68,58,
+  5,67,58,5,68,58,129,68,66,5,68,58,6,68,66,132,132,66,132,66,
+  133,74,133,74,5,197,74,6,6,83,9,70,83,132,71,83,5,75,137,99,
+  59,231,8,255,255,146,1,31,255,255,129,118,206,9,0,99,129,107,140,14,
+  255,255,129,124,239,7,0,99,129,245,189,6,255,255,129,245,189,22,0,99,
+  129,107,140,8,255,255,129,184,214,15,0,99,129,113,173,21,255,255,129,118,
+  206,9,0,99,129,107,140,24,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,
+  129,124,239,10,255,255,129,124,239,9,0,99,129,124,239,10,255,255,129,173,
+  148,8,0,99,129,245,189,4,255,255,129,40,132,8,0,99,129,249,222,7,
+  255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,222,8,0,99,
+  129,40,132,7,255,255,129,245,189,22,0,99,129,107,140,7,255,255,129,113,
+  173,8,0,99,129,118,206,8,255,255,129,124,239,9,0,99,129,124,239,10,
+  255,255,129,173,148,8,0,99,129,245,189,3,255,255,129,124,239,9,0,99,
+  129,124,239,9,255,255,129,40,132,8,0,99,129,124,239,5,255,255,129,40,
+  132,8,0,99,129,124,239,13,255,255,129,245,189,22,0,99,129,107,140,6,
+  255,255,129,40,132,8,0,99,129,124,239,9,255,255,129,113,173,8,0,99,
+  129,113,173,4,255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,
+  222,8,0,99,129,173,148,95,255,255,132,124,239,108,124,69,83,134,91,62,
+  71,91,3,70,91,6,70,83,7,6,83,129,5,75,3,197,74,129,196,74,
+  6,132,66,132,68,66,67,66,68,66,68,58,8,67,58,134,68,58,68,66,
+  68,66,68,58,68,66,68,66,4,68,58,4,68,66,132,132,66,132,66,133,
+  74,133,74,4,197,74,129,198,82,6,6,83,10,70,83,132,71,83,5,75,
+  201,107,59,223,9,255,255,146,1,31,255,255,129,59,231,10,0,99,129,190,
+  247,13,255,255,129,124,239,7,0,99,129,245,189,5,255,255,129,245,189,23,
+  0,99,129,173,148,9,255,255,130,59,231,40,132,14,0,99,129,179,181,20,
+  255,255,129,59,231,10,0,99,129,190,247,23,255,255,129,40,132,8,0,99,
+  129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,
+  132,8,0,99,129,124,239,10,255,255,129,124,239,9,0,99,129,124,239,10,
+  255,255,129,173,148,8,0,99,129,245,189,4,255,255,129,40,132,8,0,99,
+  129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,
+  222,8,0,99,129,40,132,6,255,255,129,245,189,23,0,99,129,173,148,7,
+  255,255,129,113,173,8,0,99,129,118,206,8,255,255,129,124,239,9,0,99,
+  129,124,239,10,255,255,129,173,148,8,0,99,129,245,189,3,255,255,129,124,
+  239,9,0,99,129,124,239,9,255,255,129,40,132,8,0,99,129,124,239,5,
+  255,255,129,40,132,8,0,99,129,124,239,12,255,255,129,245,189,23,0,99,
+  129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,9,255,255,129,113,
+  173,8,0,99,129,113,173,4,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,94,255,255,131,59,231,107,116,69,
+  83,4,135,91,57,71,91,3,70,91,6,70,83,7,6,83,130,6,75,5,
+  75,4,197,74,129,132,74,3,132,66,133,68,66,67,66,67,66,67,58,67,
+  66,10,67,58,4,68,58,4,68,66,129,68,58,5,68,66,131,132,66,132,
+  66,133,74,3,197,74,129,198,74,7,6,83,10,70,83,133,71,83,71,83,
+  5,75,202,107,59,231,10,255,255,160,1,31,255,255,129,190,247,10,0,99,
+  129,184,214,13,255,255,129,124,239,7,0,99,129,245,189,4,255,255,129,124,
+  239,24,0,99,129,173,148,11,255,255,129,179,181,14,0,99,129,59,231,19,
+  255,255,129,190,247,10,0,99,129,118,206,23,255,255,129,40,132,8,0,99,
+  129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,
+  132,8,0,99,129,124,239,10,255,255,129,124,239,9,0,99,129,124,239,10,
+  255,255,129,173,148,8,0,99,129,245,189,4,255,255,129,40,132,8,0,99,
+  129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,
+  222,8,0,99,129,40,132,5,255,255,129,124,239,24,0,99,129,173,148,7,
+  255,255,129,113,173,8,0,99,129,118,206,8,255,255,129,124,239,9,0,99,
+  129,124,239,10,255,255,129,173,148,8,0,99,129,245,189,3,255,255,129,124,
+  239,9,0,99,129,124,239,9,255,255,129,40,132,8,0,99,129,124,239,5,
+  255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,124,239,24,0,99,
+  129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,9,255,255,129,173,
+  148,8,0,99,129,179,181,4,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,93,255,255,131,250,222,201,107,69,
+  83,8,135,91,129,71,91,6,135,91,14,71,91,7,135,91,130,71,91,135,
+  91,22,71,91,130,70,91,70,91,6,70,83,8,6,83,130,6,75,198,74,
+  5,197,74,133,132,74,132,66,132,66,68,66,68,66,16,67,58,3,68,58,
+  8,68,66,132,132,66,132,66,133,74,133,74,3,197,74,129,198,74,6,6,
+  83,131,70,83,71,83,71,83,8,70,83,133,71,83,71,83,5,75,201,99,
+  59,231,11,255,255,196,1,32,255,255,129,107,140,9,0,99,129,179,181,13,
+  255,255,129,124,239,7,0,99,129,245,189,4,255,255,129,113,173,9,0,99,
+  131,40,132,245,189,190,247,4,255,255,129,40,132,7,0,99,129,113,173,12,
+  255,255,130,124,239,113,173,12,0,99,129,173,148,20,255,255,129,107,140,9,
+  0,99,129,47,165,23,255,255,129,40,132,8,0,99,129,249,222,8,255,255,
+  129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,124,
+  239,11,255,255,9,0,99,129,249,222,10,255,255,129,40,132,8,0,99,129,
+  118,206,4,255,255,129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,
+  8,0,99,129,245,189,7,255,255,129,249,222,8,0,99,129,40,132,5,255,
+  255,129,113,173,9,0,99,131,40,132,245,189,190,247,4,255,255,129,40,132,
+  7,0,99,129,113,173,7,255,255,129,113,173,8,0,99,129,118,206,9,255,
+  255,9,0,99,129,249,222,10,255,255,129,40,132,8,0,99,129,118,206,3,
+  255,255,129,124,239,9,0,99,129,249,222,9,255,255,129,40,132,8,0,99,
+  129,124,239,5,255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,113,
+  173,9,0,99,131,40,132,245,189,190,247,4,255,255,129,40,132,7,0,99,
+  129,113,173,6,255,255,129,40,132,8,0,99,129,124,239,9,255,255,129,107,
+  140,8,0,99,129,245,189,4,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,92,255,255,131,184,206,200,99,69,
+  83,16,135,91,11,71,91,16,135,91,17,71,91,130,70,91,70,91,4,70,
+  83,5,6,83,6,6,75,5,197,74,129,196,74,3,132,66,129,68,66,18,
+  67,58,3,68,58,130,68,66,68,58,5,68,66,131,132,66,133,66,133,74,
+  4,197,74,129,198,74,7,6,83,133,70,83,71,83,71,83,70,83,71,83,
+  5,70,83,133,71,83,71,83,197,74,202,107,59,231,12,255,255,190,1,32,
+  255,255,129,179,181,9,0,99,130,133,115,190,247,12,255,255,129,124,239,7,
+  0,99,129,245,189,3,255,255,129,190,247,9,0,99,129,173,148,7,255,255,
+  129,40,132,7,0,99,129,113,173,14,255,255,130,59,231,173,148,11,0,99,
+  129,124,239,19,255,255,129,179,181,10,0,99,129,124,239,22,255,255,129,40,
+  132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,6,
+  255,255,129,40,132,8,0,99,129,124,239,11,255,255,9,0,99,129,184,214,
+  10,255,255,129,133,115,8,0,99,129,184,214,4,255,255,129,40,132,8,0,
+  99,129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,
+  249,222,8,0,99,129,40,132,4,255,255,129,190,247,9,0,99,129,173,148,
+  7,255,255,129,40,132,7,0,99,129,113,173,7,255,255,129,113,173,8,0,
+  99,129,118,206,9,255,255,9,0,99,129,184,214,10,255,255,129,133,115,8,
+  0,99,129,184,214,4,255,255,9,0,99,129,184,214,9,255,255,129,40,132,
+  8,0,99,129,124,239,5,255,255,129,40,132,8,0,99,129,124,239,10,255,
+  255,129,190,247,9,0,99,129,173,148,7,255,255,129,40,132,7,0,99,129,
+  113,173,6,255,255,129,40,132,8,0,99,129,124,239,9,255,255,129,133,115,
+  8,0,99,129,118,206,4,255,255,129,40,132,8,0,99,129,249,222,8,255,
+  255,129,249,222,8,0,99,129,173,148,91,255,255,131,118,198,135,91,70,91,
+  20,135,91,3,71,91,132,135,91,71,91,135,91,71,91,19,135,91,12,71,
+  91,3,70,91,3,70,83,6,6,83,6,6,75,5,197,74,129,196,74,4,
+  132,66,129,68,66,10,67,58,130,3,58,3,58,9,67,58,129,68,58,4,
+  68,66,4,132,66,130,133,74,133,74,4,197,74,130,198,74,198,74,7,6,
+  83,130,71,83,71,83,6,70,83,133,6,83,7,83,197,74,202,107,124,231,
+  13,255,255,214,1,32,255,255,129,184,214,10,0,99,129,118,206,12,255,255,
+  129,124,239,7,0,99,129,245,189,3,255,255,129,184,214,8,0,99,130,133,
+  115,190,247,7,255,255,129,40,132,7,0,99,129,113,173,16,255,255,129,118,
+  206,10,0,99,129,245,189,19,255,255,129,184,214,10,0,99,129,113,173,22,
+  255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,
+  129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,40,
+  132,8,0,99,129,245,189,9,255,255,129,190,247,9,0,99,129,59,231,4,
+  255,255,129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,
+  129,245,189,7,255,255,129,249,222,8,0,99,129,40,132,4,255,255,129,184,
+  214,8,0,99,130,133,115,190,247,7,255,255,129,40,132,7,0,99,129,113,
+  173,7,255,255,129,113,173,8,0,99,129,118,206,9,255,255,129,40,132,8,
+  0,99,129,245,189,9,255,255,129,190,247,9,0,99,129,59,231,4,255,255,
+  9,0,99,129,245,189,9,255,255,129,40,132,8,0,99,129,124,239,5,255,
+  255,129,40,132,8,0,99,129,124,239,10,255,255,129,184,214,8,0,99,130,
+  133,115,190,247,7,255,255,129,40,132,7,0,99,129,113,173,6,255,255,129,
+  40,132,8,0,99,129,124,239,8,255,255,129,190,247,9,0,99,129,249,222,
+  4,255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,
+  99,129,173,148,90,255,255,132,244,181,134,91,134,91,135,99,20,135,91,132,
+  71,91,135,91,135,91,71,91,22,135,91,11,71,91,130,70,91,70,91,4,
+  70,83,3,6,83,130,6,75,6,75,6,198,74,6,197,74,129,196,74,3,
+  132,66,132,68,66,67,66,67,58,67,66,8,67,58,4,3,58,8,67,58,
+  3,68,66,6,132,66,130,133,74,133,74,4,197,74,3,198,74,129,6,75,
+  4,6,83,141,7,83,71,83,71,83,7,83,70,83,70,83,7,83,6,83,
+  6,83,7,83,197,74,42,116,124,231,14,255,255,214,1,32,255,255,130,190,
+  247,133,115,9,0,99,130,133,115,190,247,11,255,255,129,124,239,7,0,99,
+  129,245,189,3,255,255,129,179,181,8,0,99,129,113,173,8,255,255,129,40,
+  132,7,0,99,129,179,181,17,255,255,129,249,222,9,0,99,129,113,173,19,
+  255,255,129,190,247,11,0,99,129,59,231,21,255,255,129,40,132,8,0,99,
+  129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,
+  132,8,0,99,129,124,239,11,255,255,129,47,165,8,0,99,129,113,173,9,
+  255,255,129,59,231,9,0,99,129,190,247,4,255,255,129,40,132,8,0,99,
+  129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,
+  222,8,0,99,129,40,132,4,255,255,129,179,181,8,0,99,129,113,173,8,
+  255,255,129,40,132,7,0,99,129,179,181,7,255,255,129,113,173,8,0,99,
+  129,118,206,9,255,255,129,47,165,8,0,99,129,113,173,9,255,255,129,59,
+  231,9,0,99,129,190,247,4,255,255,129,40,132,8,0,99,129,179,181,9,
+  255,255,129,40,132,8,0,99,129,124,239,5,255,255,129,40,132,8,0,99,
+  129,124,239,10,255,255,129,179,181,8,0,99,129,113,173,8,255,255,129,40,
+  132,7,0,99,129,179,181,6,255,255,129,40,132,8,0,99,129,124,239,8,
+  255,255,129,184,214,9,0,99,129,190,247,4,255,255,129,40,132,8,0,99,
+  129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,89,255,255,131,178,
+  165,69,91,134,91,3,135,99,5,135,91,130,135,99,135,99,15,135,91,129,
+  71,91,20,135,91,13,71,91,129,70,91,3,70,83,132,6,83,6,83,6,
+  75,6,75,4,198,74,10,197,74,129,196,74,3,132,66,130,68,66,68,66,
+  9,67,58,5,3,58,7,67,58,131,67,66,68,66,68,66,5,132,66,132,
+  68,66,132,66,132,66,133,66,3,133,74,129,197,74,5,198,74,129,6,75,
+  3,6,83,3,7,83,4,6,83,133,7,83,7,83,196,74,169,132,188,247,
+  15,255,255,229,1,33,255,255,129,47,165,10,0,99,129,47,165,11,255,255,
+  129,124,239,7,0,99,129,245,189,3,255,255,129,113,173,8,0,99,129,245,
+  189,8,255,255,129,40,132,7,0,99,129,245,189,18,255,255,129,245,189,8,
+  0,99,129,173,148,20,255,255,129,47,165,10,0,99,130,40,132,190,247,20,
+  255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,
+  129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,179,
+  181,8,0,99,129,107,140,9,255,255,129,245,189,8,0,99,129,133,115,5,
+  255,255,129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,
+  129,245,189,7,255,255,129,249,222,8,0,99,129,40,132,4,255,255,129,113,
+  173,8,0,99,129,245,189,8,255,255,129,40,132,7,0,99,129,245,189,7,
+  255,255,129,113,173,8,0,99,129,245,189,9,255,255,129,179,181,8,0,99,
+  129,107,140,9,255,255,129,245,189,8,0,99,129,133,115,5,255,255,129,173,
+  148,8,0,99,129,107,140,9,255,255,129,40,132,8,0,99,129,124,239,5,
+  255,255,129,40,132,8,0,99,129,124,239,10,255,255,129,113,173,8,0,99,
+  129,245,189,8,255,255,129,40,132,7,0,99,129,245,189,6,255,255,129,40,
+  132,8,0,99,129,124,239,8,255,255,129,179,181,8,0,99,129,133,115,5,
+  255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,
+  129,173,148,88,255,255,138,47,157,69,83,134,91,134,99,134,99,135,99,135,
+  99,135,91,135,99,135,99,3,134,99,5,135,99,32,135,91,129,71,91,4,
+  135,91,133,71,91,135,91,135,91,71,91,71,91,3,70,91,130,70,83,70,
+  83,3,6,83,129,6,75,3,198,74,13,197,74,3,132,66,129,67,66,10,
+  67,58,132,3,58,67,58,3,58,3,58,4,67,58,3,67,66,3,131,66,
+  7,132,66,3,68,66,130,132,66,133,66,3,133,74,130,197,74,197,74,4,
+  198,74,129,6,75,5,6,83,136,7,83,6,83,6,83,7,75,6,83,67,
+  83,232,140,253,247,16,255,255,247,1,33,255,255,129,184,214,11,0,99,129,
+  113,173,10,255,255,129,124,239,7,0,99,129,245,189,3,255,255,129,173,148,
+  8,0,99,129,179,181,8,255,255,129,40,132,7,0,99,129,245,189,18,255,
+  255,129,249,222,8,0,99,129,173,148,20,255,255,129,184,214,11,0,99,130,
+  173,148,190,247,19,255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,
+  249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,
+  11,255,255,129,184,214,9,0,99,129,59,231,8,255,255,129,173,148,8,0,
+  99,129,47,165,5,255,255,129,40,132,8,0,99,129,249,222,7,255,255,129,
+  245,189,8,0,99,129,245,189,7,255,255,129,249,222,8,0,99,129,40,132,
+  4,255,255,129,173,148,8,0,99,129,179,181,8,255,255,129,40,132,7,0,
+  99,129,245,189,7,255,255,129,113,173,8,0,99,129,245,189,9,255,255,129,
+  184,214,9,0,99,129,59,231,8,255,255,129,173,148,8,0,99,129,47,165,
+  5,255,255,129,113,173,9,0,99,129,124,239,7,255,255,130,190,247,133,115,
+  8,0,99,129,124,239,5,255,255,129,40,132,8,0,99,129,124,239,10,255,
+  255,129,173,148,8,0,99,129,179,181,8,255,255,129,40,132,7,0,99,129,
+  245,189,6,255,255,129,40,132,8,0,99,129,124,239,8,255,255,129,40,132,
+  8,0,99,129,47,165,5,255,255,129,40,132,8,0,99,129,249,222,8,255,
+  255,129,249,222,8,0,99,129,173,148,86,255,255,131,190,247,238,148,69,83,
+  8,134,99,129,135,99,4,134,99,4,135,99,10,135,91,129,71,91,25,135,
+  91,130,71,91,135,91,4,71,91,130,70,91,70,91,3,70,83,136,6,83,
+  6,75,6,75,198,74,198,74,197,74,197,74,133,74,3,133,66,129,133,74,
+  6,197,74,133,196,74,132,66,132,66,68,66,68,66,11,67,58,137,3,58,
+  67,58,3,58,67,58,67,58,67,66,131,66,131,66,132,74,4,195,74,5,
+  196,74,131,132,74,132,66,132,66,4,68,66,131,132,66,133,66,133,66,3,
+  133,74,6,198,74,139,6,75,7,83,7,83,7,75,7,83,7,75,6,75,
+  69,91,97,108,167,157,189,247,17,255,255,238,1,34,255,255,129,40,132,11,
+  0,99,130,47,165,190,247,8,255,255,129,245,189,7,0,99,129,245,189,3,
+  255,255,129,173,148,8,0,99,129,107,140,7,255,255,129,59,231,8,0,99,
+  129,245,189,18,255,255,129,184,214,8,0,99,129,173,148,21,255,255,129,40,
+  132,11,0,99,130,40,132,249,222,10,255,255,131,59,231,113,173,184,214,5,
+  255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,
+  129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,190,
+  247,9,0,99,129,113,173,7,255,255,129,59,231,9,0,99,129,245,189,5,
+  255,255,129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,
+  129,245,189,7,255,255,129,249,222,8,0,99,129,40,132,4,255,255,129,173,
+  148,8,0,99,129,107,140,7,255,255,129,59,231,8,0,99,129,245,189,7,
+  255,255,129,113,173,8,0,99,129,47,165,9,255,255,129,190,247,9,0,99,
+  129,113,173,7,255,255,129,59,231,9,0,99,129,245,189,5,255,255,129,245,
+  189,9,0,99,129,245,189,7,255,255,129,245,189,9,0,99,129,124,239,5,
+  255,255,129,40,132,8,0,99,129,124,239,10,255,255,129,173,148,8,0,99,
+  129,107,140,7,255,255,129,59,231,8,0,99,129,245,189,6,255,255,129,40,
+  132,8,0,99,129,124,239,7,255,255,129,245,189,9,0,99,129,245,189,5,
+  255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,
+  129,173,148,85,255,255,131,124,239,171,124,69,91,15,134,99,3,135,99,8,
+  135,91,3,71,91,20,135,91,131,71,91,135,91,71,91,3,135,91,130,71,
+  91,135,91,5,70,91,137,70,83,70,83,6,83,6,83,6,75,198,74,197,
+  74,197,74,133,74,3,133,66,3,132,66,5,197,74,132,132,74,132,66,68,
+  66,68,66,8,67,58,4,3,58,5,67,58,132,67,66,131,66,196,74,196,
+  82,9,4,83,132,196,82,197,74,132,74,132,66,4,68,66,131,132,66,133,
+  66,133,66,3,133,74,10,198,74,134,199,74,6,83,99,108,224,124,168,157,
+  189,247,18,255,255,19,2,34,255,255,129,118,206,13,0,99,130,245,189,249,
+  222,3,255,255,131,124,239,245,189,40,132,8,0,99,129,245,189,3,255,255,
+  129,47,165,9,0,99,129,249,222,5,255,255,130,59,231,133,115,8,0,99,
+  129,245,189,6,255,255,131,249,222,47,165,184,214,9,255,255,129,113,173,8,
+  0,99,129,113,173,21,255,255,129,118,206,13,0,99,130,47,165,245,189,5,
+  255,255,134,249,222,245,189,107,140,0,99,0,99,179,181,5,255,255,129,40,
+  132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,6,
+  255,255,129,40,132,8,0,99,129,124,239,12,255,255,129,107,140,9,0,99,
+  129,184,214,5,255,255,130,190,247,107,140,9,0,99,129,124,239,5,255,255,
+  129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,129,245,
+  189,7,255,255,129,249,222,8,0,99,129,40,132,4,255,255,129,47,165,9,
+  0,99,129,249,222,5,255,255,130,59,231,133,115,8,0,99,129,245,189,7,
+  255,255,129,179,181,8,0,99,130,133,115,190,247,9,255,255,129,107,140,9,
+  0,99,129,184,214,5,255,255,130,190,247,107,140,9,0,99,129,124,239,5,
+  255,255,129,59,231,10,0,99,129,59,231,5,255,255,130,59,231,133,115,9,
+  0,99,129,124,239,5,255,255,129,40,132,8,0,99,129,124,239,10,255,255,
+  129,47,165,9,0,99,129,249,222,5,255,255,130,59,231,133,115,8,0,99,
+  129,245,189,6,255,255,129,40,132,8,0,99,129,249,222,6,255,255,129,59,
+  231,10,0,99,129,190,247,5,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,84,255,255,131,59,231,41,116,69,
+  91,16,134,99,5,135,99,6,135,91,8,71,91,14,135,91,9,71,91,5,
+  70,91,138,70,83,70,83,6,83,6,75,198,74,198,74,197,74,197,74,133,
+  66,133,66,6,132,66,3,196,74,3,132,66,129,68,58,5,67,58,130,3,
+  58,3,58,4,2,58,130,3,58,3,58,4,67,58,133,67,66,131,66,196,
+  74,196,82,4,91,5,68,91,138,132,91,68,91,68,91,68,83,4,83,197,
+  74,133,74,133,66,132,66,68,66,4,133,66,3,133,74,9,198,74,135,199,
+  74,198,74,132,91,225,124,224,124,169,157,189,247,19,255,255,9,2,35,255,
+  255,129,40,132,28,0,99,129,245,189,3,255,255,129,179,181,9,0,99,134,
+  133,115,184,214,255,255,255,255,190,247,245,189,10,0,99,129,113,173,6,255,
+  255,129,113,173,3,0,99,130,245,189,245,189,4,255,255,130,59,231,47,165,
+  9,0,99,129,245,189,22,255,255,129,40,132,24,0,99,129,107,140,5,255,
+  255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,
+  173,148,6,255,255,129,40,132,8,0,99,129,124,239,12,255,255,129,245,189,
+  10,0,99,129,179,181,3,255,255,130,118,206,40,132,9,0,99,129,173,148,
+  6,255,255,129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,
+  99,129,245,189,7,255,255,129,249,222,8,0,99,129,40,132,4,255,255,129,
+  179,181,9,0,99,134,133,115,184,214,255,255,255,255,190,247,245,189,10,0,
+  99,129,113,173,7,255,255,129,245,189,9,0,99,135,47,165,190,247,255,255,
+  255,255,118,206,47,165,184,214,3,255,255,129,245,189,10,0,99,129,179,181,
+  3,255,255,130,118,206,40,132,9,0,99,129,173,148,7,255,255,129,133,115,
+  9,0,99,130,133,115,118,206,3,255,255,130,245,189,133,115,10,0,99,129,
+  124,239,5,255,255,129,40,132,8,0,99,129,124,239,10,255,255,129,179,181,
+  9,0,99,134,133,115,184,214,255,255,255,255,190,247,245,189,10,0,99,129,
+  113,173,6,255,255,129,40,132,9,0,99,134,179,181,124,239,255,255,255,255,
+  190,247,179,181,10,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,
+  249,222,8,255,255,129,249,222,8,0,99,129,173,148,83,255,255,131,249,214,
+  200,107,69,91,16,134,99,6,135,99,130,135,91,135,99,5,135,91,7,71,
+  91,16,135,91,131,71,91,71,91,135,91,4,71,91,4,70,91,139,70,83,
+  70,83,6,83,6,83,6,75,198,74,198,74,197,74,197,74,133,66,133,66,
+  10,132,66,129,67,66,3,67,58,5,3,58,5,2,58,129,3,58,5,67,
+  58,133,67,66,131,74,196,82,4,91,68,91,7,132,99,134,68,91,69,91,
+  5,83,197,82,197,74,133,74,3,133,66,5,133,74,8,198,74,136,199,74,
+  199,74,69,91,162,116,32,133,224,124,170,165,189,247,20,255,255,123,1,35,
+  255,255,129,249,222,28,0,99,129,245,189,3,255,255,129,118,206,25,0,99,
+  129,113,173,6,255,255,129,133,115,20,0,99,129,59,231,22,255,255,129,184,
+  214,25,0,99,129,190,247,4,255,255,129,40,132,8,0,99,129,249,222,8,
+  255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,
+  129,124,239,12,255,255,130,190,247,133,115,24,0,99,129,249,222,6,255,255,
+  129,40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,129,245,
+  189,7,255,255,129,249,222,8,0,99,129,40,132,4,255,255,129,118,206,25,
+  0,99,129,113,173,7,255,255,129,118,206,15,0,99,129,245,189,3,255,255,
+  130,190,247,133,115,24,0,99,129,249,222,7,255,255,129,113,173,26,0,99,
+  129,124,239,5,255,255,129,40,132,8,0,99,129,124,239,10,255,255,129,118,
+  206,25,0,99,129,113,173,6,255,255,129,40,132,25,0,99,129,249,222,6,
+  255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,
+  129,173,148,82,255,255,131,119,198,135,91,69,83,3,134,91,14,134,99,8,
+  135,99,5,135,91,7,71,91,16,135,91,7,71,91,4,70,91,129,70,83,
+  3,6,83,130,6,75,198,74,4,197,74,129,133,66,10,132,66,3,67,58,
+  5,3,58,6,2,58,129,3,58,4,67,58,136,67,66,131,66,132,74,196,
+  82,68,91,68,99,132,99,132,99,4,196,99,134,133,99,132,99,69,91,6,
+  83,197,82,197,74,8,133,74,129,134,74,6,198,74,137,199,74,135,74,6,
+  83,35,108,225,132,33,133,160,124,171,165,190,247,21,255,255,146,1,36,255,
+  255,129,179,181,27,0,99,129,245,189,3,255,255,129,124,239,25,0,99,129,
+  47,165,5,255,255,129,184,214,20,0,99,129,40,132,24,255,255,129,179,181,
+  24,0,99,129,184,214,4,255,255,129,40,132,8,0,99,129,249,222,8,255,
+  255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,
+  124,239,13,255,255,129,245,189,23,0,99,129,173,148,7,255,255,129,40,132,
+  8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,
+  255,129,249,222,8,0,99,129,40,132,4,255,255,129,124,239,25,0,99,129,
+  47,165,7,255,255,129,59,231,15,0,99,129,113,173,4,255,255,129,245,189,
+  23,0,99,129,173,148,8,255,255,129,249,222,26,0,99,129,124,239,5,255,
+  255,129,40,132,8,0,99,129,124,239,10,255,255,129,124,239,25,0,99,129,
+  47,165,6,255,255,129,40,132,24,0,99,129,173,148,7,255,255,129,40,132,
+  8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,81,255,
+  255,131,245,181,70,91,69,83,8,134,91,11,134,99,7,135,99,6,135,91,
+  7,71,91,14,135,91,130,71,91,135,91,6,71,91,3,70,91,135,70,83,
+  70,83,6,83,6,83,6,75,198,74,198,74,4,197,74,129,133,74,3,132,
+  66,130,68,66,68,66,4,132,66,131,131,66,67,58,66,58,6,3,58,133,
+  2,58,66,58,2,58,2,58,66,58,5,67,58,136,67,66,67,66,131,66,
+  196,74,4,83,68,91,132,99,132,99,5,196,99,133,133,99,133,99,69,91,
+  5,83,197,74,3,133,74,129,134,74,11,198,74,137,134,74,69,83,35,108,
+  225,124,32,133,225,132,160,116,171,165,190,247,21,255,255,1,123,231,181,1,
+  37,255,255,129,173,148,26,0,99,129,245,189,4,255,255,129,173,148,24,0,
+  99,129,173,148,5,255,255,129,113,173,20,0,99,129,118,206,25,255,255,129,
+  173,148,23,0,99,129,179,181,4,255,255,129,40,132,8,0,99,129,249,222,
+  8,255,255,129,249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,
+  99,129,124,239,14,255,255,129,40,132,22,0,99,129,59,231,7,255,255,129,
+  40,132,8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,
+  7,255,255,129,249,222,8,0,99,129,40,132,5,255,255,129,173,148,24,0,
+  99,129,173,148,8,255,255,129,133,115,14,0,99,129,173,148,5,255,255,129,
+  40,132,22,0,99,129,59,231,9,255,255,129,173,148,25,0,99,129,124,239,
+  5,255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,173,148,24,0,
+  99,129,173,148,6,255,255,129,40,132,24,0,99,129,59,231,7,255,255,129,
+  40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,
+  80,255,255,131,114,165,5,83,69,83,3,70,91,6,134,91,130,134,99,134,
+  91,9,134,99,7,135,99,6,135,91,131,71,91,71,91,135,91,3,71,91,
+  130,135,91,71,91,7,135,91,129,71,91,4,135,91,129,71,91,3,135,91,
+  5,71,91,132,70,91,70,91,70,83,70,83,3,6,83,130,6,75,198,74,
+  4,197,74,130,133,74,133,74,3,132,66,129,68,66,5,132,66,132,131,66,
+  67,66,67,58,67,58,3,3,58,3,67,58,130,66,58,66,58,5,67,58,
+  130,67,66,67,66,3,131,66,146,196,74,4,83,68,91,132,99,132,99,196,
+  99,196,107,196,99,196,99,132,99,133,99,69,91,5,91,197,82,198,74,133,
+  74,133,74,134,74,11,198,74,137,134,66,132,99,224,124,32,133,224,132,225,
+  132,160,116,236,173,254,247,21,255,255,130,122,231,38,141,190,1,38,255,255,
+  129,173,148,24,0,99,130,107,140,124,239,4,255,255,129,249,222,16,0,99,
+  130,249,222,133,115,6,0,99,129,40,132,5,255,255,129,133,115,19,0,99,
+  129,107,140,26,255,255,130,190,247,107,140,22,0,99,129,107,140,4,255,255,
+  129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,
+  148,6,255,255,129,40,132,8,0,99,129,124,239,14,255,255,130,59,231,133,
+  115,20,0,99,129,118,206,8,255,255,129,40,132,8,0,99,129,249,222,7,
+  255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,222,8,0,99,
+  129,40,132,5,255,255,129,249,222,16,0,99,130,249,222,133,115,6,0,99,
+  129,40,132,8,255,255,129,113,173,14,0,99,129,133,115,5,255,255,130,59,
+  231,133,115,20,0,99,129,118,206,10,255,255,129,59,231,25,0,99,129,124,
+  239,5,255,255,129,40,132,8,0,99,129,124,239,11,255,255,129,249,222,16,
+  0,99,130,249,222,133,115,6,0,99,129,40,132,6,255,255,129,40,132,23,
+  0,99,129,245,189,8,255,255,129,40,132,8,0,99,129,249,222,8,255,255,
+  129,249,222,8,0,99,129,173,148,79,255,255,131,239,148,196,74,69,83,7,
+  70,91,7,134,91,8,134,99,8,135,99,5,135,91,129,71,91,17,135,91,
+  132,71,91,71,91,135,91,135,91,6,71,91,137,70,91,70,91,70,83,70,
+  83,6,83,6,83,6,75,197,74,198,74,3,197,74,131,133,74,133,66,133,
+  66,3,132,66,129,68,66,3,132,66,135,196,74,132,74,132,66,131,66,67,
+  58,67,58,3,58,5,67,58,8,67,66,4,131,66,145,195,74,4,83,68,
+  91,132,99,196,99,196,99,196,107,196,99,196,99,133,99,69,91,69,91,6,
+  83,198,82,198,74,134,74,134,74,10,198,74,137,134,74,198,74,195,99,32,
+  133,224,132,224,124,225,124,160,124,236,173,22,255,255,131,122,231,37,141,161,
+  116,166,1,39,255,255,129,47,165,22,0,99,129,47,165,7,255,255,129,179,
+  181,14,0,99,131,179,181,255,255,179,181,7,0,99,129,190,247,3,255,255,
+  129,184,214,19,0,99,130,40,132,124,239,28,255,255,129,47,165,22,0,99,
+  129,190,247,3,255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,249,
+  222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,15,
+  255,255,129,249,222,19,0,99,129,118,206,9,255,255,129,40,132,8,0,99,
+  129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,
+  222,8,0,99,129,40,132,6,255,255,129,179,181,14,0,99,131,179,181,255,
+  255,179,181,7,0,99,129,190,247,7,255,255,129,124,239,15,0,99,129,190,
+  247,5,255,255,129,249,222,19,0,99,129,118,206,12,255,255,129,245,189,24,
+  0,99,129,124,239,5,255,255,129,40,132,8,0,99,129,124,239,12,255,255,
+  129,179,181,14,0,99,131,179,181,255,255,179,181,7,0,99,129,190,247,5,
+  255,255,129,40,132,22,0,99,129,113,173,9,255,255,129,40,132,8,0,99,
+  129,249,222,8,255,255,129,249,222,8,0,99,129,173,148,77,255,255,134,125,
+  239,109,132,196,74,5,83,69,83,70,83,7,70,91,6,134,91,11,134,99,
+  4,135,99,26,135,91,8,71,91,141,70,91,70,91,70,83,6,83,6,83,
+  6,75,198,74,198,74,197,74,197,74,133,74,133,66,133,66,3,132,66,130,
+  68,66,68,66,3,132,66,4,196,74,130,132,66,67,66,6,67,58,5,67,
+  66,7,131,66,133,131,74,195,82,67,83,131,91,132,99,4,196,99,133,132,
+  99,133,99,69,91,5,83,198,82,13,198,74,137,134,74,68,91,161,116,32,
+  133,224,132,225,124,226,132,224,124,45,182,22,255,255,132,122,231,37,141,161,
+  116,226,124,209,1,40,255,255,130,184,214,40,132,18,0,99,130,107,140,249,
+  222,9,255,255,129,173,148,12,0,99,132,113,173,255,255,255,255,59,231,7,
+  0,99,129,184,214,3,255,255,130,184,214,40,132,17,0,99,130,107,140,124,
+  239,30,255,255,130,118,206,133,115,18,0,99,130,133,115,184,214,4,255,255,
+  129,40,132,8,0,99,129,249,222,8,255,255,129,249,222,8,0,99,129,173,
+  148,6,255,255,129,40,132,8,0,99,129,124,239,16,255,255,130,59,231,40,
+  132,15,0,99,130,133,115,249,222,10,255,255,129,40,132,8,0,99,129,249,
+  222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,255,129,249,222,8,
+  0,99,129,40,132,7,255,255,129,173,148,12,0,99,132,113,173,255,255,255,
+  255,59,231,7,0,99,129,184,214,8,255,255,129,245,189,14,0,99,129,249,
+  222,6,255,255,130,59,231,40,132,15,0,99,130,133,115,249,222,14,255,255,
+  129,245,189,13,0,99,130,113,173,173,148,8,0,99,129,124,239,5,255,255,
+  129,40,132,8,0,99,129,124,239,13,255,255,129,173,148,12,0,99,132,113,
+  173,255,255,255,255,59,231,7,0,99,129,184,214,5,255,255,129,40,132,21,
+  0,99,129,245,189,10,255,255,129,40,132,8,0,99,129,249,222,8,255,255,
+  129,249,222,8,0,99,129,173,148,76,255,255,138,124,231,201,107,132,66,5,
+  83,5,83,69,83,69,83,70,83,69,83,70,83,6,70,91,5,134,91,131,
+  134,99,134,99,135,99,7,134,99,5,135,99,25,135,91,7,71,91,129,70,
+  91,3,70,83,135,6,83,6,83,6,75,198,74,197,74,197,74,133,66,4,
+  132,66,4,68,66,130,132,66,132,66,5,196,74,130,132,74,131,66,4,67,
+  58,3,67,66,11,131,66,132,195,74,3,83,67,91,131,91,4,196,99,133,
+  132,99,133,99,69,91,5,83,5,83,12,198,74,138,134,74,5,83,34,108,
+  33,133,33,133,225,132,226,124,226,132,224,124,45,182,22,255,255,133,122,231,
+  228,132,161,116,226,124,226,124,239,1,42,255,255,130,245,189,107,140,14,0,
+  99,130,113,173,184,214,12,255,255,129,245,189,9,0,99,130,133,115,118,206,
+  4,255,255,129,40,132,6,0,99,129,179,181,5,255,255,130,118,206,173,148,
+  13,0,99,130,133,115,245,189,34,255,255,130,245,189,40,132,14,0,99,130,
+  40,132,245,189,6,255,255,129,40,132,8,0,99,129,249,222,8,255,255,129,
+  249,222,8,0,99,129,173,148,6,255,255,129,40,132,8,0,99,129,124,239,
+  18,255,255,130,245,189,133,115,12,0,99,129,245,189,12,255,255,129,40,132,
+  8,0,99,129,249,222,7,255,255,129,245,189,8,0,99,129,245,189,7,255,
+  255,129,249,222,8,0,99,129,40,132,8,255,255,129,245,189,9,0,99,130,
+  133,115,118,206,4,255,255,129,40,132,6,0,99,129,179,181,9,255,255,129,
+  118,206,11,0,99,131,40,132,245,189,190,247,8,255,255,130,245,189,133,115,
+  12,0,99,129,245,189,17,255,255,130,249,222,40,132,10,0,99,131,179,181,
+  255,255,173,148,8,0,99,129,124,239,5,255,255,129,40,132,8,0,99,129,
+  124,239,14,255,255,129,245,189,9,0,99,130,133,115,118,206,4,255,255,129,
+  40,132,6,0,99,129,179,181,5,255,255,129,40,132,8,0,99,129,133,115,
+  10,0,99,130,173,148,59,231,11,255,255,129,40,132,8,0,99,129,249,222,
+  8,255,255,129,249,222,8,0,99,129,173,148,75,255,255,132,250,222,71,91,
+  132,66,197,74,3,5,83,4,69,83,129,70,83,6,70,91,6,134,91,130,
+  134,99,135,99,6,134,99,4,135,99,25,135,91,6,71,91,3,70,91,130,
+  70,83,70,83,3,6,83,135,198,74,197,74,197,74,133,74,133,66,132,66,
+  132,66,6,68,66,142,132,66,132,74,196,74,196,74,4,75,4,75,196,74,
+  196,74,195,74,131,66,67,66,67,58,67,58,67,66,12,131,66,133,195,74,
+  3,75,67,91,131,91,132,99,3,196,99,136,132,99,133,99,69,91,69,91,
+  6,83,198,74,198,74,134,74,10,198,74,137,132,99,225,124,33,133,225,132,
+  226,124,226,132,33,133,160,124,239,181,22,255,255,131,122,231,228,132,161,124,
+  3,226,124,172,1,44,255,255,132,190,247,245,189,245,189,133,115,6,0,99,
+  131,245,189,245,189,249,222,16,255,255,131,124,239,245,189,107,140,4,0,99,
+  130,113,173,245,189,13,255,255,129,190,247,8,255,255,131,118,206,245,189,113,
+  173,6,0,99,131,173,148,245,189,184,214,38,255,255,131,124,239,245,189,245,
+  189,7,0,99,131,113,173,245,189,245,189,73,255,255,131,184,214,245,189,173,
+  148,5,0,99,131,40,132,245,189,118,206,67,255,255,131,124,239,245,189,107,
+  140,4,0,99,130,113,173,245,189,13,255,255,129,190,247,10,255,255,131,190,
+  247,245,189,173,148,5,0,99,131,245,189,245,189,190,247,13,255,255,131,184,
+  214,245,189,173,148,5,0,99,131,40,132,245,189,118,206,21,255,255,131,184,
+  214,245,189,133,115,4,0,99,134,173,148,245,189,124,239,255,255,255,255,173,
+  148,8,0,99,129,124,239,30,255,255,131,124,239,245,189,107,140,4,0,99,
+  130,113,173,245,189,13,255,255,129,190,247,5,255,255,129,40,132,8,0,99,
+  131,124,239,245,189,113,173,5,0,99,131,47,165,245,189,124,239,115,255,255,
+  133,120,206,197,74,131,66,196,74,197,74,7,5,83,4,70,83,5,70,91,
+  3,134,91,129,134,99,3,135,99,3,134,99,6,135,99,24,135,91,6,71,
+  91,3,70,91,3,70,83,137,6,83,6,83,6,75,198,74,197,74,133,74,
+  133,66,132,66,132,66,6,68,66,3,132,66,131,196,74,196,74,4,75,3,
+  4,83,135,196,74,195,74,131,66,131,66,67,58,67,66,67,66,10,131,66,
+  143,131,74,195,74,3,83,67,91,131,99,132,99,196,99,196,99,132,99,133,
+  99,69,91,69,91,6,83,197,82,197,74,3,134,74,7,198,74,138,5,83,
+  98,108,32,133,33,133,226,132,226,124,34,133,33,133,98,116,113,173,22,255,
+  255,131,122,231,228,132,160,124,4,226,124,253,0,127,255,255,127,255,255,127,
+  255,255,38,255,255,129,107,140,8,0,99,129,124,239,58,255,255,129,40,132,
+  8,0,99,129,124,239,124,255,255,135,245,181,132,66,131,66,196,74,196,74,
+  197,74,197,74,7,5,83,129,6,83,3,70,83,5,70,91,3,134,91,3,
+  135,91,131,134,91,135,99,135,99,12,135,91,130,71,91,71,91,11,135,91,
+  141,134,91,134,91,135,91,135,91,71,91,71,91,70,91,71,91,71,91,70,
+  91,71,91,71,91,70,91,4,70,83,133,6,83,6,75,198,74,197,74,197,
+  74,3,133,66,129,132,66,7,68,66,133,132,66,132,66,196,74,196,74,4,
+  75,4,4,83,141,196,74,196,74,131,66,131,66,67,58,67,58,67,66,67,
+  66,131,66,67,66,131,66,67,66,67,66,3,131,66,131,195,74,3,83,67,
+  91,3,132,99,139,196,99,132,99,132,99,69,91,69,83,5,83,198,82,198,
+  74,133,74,134,74,134,74,7,198,74,138,35,108,225,132,33,133,225,132,226,
+  124,226,132,33,133,162,124,131,99,114,165,22,255,255,131,57,223,228,132,161,
+  124,5,226,124,244,0,127,255,255,127,255,255,127,255,255,38,255,255,129,133,
+  115,8,0,99,59,255,255,129,40,132,8,0,99,129,124,239,123,255,255,133,
+  113,165,67,66,131,66,132,74,132,74,3,196,74,129,197,74,7,5,83,129,
+  6,83,3,70,83,5,70,91,3,134,91,18,135,91,7,71,91,137,135,91,
+  135,91,71,91,135,91,135,91,71,91,71,91,70,91,134,91,3,70,91,134,
+  71,91,70,91,70,91,71,91,70,91,70,91,3,70,83,139,6,83,6,83,
+  6,75,198,74,197,74,133,74,133,74,133,66,133,66,68,66,68,66,5,68,
+  58,134,68,66,132,66,132,66,196,74,196,74,4,75,5,4,83,132,196,74,
+  195,74,131,66,131,66,3,67,66,129,67,58,4,67,66,134,131,66,131,66,
+  195,74,3,83,67,91,67,91,4,132,99,134,133,99,69,91,69,83,5,83,
+  197,74,197,74,4,134,74,4,198,74,140,134,74,68,91,161,124,33,133,225,
+  132,225,132,226,132,34,133,34,133,99,116,4,83,115,165,22,255,255,131,56,
+  223,227,132,161,124,6,226,124,239,0,127,255,255,127,255,255,127,255,255,37,
+  255,255,129,190,247,8,0,99,129,133,115,59,255,255,129,40,132,8,0,99,
+  129,124,239,122,255,255,133,175,148,66,58,132,66,132,74,132,74,7,196,74,
+  130,197,74,5,75,4,5,83,130,6,83,6,83,3,70,83,4,70,91,132,
+  134,91,134,91,135,91,134,91,17,135,91,8,71,91,3,135,91,129,71,91,
+  11,70,91,3,70,83,3,6,83,132,198,74,198,74,197,74,133,74,3,133,
+  66,130,68,66,68,66,3,68,58,136,4,58,68,58,68,58,68,66,68,66,
+  132,66,196,74,196,74,5,4,83,132,4,75,196,74,195,74,132,74,3,131,
+  66,130,67,66,67,66,4,131,66,143,195,74,3,83,4,83,68,91,132,91,
+  132,99,132,99,133,99,69,91,69,91,5,83,5,83,198,82,197,74,133,74,
+  4,134,74,143,198,74,198,74,135,74,5,83,98,116,33,133,33,133,225,132,
+  226,124,226,132,33,133,163,124,133,107,5,83,179,173,22,255,255,131,56,223,
+  227,132,161,124,7,226,124,230,0,127,255,255,127,255,255,127,255,255,37,255,
+  255,129,245,189,8,0,99,129,107,140,59,255,255,129,40,132,8,0,99,129,
+  124,239,120,255,255,134,125,239,44,124,66,58,132,66,132,74,132,74,9,196,
+  74,3,197,74,3,5,83,130,6,83,6,83,4,70,83,4,70,91,132,134,
+  91,135,91,134,91,134,91,13,135,91,8,71,91,135,135,91,71,91,71,91,
+  135,91,71,91,70,91,71,91,9,70,91,4,70,83,3,6,83,129,198,74,
+  3,197,74,3,133,66,131,68,66,68,58,68,58,5,4,58,135,68,58,68,
+  66,68,66,132,66,196,74,196,74,4,75,4,4,83,129,196,82,3,196,74,
+  130,132,74,132,74,3,131,66,133,131,74,195,74,195,74,196,82,4,83,5,
+  68,91,133,69,91,5,83,5,83,197,74,197,74,3,133,74,6,134,74,140,
+  132,99,225,124,33,133,225,132,162,124,226,132,33,133,226,132,36,116,70,91,
+  5,83,244,181,22,255,255,131,55,223,227,132,161,124,8,226,124,232,0,127,
+  255,255,127,255,255,127,255,255,37,255,255,129,40,132,8,0,99,129,113,173,
+  59,255,255,129,40,132,8,0,99,129,124,239,119,255,255,137,124,231,137,107,
+  66,58,132,66,132,66,132,74,196,74,196,74,196,82,3,4,83,4,196,74,
+  6,197,74,130,6,83,5,83,3,6,83,130,70,83,70,83,5,70,91,3,
+  134,91,13,135,91,9,71,91,131,70,91,71,91,134,91,11,70,91,3,70,
+  83,3,6,83,130,198,74,198,74,3,197,74,132,133,74,133,66,133,66,68,
+  66,3,68,58,5,4,58,133,68,58,68,58,68,66,132,74,132,74,3,196,
+  74,131,4,83,4,83,196,82,5,196,74,3,132,74,3,196,74,136,4,83,
+  4,83,4,91,68,91,68,91,69,91,5,91,5,83,3,197,74,130,133,74,
+  133,74,4,134,74,143,134,66,134,66,68,91,162,116,33,133,33,133,226,124,
+  226,124,34,133,34,133,99,124,134,99,70,91,4,75,244,181,22,255,255,131,
+  247,214,226,132,160,124,9,226,124,216,0,127,255,255,127,255,255,127,255,255,
+  23,255,255,131,47,165,245,189,124,239,10,255,255,129,113,173,9,0,99,129,
+  245,189,59,255,255,129,40,132,8,0,99,129,124,239,118,255,255,131,185,214,
+  71,91,66,58,3,132,66,131,196,74,196,74,196,82,6,4,83,130,196,74,
+  196,74,7,197,74,129,6,75,5,6,83,129,70,83,6,70,91,129,134,91,
+  15,135,91,5,71,91,16,70,91,3,70,83,3,6,83,129,198,74,4,197,
+  74,135,133,74,133,74,133,66,133,66,68,66,68,58,68,58,6,4,58,137,
+  68,58,68,58,68,66,132,66,132,66,132,74,196,74,197,74,197,74,12,196,
+  74,129,196,82,5,5,83,133,197,82,197,74,197,74,133,74,133,74,5,134,
+  66,143,70,66,197,74,35,108,32,133,33,133,225,132,226,124,226,132,34,133,
+  163,124,197,107,70,91,5,83,196,74,245,189,22,255,255,131,246,214,227,132,
+  160,124,10,226,124,247,0,127,255,255,127,255,255,127,255,255,23,255,255,134,
+  133,115,0,99,0,99,107,140,245,189,249,222,4,255,255,131,190,247,245,189,
+  107,140,10,0,99,129,190,247,59,255,255,129,40,132,8,0,99,129,124,239,
+  117,255,255,142,119,198,196,74,66,58,132,74,132,66,132,66,132,74,196,74,
+  196,74,4,83,4,83,5,83,69,83,69,83,3,5,83,9,197,74,6,6,
+  83,130,70,83,70,83,6,70,91,131,134,91,135,91,134,91,11,135,91,132,
+  134,91,70,91,70,91,134,91,17,70,91,130,70,83,70,83,3,6,83,130,
+  198,74,198,74,4,197,74,129,133,74,3,133,66,129,69,66,4,68,58,5,
+  4,58,3,68,58,129,68,66,3,132,66,129,133,74,3,196,74,131,197,74,
+  196,74,196,74,3,132,74,4,196,74,5,197,74,3,133,74,149,133,66,69,
+  66,133,66,69,66,134,66,70,66,133,66,132,91,161,124,32,133,225,132,226,
+  124,226,132,34,133,226,132,100,116,134,99,70,91,5,75,197,82,54,190,22,
+  255,255,131,246,214,226,124,160,124,11,226,124,223,0,127,255,255,127,255,255,
+  127,255,255,22,255,255,129,59,231,22,0,99,129,173,148,60,255,255,129,40,
+  132,8,0,99,129,124,239,116,255,255,131,180,181,131,66,131,66,5,132,74,
+  132,195,74,196,74,4,83,68,83,3,69,91,129,69,83,3,5,83,9,197,
+  74,6,6,83,3,70,83,5,70,91,3,134,91,6,135,91,131,71,91,135,
+  91,135,91,3,134,91,131,70,91,134,91,134,91,16,70,91,130,70,83,70,
+  83,3,6,83,129,198,74,4,197,74,130,133,74,133,74,3,133,66,131,69,
+  66,68,66,68,66,3,68,58,5,4,58,131,68,58,68,58,69,58,3,68,
+  66,131,132,66,132,66,133,66,5,133,74,130,132,74,132,74,8,133,74,4,
+  133,66,3,69,66,145,70,66,70,66,197,82,98,116,33,133,32,133,161,124,
+  162,124,226,132,34,133,164,124,133,107,70,91,70,83,196,74,68,91,183,206,
+  22,255,255,132,246,214,226,124,160,124,225,124,11,226,124,223,0,127,255,255,
+  127,255,255,127,255,255,22,255,255,129,245,189,22,0,99,129,249,222,60,255,
+  255,129,40,132,8,0,99,129,124,239,115,255,255,133,48,157,66,66,131,74,
+  132,74,132,74,6,196,74,130,4,83,68,91,4,69,91,129,69,83,3,5,
+  83,8,197,74,130,6,75,6,75,6,6,83,3,70,83,5,70,91,132,134,
+  91,134,91,135,91,134,91,5,135,91,7,134,91,16,70,91,133,70,83,70,
+  83,6,83,6,83,6,75,5,197,74,130,133,74,133,74,4,133,66,130,69,
+  66,68,66,4,68,58,141,4,58,68,58,4,58,4,58,68,58,69,58,68,
+  58,69,58,69,66,69,66,68,66,69,66,69,66,19,133,66,147,69,66,69,
+  66,70,66,133,74,131,99,226,124,33,133,225,132,226,124,226,132,34,133,226,
+  132,36,116,134,91,70,91,6,83,3,75,35,108,246,214,22,255,255,133,245,
+  206,225,124,161,124,225,124,225,124,3,226,124,129,225,124,7,226,124,218,0,
+  127,255,255,127,255,255,127,255,255,22,255,255,129,47,165,21,0,99,129,47,
+  165,61,255,255,129,40,132,8,0,99,129,124,239,113,255,255,133,190,247,173,
+  140,65,66,131,74,195,74,7,196,74,139,4,83,68,83,69,91,69,91,133,
+  91,133,91,69,91,69,91,69,83,5,83,5,83,9,197,74,129,198,74,7,
+  6,83,130,70,83,70,83,8,70,91,4,134,91,130,135,91,135,91,6,134,
+  91,10,70,91,4,134,91,3,70,91,129,70,83,3,6,83,129,198,74,4,
+  197,74,130,133,74,133,74,5,133,66,130,69,66,68,66,12,68,58,129,69,
+  58,13,69,66,129,133,66,7,69,66,148,133,66,133,66,69,66,70,66,68,
+  91,161,124,33,133,225,132,161,124,226,124,34,133,34,133,100,116,134,99,70,
+  91,69,83,5,83,66,91,163,124,56,231,22,255,255,131,180,206,161,124,161,
+  124,4,226,124,132,225,124,226,124,226,124,225,124,6,226,124,213,0,127,255,
+  255,127,255,255,127,255,255,22,255,255,129,133,115,20,0,99,130,40,132,190,
+  247,61,255,255,129,40,132,8,0,99,129,124,239,112,255,255,131,124,239,42,
+  124,129,66,3,195,74,7,196,74,132,4,83,68,83,68,91,132,91,3,133,
+  91,132,69,91,69,83,5,83,5,83,10,197,74,130,6,75,6,75,6,6,
+  83,130,70,83,70,83,9,70,91,4,134,91,129,70,91,4,134,91,11,70,
+  91,5,134,99,131,134,91,70,91,70,83,3,6,83,129,198,74,3,197,74,
+  130,133,74,133,74,5,133,66,3,68,66,10,68,58,130,69,58,69,58,22,
+  69,66,147,70,66,70,66,197,74,35,108,33,133,33,133,225,132,162,124,226,
+  132,34,133,163,124,197,107,70,91,69,83,5,83,4,91,32,108,227,132,56,
+  223,22,255,255,132,180,206,161,124,225,124,225,124,3,226,124,131,225,124,226,
+  124,226,124,3,225,124,5,226,124,230,0,127,255,255,127,255,255,127,255,255,
+  21,255,255,129,59,231,20,0,99,130,40,132,124,239,62,255,255,129,40,132,
+  8,0,99,129,124,239,111,255,255,131,250,222,136,99,130,74,3,196,82,130,
+  196,74,196,82,5,196,74,132,4,83,68,83,68,91,132,91,3,132,99,133,
+  133,91,133,91,69,83,5,83,5,83,10,197,74,129,198,74,8,6,83,3,
+  70,83,12,70,91,4,134,91,5,70,91,129,71,91,4,70,91,144,134,91,
+  134,99,134,99,198,99,198,99,197,99,133,99,134,99,70,91,70,83,6,83,
+  6,83,198,74,197,74,197,74,133,74,3,133,66,132,132,66,133,66,132,66,
+  132,66,3,68,66,10,68,58,3,69,58,21,69,66,146,133,66,195,99,225,
+  132,33,133,225,132,162,124,226,132,33,133,226,132,197,107,70,99,70,91,5,
+  83,4,83,194,107,160,116,36,141,122,231,22,255,255,137,114,198,161,124,225,
+  124,226,124,225,124,226,124,225,124,225,124,226,124,6,225,124,4,226,124,240,
+  0,127,255,255,127,255,255,127,255,255,21,255,255,129,245,189,19,0,99,130,
+  47,165,190,247,63,255,255,129,40,132,8,0,99,129,124,239,110,255,255,131,
+  119,206,70,91,195,74,3,4,83,132,196,82,4,83,4,83,196,82,4,196,
+  74,140,4,83,68,83,132,91,132,99,132,99,196,99,132,99,133,91,133,91,
+  69,91,5,83,5,83,5,197,74,130,133,74,133,74,3,197,74,129,198,74,
+  9,6,83,3,70,83,8,70,91,130,134,91,70,91,5,134,91,3,70,91,
+  5,70,83,3,70,91,131,134,99,134,99,198,99,4,197,99,136,133,99,69,
+  91,70,83,6,83,6,83,197,74,197,74,133,74,3,133,66,130,132,66,133,
+  66,5,68,66,14,68,58,14,69,66,5,69,58,146,4,83,161,124,33,133,
+  33,133,226,124,226,124,34,133,34,133,100,124,134,99,70,83,69,91,133,74,
+  3,83,160,116,160,124,101,149,123,239,22,255,255,130,114,198,160,116,6,226,
+  124,132,225,124,225,124,226,124,225,124,3,226,124,129,225,124,4,226,124,12,
+  1,127,255,255,127,255,255,127,255,255,22,255,255,130,59,231,179,181,15,0,
+  99,130,107,140,184,214,65,255,255,129,40,132,8,0,99,129,124,239,109,255,
+  255,131,244,181,4,83,3,83,8,4,83,3,196,74,133,3,83,4,83,68,
+  91,132,91,132,99,3,196,99,135,133,91,133,91,69,91,5,83,5,83,197,
+  74,197,74,6,133,74,131,197,74,197,74,5,75,10,6,83,130,70,83,70,
+  83,7,70,91,138,134,91,134,91,134,99,134,99,134,91,134,99,134,91,134,
+  91,70,91,70,91,3,70,83,137,6,83,70,83,70,83,6,83,70,91,70,
+  91,134,91,134,99,134,99,5,197,99,135,133,99,69,91,6,83,5,83,5,
+  83,197,74,133,74,3,133,66,129,132,66,6,68,66,7,68,58,129,4,58,
+  5,68,58,3,69,58,5,69,66,132,69,58,69,58,69,66,69,66,3,69,
+  58,3,5,58,147,132,66,34,108,33,133,33,133,226,124,163,124,226,132,33,
+  133,163,124,197,107,70,91,70,91,197,74,195,49,65,25,96,116,224,124,102,
+  149,123,239,22,255,255,130,113,190,160,116,8,226,124,4,225,124,131,226,124,
+  226,124,225,124,4,226,124,1,1,127,255,255,127,255,255,127,255,255,25,255,
+  255,132,249,222,245,189,245,189,133,115,7,0,99,131,179,181,245,189,124,239,
+  127,255,255,58,255,255,133,113,165,3,83,3,83,68,91,4,91,7,4,83,
+  135,196,74,196,74,4,83,4,83,68,91,132,91,132,99,4,196,99,134,133,
+  91,69,91,69,83,5,83,197,74,197,74,7,133,74,131,197,74,197,74,5,
+  75,11,6,83,130,70,83,70,83,5,70,91,130,134,91,70,91,4,134,99,
+  130,134,91,134,91,5,70,91,130,70,83,70,83,4,6,83,132,70,83,70,
+  91,70,91,133,91,3,133,99,137,197,99,197,107,197,99,133,99,69,91,69,
+  83,5,83,5,75,197,74,3,133,66,129,132,66,6,68,66,5,68,58,134,
+  4,58,4,58,68,58,68,58,4,58,4,58,3,68,58,12,69,58,151,5,
+  58,5,58,5,50,4,58,66,91,225,124,33,133,225,132,226,124,163,124,34,
+  133,226,132,36,116,70,91,70,83,5,83,68,58,2,58,0,83,33,108,224,
+  124,104,157,188,239,22,255,255,131,48,182,160,116,225,124,8,226,124,4,225,
+  124,7,226,124,230,0,127,255,255,127,255,255,127,255,255,127,255,255,95,255,
+  255,134,190,247,237,148,2,75,4,83,68,91,68,91,7,4,83,136,196,74,
+  196,74,4,75,3,83,68,91,68,91,132,99,132,99,3,196,99,135,133,99,
+  133,91,69,91,5,83,5,83,197,74,197,74,6,133,74,3,197,74,129,5,
+  83,4,6,83,129,5,83,7,6,83,130,70,83,70,83,4,70,91,130,134,
+  91,134,91,3,134,99,130,134,91,134,91,6,70,91,130,70,83,6,83,6,
+  7,83,134,6,83,6,83,69,91,133,91,133,99,133,99,3,197,107,138,133,
+  99,69,91,5,83,5,83,197,74,133,74,133,66,133,66,132,66,132,66,6,
+  68,66,4,68,58,130,4,58,68,58,9,4,58,11,5,58,133,197,49,195,
+  74,97,116,32,133,33,133,3,226,132,141,34,133,164,124,134,99,70,91,70,
+  83,197,74,195,82,0,83,160,124,32,141,96,108,41,141,189,247,22,255,255,
+  130,47,182,160,116,10,226,124,4,225,124,7,226,124,232,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,94,255,255,134,125,239,171,140,66,83,67,91,
+  68,91,68,91,7,4,83,129,196,82,3,4,83,132,68,91,132,91,132,99,
+  132,99,3,196,99,135,132,99,133,91,69,91,69,83,5,83,197,74,197,74,
+  6,133,74,4,197,74,129,5,83,4,6,83,6,5,83,132,6,83,6,83,
+  70,83,70,83,4,70,91,129,134,91,3,134,99,129,134,91,6,70,91,130,
+  71,83,71,83,3,7,83,4,199,74,3,198,74,133,197,74,5,83,69,91,
+  133,99,133,99,3,197,107,137,133,99,69,91,5,83,5,83,197,74,133,74,
+  133,66,133,66,132,66,6,68,66,5,68,58,12,4,58,3,5,58,129,5,
+  50,3,5,58,150,197,49,68,58,194,99,33,133,33,133,225,132,226,124,226,
+  132,33,133,226,132,37,108,134,91,70,91,197,74,196,74,194,107,224,124,32,
+  133,224,132,160,124,106,157,125,239,22,255,255,130,47,182,160,116,11,226,124,
+  5,225,124,6,226,124,249,0,127,255,255,127,255,255,127,255,255,127,255,255,
+  93,255,255,136,58,223,167,124,130,91,132,99,131,99,67,91,68,91,68,91,
+  8,4,83,133,67,83,68,91,132,91,132,99,132,99,4,196,99,135,133,99,
+  69,91,70,91,5,83,197,82,197,74,197,74,4,133,74,5,197,74,131,5,
+  83,5,83,6,83,9,5,83,132,6,83,6,83,70,83,70,83,3,70,91,
+  130,134,91,134,91,3,134,99,133,69,91,69,91,69,83,6,83,6,83,5,
+  7,83,4,199,74,139,135,74,134,74,198,74,198,74,134,74,133,74,197,74,
+  5,75,69,91,133,99,133,99,3,197,107,133,133,99,69,91,6,83,197,82,
+  197,74,3,133,66,6,68,66,5,68,58,6,4,58,3,4,50,129,196,49,
+  4,4,50,154,196,49,196,49,5,50,197,49,5,50,3,83,161,124,32,133,
+  225,132,226,132,226,132,34,133,34,133,163,124,133,99,70,91,5,83,132,74,
+  66,91,160,124,32,133,33,108,195,99,224,124,170,165,254,247,22,255,255,131,
+  238,173,160,116,162,124,11,226,124,6,225,124,5,226,124,6,1,127,255,255,
+  127,255,255,127,255,255,127,255,255,92,255,255,143,183,214,101,116,194,99,195,
+  107,195,107,131,99,131,99,131,91,67,91,67,91,67,83,67,83,3,83,3,
+  83,67,83,3,67,91,3,132,99,3,196,99,134,133,99,133,99,69,91,69,
+  91,5,83,5,83,4,197,74,130,133,74,133,74,5,197,74,129,197,82,12,
+  5,83,136,6,83,6,83,70,83,70,83,70,91,70,91,134,91,134,91,3,
+  134,99,134,69,91,69,91,5,83,5,83,6,75,6,83,3,7,83,131,199,
+  74,199,74,135,74,5,135,66,3,134,66,134,133,66,133,66,133,74,5,75,
+  69,91,133,99,4,197,107,136,133,99,5,83,5,83,197,74,197,74,133,66,
+  133,66,132,66,6,68,66,3,68,58,5,4,58,130,4,50,4,50,9,196,
+  49,151,197,49,197,49,132,66,33,108,32,133,33,133,225,132,226,132,226,132,
+  33,133,163,124,197,107,134,99,69,83,197,74,195,82,33,108,224,132,224,132,
+  224,124,225,132,194,66,44,149,23,255,255,131,237,173,160,116,162,124,12,226,
+  124,134,225,124,225,124,226,124,226,124,225,124,225,124,5,226,124,247,0,127,
+  255,255,127,255,255,127,255,255,127,255,255,91,255,255,139,52,190,195,107,195,
+  107,36,108,35,108,195,107,195,107,195,99,131,99,131,99,131,91,5,67,91,
+  129,132,91,4,132,99,138,196,99,196,99,132,99,133,99,133,91,69,91,69,
+  91,5,83,5,83,198,74,12,197,74,13,5,83,134,6,83,70,83,70,83,
+  70,91,134,91,134,91,3,134,99,135,133,91,69,91,5,83,5,83,197,74,
+  198,74,198,74,3,199,74,132,135,66,135,66,71,66,71,66,4,71,58,131,
+  70,58,70,66,70,66,3,69,66,132,132,66,5,83,70,91,133,99,4,197,
+  107,136,133,91,5,83,197,74,197,74,133,74,133,66,132,66,132,66,4,68,
+  66,3,68,58,4,4,58,12,196,49,152,132,49,4,58,130,91,225,132,33,
+  133,225,132,226,124,226,132,34,133,226,132,36,116,134,99,70,91,5,83,196,
+  74,130,99,224,124,224,132,224,124,224,132,225,132,96,116,46,157,191,247,21,
+  255,255,131,254,247,171,165,160,116,14,226,124,3,225,124,4,226,124,129,225,
+  124,3,226,124,0,1,127,255,255,127,255,255,127,255,255,127,255,255,90,255,
+  255,138,112,165,131,91,196,107,36,108,36,108,35,108,35,108,195,107,196,107,
+  196,99,3,132,99,3,131,99,7,132,99,137,133,99,133,99,133,91,69,91,
+  69,91,5,83,6,83,198,82,198,74,12,197,74,13,5,83,149,6,83,70,
+  83,70,91,70,91,134,91,134,91,134,99,134,99,133,99,69,91,69,91,5,
+  83,197,74,197,74,134,74,134,74,135,74,135,66,135,66,71,66,71,66,7,
+  71,58,131,70,58,70,58,70,66,3,69,66,132,132,66,5,83,69,99,133,
+  107,4,197,107,137,69,91,5,83,197,74,197,74,133,74,133,66,133,66,68,
+  66,68,66,3,68,58,4,4,58,129,4,50,5,196,49,130,196,41,196,41,
+  4,196,49,152,196,41,196,49,195,74,161,124,33,141,33,133,225,132,163,124,
+  34,133,34,133,163,124,197,107,134,91,69,91,196,82,66,91,160,124,224,132,
+  224,132,224,124,225,132,161,124,192,107,176,165,22,255,255,132,190,247,170,157,
+  160,116,162,124,14,226,124,5,225,124,131,226,124,226,124,225,124,3,226,124,
+  254,0,127,255,255,127,255,255,127,255,255,127,255,255,88,255,255,137,189,247,
+  237,140,68,83,133,99,197,99,197,99,196,107,196,107,195,107,3,196,107,129,
+  196,99,9,132,99,3,133,99,4,69,91,3,6,83,130,198,82,198,82,3,
+  198,74,130,197,74,198,74,7,197,74,13,5,83,130,70,83,70,83,3,70,
+  91,140,133,99,133,99,134,99,133,99,69,91,5,83,197,74,197,74,134,74,
+  134,66,134,66,135,66,3,71,66,6,71,58,131,7,58,7,58,71,58,3,
+  70,58,3,69,66,132,133,66,5,83,134,99,133,107,3,197,107,136,133,99,
+  69,91,198,82,197,74,197,74,133,66,133,66,68,66,3,68,58,3,4,58,
+  129,4,50,4,196,49,129,132,41,3,131,41,156,132,41,132,41,196,49,132,
+  41,132,41,67,58,33,108,33,133,33,133,225,132,161,124,162,124,34,133,226,
+  132,37,116,134,99,133,91,5,83,3,83,33,108,224,124,224,132,224,124,225,
+  132,225,124,97,116,32,108,48,182,22,255,255,131,189,247,170,157,160,116,9,
+  226,124,129,162,124,6,226,124,3,225,124,8,226,124,240,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,87,255,255,133,124,231,43,116,4,83,70,91,
+  133,91,4,133,99,5,196,99,7,132,99,131,133,99,133,99,133,91,3,69,
+  91,130,69,83,5,83,4,6,83,4,198,82,3,198,74,7,197,74,129,197,
+  82,11,5,83,134,6,83,70,83,70,83,70,91,70,91,134,91,3,133,99,
+  135,69,91,69,91,5,83,197,74,133,74,134,66,134,66,6,71,66,5,71,
+  58,3,7,58,3,70,58,4,69,58,132,133,66,5,83,133,99,133,107,3,
+  197,107,138,133,99,5,83,197,74,197,74,133,74,133,66,69,66,68,58,4,
+  58,4,58,3,4,50,131,196,49,196,49,195,49,7,131,41,154,132,41,132,
+  41,196,49,2,83,225,124,33,133,225,132,225,124,160,124,160,124,96,116,97,
+  116,197,99,70,91,5,83,196,74,130,99,160,124,224,132,224,132,225,132,225,
+  132,161,124,33,108,32,108,113,190,22,255,255,131,189,247,105,149,160,116,10,
+  226,124,129,162,124,6,226,124,3,225,124,8,226,124,220,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,86,255,255,131,185,214,136,99,5,83,5,70,
+  91,129,69,91,12,133,99,5,69,91,129,5,83,7,6,83,3,198,82,4,
+  198,74,6,197,74,129,197,82,12,5,83,3,70,83,141,70,91,70,91,134,
+  91,133,99,134,99,134,99,70,91,5,83,197,74,133,74,133,74,134,66,134,
+  66,7,71,66,5,71,58,3,7,58,130,6,58,70,58,4,69,58,133,69,
+  66,132,74,69,91,133,99,133,107,3,197,107,138,133,99,5,83,197,74,133,
+  74,133,66,69,58,68,58,4,58,4,58,4,50,4,196,49,8,131,41,135,
+  132,41,131,74,97,116,33,133,33,133,225,132,160,124,3,224,124,143,160,124,
+  32,116,131,99,196,74,2,83,96,116,224,132,224,132,224,124,225,132,161,124,
+  33,116,32,108,161,124,179,206,22,255,255,131,188,239,104,149,160,116,19,226,
+  124,3,225,124,4,226,124,131,225,124,225,124,226,124,242,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,85,255,255,131,53,190,70,91,5,83,8,70,
+  91,13,69,91,129,70,83,12,6,83,132,198,82,198,82,198,74,198,74,6,
+  197,74,129,197,82,10,5,83,130,6,83,6,83,3,70,83,3,70,91,139,
+  133,99,133,99,134,99,69,91,70,91,5,83,197,74,133,74,133,66,70,66,
+  134,66,5,71,66,131,71,58,71,58,71,66,4,71,58,3,7,58,131,6,
+  58,70,58,6,58,3,69,58,133,69,66,69,66,197,74,69,91,134,99,3,
+  197,107,137,133,107,69,91,197,74,133,74,133,74,69,66,4,58,4,58,4,
+  50,4,196,49,130,131,41,132,41,5,131,41,154,68,41,195,49,129,99,33,
+  133,33,133,225,132,161,124,224,124,224,124,224,132,160,124,128,99,32,116,160,
+  124,160,124,32,116,224,124,224,132,224,124,225,132,224,132,97,116,32,108,96,
+  116,225,132,245,214,22,255,255,131,123,239,39,149,160,116,16,226,124,132,162,
+  124,162,124,226,124,226,124,4,225,124,3,226,124,3,225,124,241,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,84,255,255,130,113,165,69,91,20,70,
+  91,130,6,83,70,83,13,6,83,5,198,82,5,197,74,4,197,82,8,5,
+  83,130,6,83,6,83,3,70,83,3,70,91,139,133,99,133,99,134,99,69,
+  91,5,83,197,74,133,74,133,66,133,66,70,66,70,66,4,71,66,132,71,
+  58,71,58,71,66,71,66,5,71,58,130,7,58,7,58,3,6,58,137,70,
+  58,70,58,69,58,69,66,69,66,133,66,5,83,69,91,133,99,3,197,107,
+  135,133,99,69,91,197,74,133,74,133,66,68,58,4,50,5,196,49,130,196,
+  41,132,41,3,131,41,155,67,41,131,41,2,83,161,124,33,133,33,133,161,
+  124,33,108,160,116,32,133,224,124,32,108,64,91,128,74,0,83,160,124,224,
+  132,160,124,160,124,224,132,224,132,161,124,32,116,96,116,160,124,226,132,55,
+  223,22,255,255,131,122,231,38,141,160,116,6,226,124,129,225,124,8,226,124,
+  4,162,124,130,226,124,226,124,3,225,124,4,226,124,3,225,124,233,0,127,
+  255,255,127,255,255,127,255,255,127,255,255,82,255,255,131,190,247,238,140,4,
+  83,19,70,91,130,6,91,70,91,17,6,83,130,198,82,198,82,6,197,74,
+  3,197,82,5,5,83,6,6,83,130,70,83,70,83,3,70,91,139,134,91,
+  133,99,133,99,70,91,6,91,5,83,133,74,133,66,69,66,69,66,70,66,
+  9,71,66,6,71,58,130,7,58,7,58,3,6,58,137,70,58,69,66,70,
+  66,69,66,133,74,197,74,5,83,133,99,133,99,3,197,107,134,133,99,5,
+  83,133,74,133,74,69,66,4,58,6,196,49,158,196,41,195,41,131,41,67,
+  41,67,58,33,108,33,133,33,133,225,132,225,124,160,124,160,116,224,132,96,
+  116,0,91,192,74,128,74,192,74,0,83,128,99,160,124,224,132,224,132,224,
+  124,96,116,33,108,161,124,225,124,37,124,248,214,22,255,255,131,57,231,37,
+  141,160,116,15,226,124,5,162,124,130,226,124,226,124,4,225,124,134,226,124,
+  225,124,225,124,226,124,225,124,225,124,232,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,81,255,255,132,124,231,107,124,68,83,134,99,23,70,91,129,
+  6,83,3,70,91,129,6,91,10,6,83,130,198,82,197,74,3,197,82,3,
+  197,74,130,197,82,197,82,5,5,83,5,6,83,4,70,83,3,70,91,134,
+  69,91,134,91,69,91,5,91,5,83,197,74,3,69,66,132,70,66,70,66,
+  71,66,71,58,6,71,66,8,71,58,129,7,58,3,6,58,138,70,58,70,
+  66,70,66,134,66,133,74,197,74,197,74,69,91,133,99,134,99,3,197,107,
+  134,69,91,5,83,133,74,133,74,69,66,4,58,6,196,49,156,132,41,195,
+  49,66,91,225,132,33,133,225,132,160,124,160,124,224,124,224,132,224,132,192,
+  107,128,74,64,66,0,83,192,74,0,83,64,91,64,91,96,108,224,124,160,
+  124,32,108,96,116,33,133,98,116,71,99,122,214,22,255,255,131,56,223,36,
+  133,160,124,15,226,124,6,162,124,130,226,124,226,124,8,225,124,130,226,124,
+  226,124,231,0,127,255,255,127,255,255,127,255,255,127,255,255,80,255,255,131,
+  185,214,201,107,69,83,6,134,99,24,70,91,11,6,83,129,198,82,3,197,
+  82,4,197,74,4,5,83,5,6,83,130,70,83,6,83,4,70,83,3,70,
+  91,3,69,91,139,5,83,197,74,133,66,69,66,69,58,69,58,70,58,70,
+  58,71,66,71,66,71,58,5,71,66,9,71,58,129,70,58,3,6,58,147,
+  70,58,70,66,134,74,134,74,197,74,197,74,5,83,69,91,133,99,133,99,
+  197,107,197,107,133,99,70,91,197,74,133,74,133,74,69,66,4,58,3,4,
+  50,157,196,49,196,49,194,74,161,116,33,141,33,133,225,124,160,124,224,124,
+  224,124,32,133,32,116,192,82,64,66,128,74,192,74,64,83,64,91,128,91,
+  32,100,96,116,160,124,96,116,194,107,161,124,226,132,67,99,201,90,186,214,
+  22,255,255,131,56,223,227,132,160,124,11,226,124,3,162,124,129,226,124,8,
+  162,124,129,226,124,8,225,124,130,226,124,226,124,225,0,127,255,255,127,255,
+  255,127,255,255,127,255,255,79,255,255,131,54,190,134,99,69,91,9,134,99,
+  21,70,91,129,6,91,11,6,83,129,5,83,3,197,82,4,197,74,4,5,
+  83,4,6,83,129,70,83,6,6,83,137,70,83,6,83,70,91,69,91,69,
+  91,5,83,198,82,133,74,69,66,3,69,58,130,70,58,70,58,5,71,58,
+  5,71,66,7,71,58,130,70,58,70,58,3,6,58,137,70,66,134,66,134,
+  74,198,74,197,74,5,83,69,83,133,99,197,99,3,197,107,165,133,99,69,
+  91,197,82,197,74,133,74,133,66,4,58,4,58,196,49,67,66,33,108,33,
+  133,33,133,225,132,161,124,224,124,224,124,32,133,160,124,64,91,64,66,128,
+  74,192,74,192,74,64,83,128,91,192,99,96,116,160,116,160,124,97,116,97,
+  116,226,132,99,124,4,66,137,82,251,222,22,255,255,131,246,214,227,132,161,
+  124,14,226,124,10,162,124,129,226,124,8,225,124,130,226,124,226,124,220,0,
+  127,255,255,127,255,255,127,255,255,127,255,255,78,255,255,133,178,165,69,83,
+  69,91,134,91,134,91,9,134,99,20,70,91,12,6,83,135,5,83,197,82,
+  197,82,5,83,5,83,197,82,5,75,3,5,83,4,6,83,132,70,83,6,
+  83,70,83,70,83,7,6,83,134,70,91,70,91,5,83,197,82,197,74,133,
+  66,3,69,58,130,70,58,70,58,10,71,58,129,71,66,9,71,58,140,70,
+  58,6,58,6,58,70,58,70,66,134,74,198,74,6,83,6,83,69,91,133,
+  91,197,99,4,197,107,139,133,99,69,91,197,82,197,74,198,74,69,66,68,
+  58,66,91,224,124,33,133,225,132,5,224,124,147,192,107,129,74,64,66,128,
+  66,192,74,0,75,64,83,192,99,96,108,160,116,160,116,96,116,97,116,162,
+  124,163,132,69,99,131,41,201,82,59,231,22,255,255,131,246,214,226,124,161,
+  124,13,226,124,12,162,124,129,226,124,8,225,124,130,226,124,226,124,212,0,
+  127,255,255,127,255,255,127,255,255,127,255,255,76,255,255,131,189,247,238,140,
+  4,83,3,70,91,4,134,91,7,134,99,129,70,91,3,134,91,15,70,91,
+  13,6,83,6,5,83,16,6,83,129,198,82,3,6,83,132,5,83,197,74,
+  133,74,69,66,3,69,58,130,70,58,70,58,10,71,58,130,71,66,71,66,
+  3,71,58,129,71,66,5,71,58,139,70,58,6,58,6,58,70,58,134,66,
+  198,74,6,83,70,91,70,91,133,99,197,99,3,197,107,163,37,108,197,107,
+  133,99,70,91,198,82,198,74,67,91,161,116,32,133,32,133,225,132,161,124,
+  224,124,224,124,224,132,160,116,64,91,64,66,128,66,128,74,192,74,64,83,
+  128,91,32,108,160,116,160,124,96,116,32,108,161,124,226,132,196,115,5,66,
+  67,33,74,91,124,239,22,255,255,131,181,206,225,124,225,124,14,226,124,13,
+  162,124,8,225,124,130,226,124,226,124,210,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,75,255,255,132,59,231,43,116,197,74,70,83,9,70,91,3,
+  134,91,5,70,91,129,134,91,15,70,91,129,6,91,12,6,83,6,5,83,
+  12,6,83,5,198,74,3,6,83,131,197,74,197,74,133,66,3,69,66,134,
+  70,66,70,58,71,58,71,58,7,58,7,58,8,71,58,8,71,66,3,71,
+  58,3,6,58,135,70,66,198,74,6,83,70,91,70,99,133,99,197,99,5,
+  37,108,137,197,107,133,99,68,91,34,108,32,133,32,133,225,132,225,124,224,
+  132,3,224,124,148,192,107,0,91,0,83,192,74,128,66,192,74,64,91,32,
+  100,160,116,160,124,160,116,33,108,34,116,226,132,99,124,133,82,133,49,66,
+  33,140,107,190,247,22,255,255,131,179,198,161,116,225,124,12,226,124,133,162,
+  124,226,124,162,124,162,124,226,124,11,162,124,8,225,124,130,226,124,226,124,
+  222,0,127,255,255,127,255,255,127,255,255,127,255,255,74,255,255,131,185,206,
+  72,91,197,74,4,6,83,130,71,83,71,83,27,70,91,16,6,83,3,5,
+  83,129,197,82,11,6,83,129,198,82,6,198,74,139,6,83,6,83,197,82,
+  197,74,197,74,133,66,133,66,134,66,70,66,70,58,70,58,5,7,58,6,
+  71,58,11,71,66,175,70,58,70,58,6,58,6,50,70,58,134,66,6,83,
+  70,91,134,99,133,99,197,107,36,108,36,116,100,116,37,116,37,108,36,108,
+  97,116,224,124,33,133,225,132,224,132,224,132,224,124,96,116,192,107,96,116,
+  128,99,192,82,128,74,192,74,192,74,64,83,192,99,96,108,160,116,160,124,
+  96,116,34,108,161,124,226,132,69,99,197,57,132,41,66,33,205,115,190,247,
+  22,255,255,131,114,190,160,124,225,124,9,226,124,129,225,124,5,226,124,131,
+  162,124,162,124,226,124,12,162,124,130,225,124,226,124,5,225,124,130,226,124,
+  225,124,247,0,127,255,255,127,255,255,127,255,255,127,255,255,73,255,255,129,
+  180,173,4,198,74,130,6,75,6,75,5,7,83,133,6,83,6,83,70,83,
+  71,91,71,91,4,70,91,3,71,91,129,70,91,3,70,83,5,70,91,10,
+  6,83,7,198,82,5,197,74,14,198,74,5,134,74,140,198,74,198,82,197,
+  82,197,74,197,74,198,74,134,74,134,74,134,66,134,66,70,58,71,58,4,
+  7,58,4,71,58,8,71,66,3,135,66,176,71,66,71,66,135,66,71,66,
+  70,58,6,58,6,58,6,50,70,58,134,74,6,83,70,91,134,99,197,107,
+  37,108,36,108,100,116,100,116,98,116,224,124,32,133,33,133,225,124,160,124,
+  160,124,192,107,128,99,192,107,192,107,0,91,128,74,64,66,192,74,0,83,
+  128,91,32,108,160,116,160,124,96,116,33,108,98,116,226,132,196,115,69,74,
+  132,49,196,41,66,33,112,140,23,255,255,132,47,182,160,116,225,124,225,124,
+  10,226,124,129,225,124,6,226,124,13,162,124,132,161,124,226,124,225,124,225,
+  124,3,226,124,130,225,124,225,124,232,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,72,255,255,131,241,148,133,66,134,74,5,198,74,134,199,74,199,
+  74,198,74,199,74,6,75,7,75,14,7,83,11,6,83,129,198,82,11,198,
+  74,6,197,74,11,198,74,130,134,74,134,74,4,134,66,141,133,74,197,74,
+  197,82,198,82,197,74,197,74,198,74,198,74,134,74,134,66,134,66,70,58,
+  71,58,4,7,58,5,71,58,5,71,66,8,135,66,172,71,66,70,66,70,
+  58,6,58,6,50,6,58,70,66,198,74,70,91,134,99,134,107,197,107,37,
+  108,99,116,161,124,224,132,33,133,225,132,161,124,96,116,32,116,32,108,129,
+  99,96,116,128,99,64,66,64,66,128,74,64,83,128,91,192,99,96,116,160,
+  124,160,116,33,108,34,108,226,124,163,124,133,82,133,49,132,41,131,41,66,
+  33,177,148,23,255,255,134,46,182,160,116,226,124,226,124,225,124,225,124,16,
+  226,124,13,162,124,134,161,124,226,124,226,124,225,124,225,124,226,124,3,225,
+  124,244,0,127,255,255,127,255,255,127,255,255,127,255,255,70,255,255,134,125,
+  239,45,124,69,66,134,74,135,74,135,74,3,134,74,4,198,74,130,199,74,
+  198,74,5,199,74,129,199,82,7,7,83,7,199,74,8,198,74,10,134,74,
+  6,133,74,11,134,74,130,134,66,134,66,3,70,66,131,69,66,133,74,197,
+  74,3,197,82,136,198,82,198,74,198,74,134,74,134,66,70,66,70,58,6,
+  58,3,7,58,6,71,58,4,71,66,8,135,66,172,71,66,71,66,70,66,
+  70,58,6,58,6,50,197,49,5,58,69,66,198,74,70,83,70,99,133,99,
+  99,116,225,124,33,133,225,132,224,132,224,124,224,124,160,124,224,124,224,124,
+  32,116,192,82,64,66,128,74,192,74,64,83,192,99,96,108,160,116,160,124,
+  96,116,194,107,162,124,226,132,132,107,198,65,132,41,132,41,131,41,66,33,
+  242,156,23,255,255,135,237,173,160,124,225,124,226,124,226,124,225,124,225,124,
+  15,226,124,12,162,124,134,161,124,162,124,162,124,161,124,226,124,226,124,4,
+  225,124,1,226,124,245,0,127,255,255,127,255,255,127,255,255,127,255,255,69,
+  255,255,131,250,214,74,99,134,66,3,199,74,130,135,74,135,74,3,134,74,
+  130,198,74,198,74,16,199,74,7,198,74,5,134,74,5,134,66,132,70,66,
+  70,66,69,66,70,66,4,69,66,133,133,66,69,66,133,66,69,66,69,66,
+  10,134,66,7,70,66,142,134,66,197,74,197,74,6,83,5,83,6,83,198,
+  82,198,74,198,74,134,74,134,66,70,66,70,58,6,58,3,7,58,5,71,
+  58,6,71,66,7,135,66,146,71,66,70,66,70,58,70,58,6,58,6,58,
+  197,49,197,49,5,50,69,58,134,74,69,91,161,116,32,133,32,133,224,124,
+  97,116,160,124,3,224,124,150,32,108,128,74,128,74,192,74,0,83,64,83,
+  128,91,32,108,96,108,160,116,96,116,33,108,98,116,226,132,36,116,69,74,
+  132,49,132,41,132,41,67,33,67,33,181,173,22,255,255,132,254,255,235,165,
+  160,124,225,124,3,226,124,3,225,124,15,226,124,4,162,124,129,161,124,9,
+  162,124,130,161,124,162,124,6,226,124,251,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,68,255,255,131,55,190,8,83,134,66,4,199,74,3,135,74,
+  139,134,66,134,74,198,74,198,74,199,74,199,74,135,74,135,74,135,66,135,
+  74,135,74,8,199,74,129,134,74,10,134,66,6,70,66,129,69,66,3,69,
+  58,129,69,66,5,69,58,133,69,66,69,66,69,58,69,66,69,66,9,70,
+  66,4,70,58,3,69,66,131,134,74,198,74,198,82,3,6,83,135,198,82,
+  198,74,198,74,134,74,70,66,70,58,6,58,3,7,58,5,71,58,6,71,
+  66,8,135,66,144,71,66,70,66,70,66,70,58,6,58,6,58,5,50,197,
+  49,133,41,197,49,67,91,225,124,32,133,224,124,160,124,160,124,3,224,124,
+  151,160,124,128,99,64,74,0,83,64,91,64,91,128,91,32,100,96,108,160,
+  116,160,124,32,116,33,108,225,124,163,132,197,90,133,49,68,41,131,41,131,
+  41,66,33,67,41,182,181,22,255,255,131,190,247,170,165,160,124,3,226,132,
+  3,226,124,3,225,124,13,226,124,19,162,124,132,226,124,162,124,226,124,226,
+  124,242,0,127,255,255,127,255,255,127,255,255,127,255,255,67,255,255,129,115,
+  165,11,199,74,4,198,74,131,135,74,135,66,135,66,9,135,74,130,135,66,
+  135,66,9,134,66,134,70,66,70,66,70,58,70,58,69,58,69,58,13,5,
+  58,4,69,58,129,70,58,5,70,66,3,70,58,4,6,58,134,69,58,69,
+  66,70,66,133,74,197,74,198,82,4,6,83,137,198,74,198,74,134,66,70,
+  66,6,58,6,50,7,50,7,58,7,58,3,71,58,131,71,66,71,58,71,
+  58,5,71,66,8,135,66,142,71,66,70,66,70,66,70,58,6,58,6,58,
+  5,50,133,41,4,50,194,99,32,133,33,133,160,124,160,124,4,224,124,151,
+  32,108,192,82,32,108,32,108,192,99,128,91,192,99,96,108,160,116,160,124,
+  96,116,32,108,161,124,227,132,132,107,5,66,68,41,67,33,67,33,67,41,
+  2,25,196,49,55,198,22,255,255,131,189,247,168,157,160,124,4,226,132,3,
+  226,124,3,225,124,7,226,124,129,225,124,5,226,124,5,162,124,129,161,124,
+  17,162,124,229,0,127,255,255,127,255,255,127,255,255,127,255,255,65,255,255,
+  133,124,231,110,132,134,66,199,74,7,83,10,199,74,130,198,74,198,74,4,
+  199,74,3,135,74,129,135,66,3,135,74,4,135,66,5,134,66,4,70,66,
+  4,70,58,129,69,58,16,5,58,132,69,58,69,58,70,58,70,66,5,70,
+  58,6,6,58,133,70,58,69,66,133,66,197,74,197,82,4,6,83,137,198,
+  74,198,74,134,74,70,66,70,58,6,58,6,50,6,50,7,58,6,71,58,
+  6,71,66,8,135,66,140,71,66,71,66,70,58,6,58,6,58,5,50,197,
+  49,131,66,161,116,33,141,225,132,160,124,5,224,124,144,192,107,0,83,32,
+  108,160,116,32,108,192,99,32,108,96,116,160,124,160,116,33,108,97,116,225,
+  132,100,124,133,82,68,41,4,67,33,131,2,25,197,49,121,206,22,255,255,
+  131,123,239,103,149,224,124,5,226,132,4,226,124,130,225,124,225,124,8,226,
+  124,130,225,124,225,124,3,226,124,23,162,124,227,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,65,255,255,132,251,222,110,132,199,74,198,74,17,199,
+  74,9,135,74,130,135,66,135,66,6,134,66,3,70,66,3,70,58,129,6,
+  58,6,5,58,3,5,50,8,5,58,130,69,58,69,58,5,70,58,6,6,
+  58,134,5,58,6,58,70,58,70,66,134,74,197,74,5,6,83,137,198,74,
+  198,74,134,66,70,58,6,58,6,50,6,50,6,58,7,58,5,71,58,7,
+  71,66,9,135,66,138,70,66,70,58,6,58,5,50,198,57,68,91,33,133,
+  33,133,225,132,160,124,3,224,124,146,160,124,32,108,64,91,192,99,96,108,
+  96,116,96,108,32,108,96,108,160,116,160,124,96,116,34,108,162,124,227,132,
+  69,107,133,57,68,41,4,67,33,131,193,24,7,66,186,214,22,255,255,132,
+  122,231,101,149,224,124,226,132,3,225,132,3,226,132,134,225,124,226,124,226,
+  124,225,124,226,124,225,124,8,226,124,129,225,124,3,226,124,23,162,124,238,
+  0,127,255,255,127,255,255,127,255,255,127,255,255,67,255,255,132,185,206,110,
+  124,199,74,198,74,15,199,74,9,135,74,130,135,66,135,66,6,134,66,3,
+  70,66,4,70,58,3,5,58,130,5,50,5,58,4,5,50,7,5,58,3,
+  69,58,4,70,58,4,6,58,138,5,58,5,50,5,58,6,58,70,58,70,
+  66,70,66,198,74,198,82,5,83,4,6,83,137,198,74,198,74,70,66,70,
+  58,6,58,6,50,6,50,6,58,6,58,7,71,58,5,71,66,8,135,66,
+  159,70,66,70,58,70,58,6,58,6,58,196,107,33,141,224,132,97,116,161,
+  124,224,124,32,133,224,124,32,108,0,91,64,91,32,108,96,108,96,108,32,
+  108,32,108,160,116,160,124,160,116,33,108,97,116,226,132,36,124,134,82,133,
+  49,131,41,4,67,33,131,193,16,72,74,251,222,22,255,255,133,57,231,36,
+  141,224,124,226,132,226,132,4,225,132,133,226,132,226,132,225,124,225,124,226,
+  124,3,225,124,9,226,124,131,225,124,226,124,226,124,23,162,124,254,0,127,
+  255,255,127,255,255,127,255,255,127,255,255,69,255,255,132,120,198,203,107,134,
+  66,199,74,4,7,75,129,7,83,8,199,74,6,135,74,129,135,66,3,135,
+  74,6,134,66,4,70,66,3,70,58,129,6,58,6,5,58,129,5,50,8,
+  5,58,129,70,58,3,69,58,3,70,58,142,6,58,6,58,5,58,5,58,
+  5,50,6,50,5,50,5,58,6,58,6,58,70,66,133,66,197,74,198,82,
+  4,6,83,133,198,82,198,74,134,74,70,66,6,58,3,198,49,130,6,50,
+  6,58,8,71,58,130,71,66,71,58,5,71,66,4,135,66,166,71,66,70,
+  66,70,58,6,58,70,74,99,124,33,133,225,132,97,124,97,116,224,124,224,
+  124,192,107,192,82,128,74,128,91,160,116,96,108,96,108,32,108,96,108,160,
+  124,160,124,32,116,33,116,226,132,163,132,198,98,198,57,132,49,131,41,131,
+  41,67,41,67,33,67,33,193,16,201,82,125,239,22,255,255,131,56,223,35,
+  133,224,124,4,226,132,3,225,132,134,226,132,226,132,225,132,225,124,226,124,
+  226,124,3,225,124,11,226,124,23,162,124,247,0,127,255,255,127,255,255,127,
+  255,255,127,255,255,70,255,255,132,190,247,180,173,73,91,198,74,7,7,83,
+  129,7,75,6,199,74,8,135,74,5,134,66,131,70,66,134,66,70,66,5,
+  70,58,14,5,58,129,69,58,4,70,58,132,69,58,70,58,6,58,6,58,
+  3,5,58,140,5,50,197,49,197,49,5,50,6,58,6,58,6,66,70,66,
+  134,66,133,74,197,74,198,82,3,6,83,136,198,82,134,74,134,66,70,58,
+  6,50,198,49,198,49,6,50,3,6,58,3,70,58,6,71,58,5,71,66,
+  169,135,66,135,66,71,66,71,66,70,66,70,58,6,58,134,82,163,124,33,
+  133,225,132,97,116,32,116,96,116,32,108,192,82,0,58,0,58,128,74,64,
+  91,32,108,32,108,96,108,160,116,224,124,96,116,34,108,162,124,226,132,132,
+  107,6,66,132,49,196,49,131,41,131,41,67,41,67,33,67,33,193,16,75,
+  99,190,247,22,255,255,131,246,214,226,132,225,124,4,226,132,5,225,132,130,
+  226,132,226,132,4,226,124,130,225,124,225,124,12,226,124,22,162,124,227,0,
+  127,255,255,127,255,255,127,255,255,127,255,255,72,255,255,132,124,231,175,140,
+  198,74,199,74,6,7,83,5,199,74,8,135,74,129,134,74,5,134,66,130,
+  70,66,70,66,3,70,58,130,69,58,69,58,13,5,58,131,69,58,5,58,
+  69,58,3,70,58,4,6,58,4,5,58,3,197,49,144,5,50,6,58,70,
+  66,70,66,69,66,134,66,133,74,198,74,198,74,6,83,6,83,198,82,198,
+  74,134,66,70,66,5,58,3,197,49,130,198,49,6,50,5,6,58,129,70,
+  58,6,71,58,8,71,66,154,70,66,7,58,5,91,226,132,33,133,161,124,
+  33,108,192,99,0,91,192,74,192,74,64,58,64,58,192,74,64,83,32,108,
+  96,108,160,116,224,124,160,124,32,108,98,116,226,132,100,124,70,74,68,41,
+  5,131,41,132,67,41,67,33,1,25,206,123,23,255,255,131,180,206,225,132,
+  225,124,5,226,132,6,225,132,130,226,132,225,124,3,226,124,3,225,124,11,
+  226,124,22,162,124,232,0,127,255,255,127,255,255,127,255,255,127,255,255,74,
+  255,255,131,119,198,137,99,198,74,6,7,83,129,199,82,4,199,74,5,135,
+  74,130,134,66,134,74,5,134,66,135,70,66,70,66,70,58,69,58,70,58,
+  69,58,69,58,14,5,58,4,69,58,129,70,58,4,6,58,130,5,58,5,
+  50,6,197,49,129,5,58,3,70,66,133,69,66,134,66,133,74,134,74,198,
+  74,3,198,82,132,134,74,70,66,6,58,5,50,3,197,49,130,198,49,6,
+  50,6,6,58,130,70,58,70,58,5,71,58,7,71,66,155,6,58,69,99,
+  33,133,33,133,98,124,194,107,64,91,0,83,0,83,192,74,0,75,192,74,
+  64,91,64,91,32,108,160,116,160,116,160,124,96,116,97,116,225,132,163,132,
+  197,90,133,49,68,33,67,33,67,33,4,67,41,131,67,33,1,25,112,140,
+  23,255,255,132,178,198,225,124,225,124,225,132,5,226,132,6,225,132,130,226,
+  132,226,132,4,226,124,130,225,124,225,124,12,226,124,21,162,124,225,0,127,
+  255,255,127,255,255,127,255,255,127,255,255,75,255,255,131,125,239,239,140,198,
+  74,7,7,83,129,199,82,3,199,74,4,135,74,129,134,74,6,134,66,131,
+  70,66,70,66,70,58,3,69,58,13,5,58,6,69,58,5,5,58,7,197,
+  49,130,5,50,70,58,5,70,66,142,134,66,134,74,198,74,198,82,198,82,
+  198,74,134,74,70,66,5,58,197,49,197,41,197,49,197,49,5,50,3,6,
+  50,8,6,58,129,70,58,3,71,58,157,70,58,71,58,70,58,71,66,71,
+  58,6,58,68,91,33,133,225,132,34,116,129,99,64,91,0,83,0,75,0,
+  75,64,83,64,91,128,91,128,91,32,108,160,116,160,124,96,116,96,116,161,
+  124,226,132,68,107,132,49,3,33,6,67,33,132,67,41,67,33,66,33,242,
+  148,23,255,255,131,113,190,225,124,224,132,3,225,132,4,226,132,6,225,132,
+  134,226,132,226,132,226,124,225,124,226,124,226,124,3,225,124,11,226,124,21,
+  162,124,215,0,127,255,255,127,255,255,127,255,255,127,255,255,77,255,255,131,
+  55,198,137,99,198,74,5,7,83,129,199,82,4,199,74,132,135,74,135,74,
+  134,74,134,74,5,134,66,4,70,66,3,69,58,12,5,58,5,69,58,5,
+  5,58,8,197,49,130,197,57,6,58,5,134,74,141,70,66,70,66,134,74,
+  199,74,199,82,199,74,135,74,70,66,6,58,197,49,197,41,133,41,197,41,
+  3,197,49,4,6,50,11,6,58,156,70,58,70,58,6,58,69,66,34,108,
+  32,133,162,124,194,107,33,108,64,91,0,83,192,74,64,83,128,91,64,83,
+  128,91,192,99,96,108,160,124,96,116,33,108,161,124,34,133,36,116,4,66,
+  3,25,3,25,2,25,4,67,33,3,131,41,130,195,49,180,173,23,255,255,
+  131,46,182,224,124,224,132,5,225,132,3,226,132,7,225,132,130,226,132,226,
+  132,3,226,124,131,225,124,226,124,225,124,12,226,124,20,162,124,235,0,127,
+  255,255,127,255,255,127,255,255,127,255,255,78,255,255,131,60,231,174,132,198,
+  74,6,7,83,129,199,82,3,199,74,4,134,74,5,134,66,132,70,66,70,
+  66,69,66,69,66,3,69,58,11,5,58,130,69,58,69,58,7,5,58,129,
+  5,50,8,197,49,145,5,58,70,66,135,74,199,82,135,74,134,74,134,74,
+  70,66,70,66,134,74,199,74,199,74,135,74,134,66,70,58,6,50,197,49,
+  3,132,41,3,197,49,129,5,50,3,6,50,6,6,58,129,7,58,6,6,
+  58,141,4,83,162,124,32,133,34,116,194,107,32,108,192,82,64,66,128,74,
+  64,83,128,91,64,91,128,99,4,96,116,145,161,124,226,132,163,124,197,90,
+  68,41,3,33,66,33,131,33,131,41,131,41,195,49,195,49,3,50,4,58,
+  3,58,133,74,54,190,23,255,255,130,236,173,224,124,4,225,132,129,226,132,
+  3,225,132,130,226,132,226,132,8,225,132,131,226,132,226,124,225,124,3,226,
+  124,130,225,124,225,124,11,226,124,20,162,124,243,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,80,255,255,131,180,173,7,83,198,74,4,7,83,134,
+  199,82,199,82,199,74,199,74,198,74,198,74,4,134,74,4,134,66,129,70,
+  66,5,69,66,132,69,58,69,58,5,58,69,58,4,5,58,131,69,58,5,
+  58,69,58,6,5,58,3,5,50,9,197,49,130,5,58,134,74,3,199,82,
+  132,135,74,134,74,70,66,70,66,4,135,74,131,70,66,6,58,197,49,4,
+  132,41,129,197,41,4,197,49,131,198,49,6,50,6,50,9,6,58,164,198,
+  49,6,58,195,99,33,133,225,132,34,108,97,116,32,108,65,66,0,58,192,
+  74,64,83,64,91,128,91,32,108,96,116,32,116,97,116,160,124,226,132,164,
+  124,69,99,5,66,196,49,3,50,3,58,68,58,68,58,68,66,132,66,133,
+  74,196,74,196,74,195,74,70,99,184,214,22,255,255,131,254,247,235,165,224,
+  124,10,225,132,129,226,132,3,225,132,129,226,132,4,225,132,131,226,132,226,
+  132,225,124,4,226,124,129,225,124,12,226,124,19,162,124,217,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,81,255,255,131,185,206,203,107,197,74,4,
+  7,83,131,199,82,199,82,199,74,3,198,74,5,134,74,3,134,66,129,70,
+  66,7,69,66,6,69,58,7,5,58,129,5,50,12,197,49,130,6,58,134,
+  74,3,199,82,139,135,74,134,66,70,66,134,66,135,74,135,74,135,66,70,
+  66,6,58,197,49,133,41,4,132,41,130,133,41,197,41,3,197,49,130,198,
+  49,198,49,3,6,50,3,6,58,159,6,50,6,58,198,49,198,49,4,83,
+  162,124,33,133,97,116,33,116,160,124,128,99,0,58,64,58,192,74,128,91,
+  192,99,32,108,32,108,32,116,97,116,162,124,226,132,100,116,69,99,198,82,
+  69,66,132,74,196,74,197,74,5,83,4,83,3,68,91,133,68,99,132,99,
+  66,91,103,124,58,223,22,255,255,131,189,247,169,157,224,124,21,225,132,131,
+  226,132,225,124,225,124,17,226,124,18,162,124,228,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,52,255,255,130,124,239,190,247,28,255,255,134,125,239,
+  175,140,198,74,199,82,7,83,7,83,4,199,82,3,198,74,5,134,74,3,
+  134,66,129,70,66,8,69,66,3,69,58,6,5,58,129,5,50,13,197,49,
+  144,5,58,6,58,134,74,135,74,135,82,135,74,135,74,70,66,70,66,135,
+  74,135,74,135,66,71,66,70,58,6,50,197,41,5,132,41,131,133,41,197,
+  41,197,41,3,197,49,4,198,49,130,6,50,6,50,3,198,49,152,69,66,
+  35,108,33,133,225,132,97,124,160,116,224,124,128,99,64,91,0,75,64,91,
+  128,91,32,108,32,108,33,108,97,116,161,124,162,124,36,116,69,99,5,91,
+  69,91,69,91,133,99,3,132,99,129,196,107,3,195,107,133,34,108,34,108,
+  192,107,231,140,123,239,22,255,255,131,188,239,168,157,160,124,8,225,132,130,
+  226,132,226,132,12,225,132,131,226,132,226,124,225,124,18,226,124,17,162,124,
+  226,0,127,255,255,127,255,255,127,255,255,127,255,255,52,255,255,133,172,140,
+  41,116,112,157,119,206,189,247,27,255,255,132,180,173,7,83,198,74,7,83,
+  3,199,82,129,198,82,4,198,74,6,134,74,130,134,66,70,66,9,69,66,
+  129,69,58,5,5,58,129,5,50,15,197,49,145,5,58,6,58,70,66,134,
+  74,135,74,135,74,70,66,70,66,71,66,71,74,71,66,71,66,71,58,6,
+  58,197,49,133,41,68,41,4,132,41,3,197,41,130,197,49,197,49,9,198,
+  49,151,4,83,225,124,33,133,98,124,97,116,224,124,160,116,1,83,0,83,
+  32,108,96,108,96,108,33,108,193,107,97,116,162,124,163,124,36,116,133,99,
+  132,99,196,107,196,107,195,107,3,35,108,131,34,116,34,116,33,116,4,97,
+  116,131,32,108,104,149,188,247,22,255,255,131,122,231,102,149,224,124,9,225,
+  132,3,226,132,11,225,132,131,226,132,226,132,225,124,19,226,124,10,162,124,
+  129,162,116,5,162,124,242,0,127,255,255,127,255,255,127,255,255,127,255,255,
+  52,255,255,135,106,132,68,91,69,91,69,91,137,107,115,165,60,231,26,255,
+  255,131,185,206,73,99,134,74,3,199,82,6,198,74,5,134,74,131,134,66,
+  70,66,70,66,8,69,66,129,69,58,4,5,58,129,5,50,16,197,49,130,
+  5,58,6,58,5,70,66,139,71,66,71,66,71,74,71,66,71,58,6,58,
+  198,49,133,41,69,41,68,33,68,33,3,132,41,131,133,41,197,41,197,41,
+  3,197,49,131,198,49,6,50,6,50,3,6,58,152,133,74,98,116,33,141,
+  162,124,34,116,161,116,224,124,129,99,66,66,67,66,65,91,32,108,160,116,
+  34,108,35,108,162,124,163,124,36,116,196,107,35,108,35,108,35,116,98,116,
+  98,116,3,97,116,3,96,116,129,96,124,3,160,124,131,96,116,170,165,254,
+  255,22,255,255,131,56,223,35,141,224,124,6,225,132,8,226,132,10,225,132,
+  3,226,132,129,225,124,10,226,124,129,225,124,7,226,124,9,162,124,131,162,
+  116,162,124,162,116,4,162,124,237,0,127,255,255,127,255,255,127,255,255,127,
+  255,255,52,255,255,137,171,140,133,99,134,107,70,99,70,91,5,83,72,91,
+  50,157,60,231,25,255,255,133,124,239,44,124,133,66,198,74,199,74,5,198,
+  74,6,134,74,3,70,66,5,69,66,130,69,58,69,58,5,5,58,17,197,
+  49,132,197,57,5,58,6,58,6,58,4,71,66,129,135,66,3,71,66,169,
+  6,58,6,50,197,41,133,41,133,41,132,41,132,41,196,41,196,49,196,49,
+  4,50,5,50,5,50,69,58,70,58,70,66,134,66,134,66,198,74,198,74,
+  6,83,195,107,33,133,33,133,98,116,97,116,160,124,224,124,32,108,131,66,
+  196,74,130,99,96,116,33,116,195,107,163,124,227,132,100,124,35,116,98,116,
+  98,116,3,97,116,129,96,116,10,160,124,130,96,116,237,173,23,255,255,131,
+  55,223,35,133,224,124,6,225,132,10,226,132,10,225,132,131,226,132,226,132,
+  225,124,9,226,124,3,225,124,7,226,124,10,162,124,133,162,116,162,124,162,
+  116,162,124,162,124,233,0,127,255,255,127,255,255,127,255,255,127,255,255,52,
+  255,255,139,236,148,132,99,198,107,134,99,70,99,70,91,6,91,197,74,8,
+  91,115,165,190,247,25,255,255,135,176,148,133,66,134,74,199,74,198,74,135,
+  74,135,74,6,134,74,4,70,66,130,69,66,69,66,3,69,58,5,5,58,
+  17,197,49,129,5,58,5,6,58,145,70,66,71,66,135,66,135,74,135,74,
+  135,66,135,66,71,66,70,58,5,58,5,50,5,50,5,58,68,58,69,66,
+  133,66,133,74,3,197,74,131,5,83,6,83,6,83,3,70,91,150,133,99,
+  196,107,226,132,33,133,161,124,97,124,160,124,224,124,224,124,129,99,131,74,
+  67,91,33,108,97,116,35,116,99,124,227,132,163,124,98,116,97,116,97,124,
+  161,124,14,160,124,130,160,116,48,190,23,255,255,133,245,214,225,132,224,124,
+  225,132,225,132,16,226,132,9,225,132,133,226,132,226,132,226,124,225,124,225,
+  124,6,226,124,130,225,124,225,124,10,226,124,9,162,124,5,162,116,219,0,
+  127,255,255,127,255,255,127,255,255,127,255,255,52,255,255,140,176,173,196,99,
+  197,107,198,107,134,99,70,99,70,91,7,91,198,82,133,74,74,99,246,189,
+  25,255,255,131,181,181,134,74,134,74,3,135,74,5,134,74,4,70,66,129,
+  69,66,9,5,58,15,197,49,140,5,50,5,58,5,58,6,58,6,58,70,
+  58,70,66,70,66,134,66,134,74,198,74,199,82,4,7,83,131,6,83,198,
+  74,198,74,3,5,83,131,69,91,69,91,133,91,3,133,99,129,197,99,3,
+  197,107,148,37,108,36,108,35,116,161,124,33,133,225,132,160,124,160,124,224,
+  124,224,124,97,116,195,82,195,82,33,108,97,116,195,107,35,116,227,132,162,
+  124,161,124,19,160,124,129,179,198,23,255,255,131,178,198,225,124,225,124,13,
+  226,132,129,225,132,5,226,132,10,225,132,133,226,132,226,132,225,124,226,124,
+  225,124,13,226,124,129,225,124,3,226,124,10,162,124,4,162,116,235,0,127,
+  255,255,127,255,255,127,255,255,127,255,255,52,255,255,142,116,198,195,107,37,
+  108,198,107,198,107,134,99,70,99,70,91,6,91,6,83,198,74,134,74,45,
+  124,59,231,24,255,255,131,120,206,200,82,69,66,5,134,74,129,70,74,5,
+  70,66,9,5,58,8,197,49,130,5,50,5,50,5,5,58,140,69,58,70,
+  66,70,66,134,66,134,74,198,74,198,74,198,82,6,83,6,83,70,91,70,
+  91,5,134,99,134,133,99,133,99,197,99,197,107,196,107,196,107,3,36,108,
+  132,36,116,36,116,100,116,100,116,3,99,116,134,98,116,161,124,33,133,225,
+  132,161,124,160,124,3,224,124,137,130,99,195,82,194,99,160,124,33,116,196,
+  107,227,124,226,132,161,124,18,160,124,131,160,116,161,124,245,214,23,255,255,
+  131,112,190,224,124,224,132,13,226,132,130,225,132,225,132,7,226,132,8,225,
+  132,132,226,132,226,132,225,124,225,124,12,226,124,129,225,124,6,226,124,131,
+  162,124,162,124,226,124,9,162,124,1,162,116,221,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,52,255,255,143,248,222,35,108,36,116,37,108,197,107,
+  197,107,134,99,134,99,70,91,70,91,6,83,6,83,133,74,7,83,115,165,
+  24,255,255,131,251,222,139,107,69,58,4,134,74,4,70,66,129,69,58,16,
+  5,58,130,69,58,69,58,3,69,66,138,133,66,133,74,133,74,197,74,198,
+  82,6,83,5,83,70,91,70,91,69,91,3,133,99,135,197,99,197,107,197,
+  107,37,108,37,108,36,108,36,108,3,36,116,129,100,116,4,99,116,132,98,
+  116,98,124,162,124,162,124,5,161,124,132,224,132,34,133,225,132,160,124,3,
+  224,124,137,33,116,66,99,34,108,162,124,161,124,195,107,163,124,226,132,161,
+  124,19,160,124,131,160,116,227,132,55,223,23,255,255,131,45,182,224,124,224,
+  132,14,226,132,129,225,132,8,226,132,8,225,132,3,226,132,129,225,124,11,
+  226,124,130,225,124,225,124,12,226,124,7,162,124,225,0,127,255,255,127,255,
+  255,127,255,255,127,255,255,52,255,255,145,124,239,101,124,100,116,100,116,36,
+  116,37,108,197,107,198,107,134,99,134,99,70,99,70,91,6,91,6,83,133,
+  74,44,124,251,222,23,255,255,131,125,239,46,124,4,58,7,70,66,129,6,
+  58,4,5,58,129,197,57,5,5,58,129,69,58,3,69,66,138,133,66,133,
+  74,197,74,198,74,198,82,6,83,6,83,6,91,70,91,69,91,3,133,99,
+  129,197,99,3,197,107,131,36,108,36,108,36,116,7,99,116,133,99,124,98,
+  124,162,124,161,124,162,124,3,161,124,8,160,124,132,225,132,225,132,225,124,
+  160,124,4,224,124,135,33,116,98,124,33,133,34,133,226,132,161,124,225,124,
+  20,160,124,131,96,116,37,141,121,231,22,255,255,131,254,255,236,173,224,124,
+  16,226,132,129,225,132,9,226,132,7,225,132,3,226,132,130,225,124,225,124,
+  9,226,124,4,225,124,4,226,124,129,225,124,7,226,124,6,162,124,229,0,
+  127,255,255,127,255,255,127,255,255,127,255,255,53,255,255,134,232,140,99,116,
+  100,116,100,116,37,116,37,116,3,197,107,129,134,107,3,134,99,132,70,99,
+  5,83,71,99,244,181,23,255,255,131,190,247,176,140,4,58,5,70,66,129,
+  70,58,7,5,58,137,69,58,69,66,133,66,134,74,133,74,198,74,198,82,
+  5,83,5,83,3,69,91,3,133,99,135,196,107,197,107,196,107,196,107,36,
+  108,36,108,35,116,4,99,116,133,98,116,98,116,162,124,161,124,162,124,7,
+  161,124,14,160,124,130,96,116,160,124,3,224,124,134,160,124,161,124,99,124,
+  227,132,34,133,161,132,22,160,124,131,96,116,38,149,123,239,22,255,255,131,
+  189,247,169,165,224,124,10,226,132,3,225,132,4,226,132,4,225,132,3,226,
+  132,131,225,132,226,132,226,132,7,225,132,3,226,132,130,226,124,225,124,4,
+  226,124,134,225,124,226,124,227,124,226,124,226,124,225,124,7,226,124,129,225,
+  124,9,226,124,4,162,124,219,0,127,255,255,127,255,255,127,255,255,127,255,
+  255,53,255,255,132,239,173,34,116,100,116,100,116,3,37,116,129,37,108,3,
+  197,107,136,198,107,198,107,134,107,134,107,133,99,69,91,238,148,124,239,23,
+  255,255,131,115,165,69,66,69,66,3,70,66,132,70,58,5,58,69,58,69,
+  58,3,69,66,138,133,74,197,74,198,82,6,83,5,83,69,91,69,91,133,
+  99,133,99,132,99,4,196,107,138,35,108,35,108,35,116,35,116,98,116,99,
+  116,98,116,97,116,97,116,161,116,9,161,124,19,160,124,140,161,124,97,124,
+  160,124,160,124,224,124,224,132,160,124,129,99,161,124,225,132,160,124,32,116,
+  21,160,124,131,96,116,105,157,188,247,22,255,255,131,123,239,168,157,224,124,
+  9,226,132,6,225,132,14,226,132,7,225,132,3,226,132,136,226,124,225,124,
+  226,124,226,124,162,124,225,124,226,124,162,124,7,226,124,130,225,124,225,124,
+  12,226,124,3,162,124,250,0,127,255,255,127,255,255,127,255,255,127,255,255,
+  36,255,255,130,125,239,180,173,15,255,255,131,247,214,98,116,99,124,3,100,
+  116,132,36,116,36,116,37,108,37,108,4,197,107,134,198,107,198,107,134,107,
+  68,91,41,116,183,206,23,255,255,131,246,181,134,66,69,66,4,70,66,147,
+  134,66,134,74,197,74,197,82,5,83,5,91,70,91,69,91,133,99,132,99,
+  196,99,196,107,196,107,36,108,35,108,35,108,35,116,35,116,98,116,3,97,
+  116,131,96,116,160,124,161,124,31,160,124,141,224,124,160,116,33,108,160,124,
+  224,132,224,124,96,116,193,107,33,116,224,132,96,116,128,99,0,83,20,160,
+  124,131,96,108,172,173,254,255,22,255,255,131,122,231,102,149,224,124,6,226,
+  132,131,225,132,226,132,226,132,4,225,132,131,33,133,225,132,225,132,8,226,
+  132,135,225,132,225,132,226,132,226,132,225,132,226,132,226,132,7,225,132,132,
+  226,132,226,132,226,124,225,124,4,226,124,131,161,124,162,124,162,124,7,226,
+  124,129,225,124,11,226,124,132,163,124,162,124,162,124,163,124,238,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,35,255,255,132,250,214,202,107,6,75,
+  124,231,14,255,255,136,124,239,164,124,98,124,99,124,99,124,99,116,100,116,
+  100,116,4,36,116,137,37,108,37,108,197,107,197,107,198,107,198,107,133,99,
+  133,99,179,181,23,255,255,148,120,206,199,82,133,66,198,74,198,82,198,82,
+  6,83,6,91,69,91,69,91,69,99,132,99,132,99,196,107,195,107,35,108,
+  35,108,34,116,34,116,98,116,4,97,116,130,96,116,96,116,36,160,124,142,
+  224,124,224,124,32,108,32,108,33,108,129,99,65,99,163,124,225,132,96,124,
+  128,99,0,83,128,99,224,132,17,160,124,131,96,116,96,116,238,181,23,255,
+  255,131,57,223,36,141,224,124,10,226,132,4,225,132,133,33,133,225,132,225,
+  132,226,132,226,132,5,225,132,4,226,132,132,225,132,225,132,226,132,226,132,
+  7,225,132,3,226,132,137,226,124,225,124,226,124,226,124,162,124,161,124,161,
+  124,162,124,227,124,16,226,124,5,162,124,1,163,124,220,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,34,255,255,133,118,198,135,91,6,75,6,75,
+  184,206,15,255,255,133,40,149,97,116,98,124,98,124,98,116,5,99,116,140,
+  100,116,100,116,36,116,36,116,37,116,37,116,37,108,197,107,197,107,132,99,
+  237,148,124,239,22,255,255,144,250,214,137,107,4,83,70,91,69,91,69,99,
+  133,99,132,99,196,107,195,107,194,107,34,108,34,108,34,116,97,116,97,116,
+  4,96,116,42,160,124,140,224,124,224,124,128,91,130,74,128,91,32,116,161,
+  124,192,107,96,116,96,116,64,83,96,116,14,160,124,134,96,124,160,124,160,
+  124,96,116,96,116,49,190,23,255,255,131,246,214,35,133,224,124,11,226,132,
+  8,225,132,134,33,133,33,133,225,132,33,133,225,132,225,132,3,226,132,130,
+  225,132,225,132,4,226,132,6,225,132,4,226,132,3,225,124,132,226,124,162,
+  124,161,124,162,124,14,226,124,8,162,124,1,163,124,225,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,32,255,255,135,254,247,175,173,196,99,70,91,
+  71,83,197,66,179,165,15,255,255,132,47,182,96,116,160,124,97,124,4,98,
+  116,7,99,116,136,100,116,100,116,36,116,36,116,37,116,196,107,104,124,249,
+  222,22,255,255,138,124,239,106,132,131,99,196,107,196,107,194,107,34,108,34,
+  116,33,116,32,116,4,96,116,47,160,124,140,224,124,224,124,32,100,64,83,
+  128,91,64,91,0,83,64,91,160,124,160,116,192,99,224,124,14,160,124,133,
+  96,116,96,124,96,116,161,124,180,206,23,255,255,132,179,206,225,124,224,124,
+  225,132,11,226,132,7,225,132,138,33,133,33,133,225,132,225,132,33,133,225,
+  132,225,132,226,132,226,132,225,132,6,226,132,6,225,132,140,226,132,226,132,
+  225,132,226,132,226,124,225,124,225,124,226,124,162,124,162,124,161,124,162,124,
+  11,226,124,5,162,124,134,162,116,162,124,162,124,162,116,163,116,163,116,210,
+  0,127,255,255,127,255,255,127,255,255,127,255,255,31,255,255,136,123,239,106,
+  157,99,108,37,108,134,91,71,83,198,74,174,132,15,255,255,137,122,231,160,
+  124,96,124,160,124,96,124,96,124,97,124,97,124,98,124,6,98,116,5,99,
+  116,132,100,116,35,108,36,116,117,198,22,255,255,133,189,247,42,149,192,107,
+  33,116,97,116,5,96,116,51,160,124,138,224,124,160,116,192,107,0,83,192,
+  99,32,108,192,99,160,124,96,116,32,108,12,160,124,135,96,124,160,124,96,
+  124,96,116,96,116,163,124,247,222,23,255,255,132,114,198,225,124,225,124,225,
+  132,13,226,132,5,225,132,129,33,133,5,225,132,132,226,132,226,132,225,132,
+  225,132,4,226,132,130,225,132,226,132,8,225,132,141,226,132,226,132,225,132,
+  226,132,225,124,225,124,226,124,226,124,162,124,161,124,162,124,162,124,163,124,
+  8,226,124,4,162,124,8,162,116,187,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,30,255,255,138,245,214,36,141,161,124,164,124,37,108,134,99,70,
+  83,6,75,137,91,189,247,15,255,255,130,38,149,96,116,10,160,124,134,161,
+  124,161,124,162,124,98,124,99,124,99,124,4,99,116,131,34,108,174,165,254,
+  255,21,255,255,134,190,247,171,165,32,108,96,116,96,124,96,124,54,160,124,
+  137,224,124,160,124,192,99,64,91,128,91,64,91,129,107,225,132,96,116,16,
+  160,124,131,96,116,229,140,122,231,23,255,255,132,46,182,161,124,225,124,225,
+  132,15,226,132,3,225,132,129,33,133,4,225,132,4,226,132,129,225,132,8,
+  226,132,8,225,132,4,226,132,137,225,124,226,124,226,124,162,124,162,124,161,
+  124,161,124,162,124,227,124,7,226,124,6,162,124,6,162,116,189,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,29,255,255,139,112,190,225,124,225,124,
+  227,132,164,124,101,116,198,99,70,91,71,83,198,74,55,198,15,255,255,130,
+  47,182,96,116,13,160,124,129,161,124,3,162,124,135,99,124,98,124,98,116,
+  99,116,33,108,41,149,124,239,22,255,255,130,237,173,96,116,57,160,124,135,
+  224,124,96,116,0,83,0,58,0,58,129,107,33,133,16,160,124,131,96,116,
+  39,149,123,239,22,255,255,133,254,255,236,173,160,124,225,132,225,132,17,226,
+  132,131,225,132,225,132,33,133,4,225,132,3,226,132,129,225,132,10,226,132,
+  8,225,132,140,226,132,225,132,226,132,226,124,225,124,226,124,226,124,162,124,
+  161,124,161,124,162,124,162,124,4,226,124,129,225,124,5,226,124,7,162,124,
+  130,162,116,162,124,191,0,127,255,255,127,255,255,127,255,255,127,255,255,27,
+  255,255,141,188,239,170,165,224,124,225,132,226,132,227,132,164,124,101,116,198,
+  99,134,91,71,83,197,74,49,149,15,255,255,130,123,231,161,124,15,160,124,
+  3,161,124,135,160,124,161,124,97,124,98,124,32,108,230,132,57,223,22,255,
+  255,130,46,182,96,116,57,160,124,133,224,124,160,124,96,108,96,116,224,132,
+  16,160,124,131,96,116,105,157,189,247,22,255,255,133,189,247,170,157,160,124,
+  226,132,225,132,18,226,132,131,225,132,33,133,33,133,4,225,132,14,226,132,
+  5,225,132,130,226,132,226,132,3,225,132,129,226,132,3,225,124,135,226,124,
+  162,124,162,124,161,124,161,124,162,124,162,124,4,226,124,129,225,124,6,226,
+  124,135,227,124,163,124,163,124,162,124,162,124,163,124,162,124,174,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,26,255,255,132,55,223,101,149,224,124,
+  34,133,3,226,132,135,164,124,101,116,37,108,134,91,71,83,6,75,203,107,
+  16,255,255,130,103,149,96,116,22,160,124,131,96,116,162,124,180,206,22,255,
+  255,130,113,190,96,116,58,160,124,130,224,132,224,132,16,160,124,131,96,116,
+  237,173,254,247,22,255,255,132,123,239,104,149,160,124,225,132,20,226,132,139,
+  33,133,33,133,225,132,225,132,33,133,33,133,225,132,225,132,226,132,226,132,
+  225,132,11,226,132,4,225,132,7,226,132,139,226,124,225,124,225,124,226,124,
+  162,124,162,124,161,124,161,124,162,124,162,124,227,124,10,226,124,134,227,124,
+  226,124,226,124,162,124,163,124,162,124,163,0,127,255,255,127,255,255,127,255,
+  255,127,255,255,25,255,255,131,113,198,225,132,224,124,3,34,133,138,226,132,
+  226,132,164,124,101,116,37,108,198,99,70,83,71,83,6,75,184,206,15,255,
+  255,130,113,190,96,116,23,160,124,131,160,116,160,124,113,190,22,255,255,131,
+  114,198,96,116,160,116,73,160,124,130,96,116,48,190,23,255,255,133,122,231,
+  101,149,224,124,225,132,225,132,21,226,132,131,225,132,226,132,225,132,3,33,
+  133,130,225,132,226,132,3,225,132,10,226,132,5,225,132,4,226,132,142,225,
+  132,226,132,226,132,225,124,225,124,226,124,226,124,162,124,162,124,161,124,161,
+  124,162,124,162,124,227,124,14,226,124,1,227,124,170,0,127,255,255,127,255,
+  255,127,255,255,127,255,255,23,255,255,132,188,239,235,173,224,124,225,132,4,
+  34,133,138,226,132,226,132,164,124,164,124,37,108,198,99,134,91,71,83,197,
+  74,49,149,15,255,255,131,124,239,162,124,96,116,24,160,124,130,96,116,237,
+  173,22,255,255,131,179,206,161,124,96,116,54,160,124,130,224,124,224,124,14,
+  160,124,131,160,116,161,124,179,198,23,255,255,131,55,223,36,141,224,124,18,
+  226,132,3,225,132,130,226,132,225,132,3,226,132,132,225,132,225,132,33,133,
+  225,132,3,226,132,3,225,132,9,226,132,5,225,132,6,226,132,129,225,132,
+  3,225,124,131,226,124,162,124,162,124,3,161,124,131,162,124,162,124,163,124,
+  14,226,124,183,0,127,255,255,127,255,255,127,255,255,127,255,255,22,255,255,
+  132,56,223,101,149,224,124,33,133,5,34,133,138,225,132,226,132,227,124,164,
+  124,101,116,198,99,134,91,71,83,6,75,203,107,16,255,255,130,171,165,96,
+  116,25,160,124,131,96,116,170,157,189,247,21,255,255,131,245,214,161,124,160,
+  116,36,160,124,131,224,124,160,124,160,124,8,224,124,6,160,124,130,224,124,
+  224,124,13,160,124,131,96,116,227,132,246,214,23,255,255,131,245,206,226,132,
+  225,124,23,226,132,130,225,132,225,132,3,226,132,3,225,132,4,226,132,8,
+  225,132,3,226,132,3,225,132,129,226,132,3,225,132,3,226,132,131,225,132,
+  226,132,225,132,3,225,124,131,226,124,162,124,162,124,3,161,124,4,162,124,
+  11,226,124,1,225,124,174,0,127,255,255,127,255,255,127,255,255,127,255,255,
+  21,255,255,131,178,198,226,132,224,124,7,34,133,139,226,132,226,132,227,132,
+  164,124,101,116,38,108,134,91,71,83,7,83,7,75,250,214,15,255,255,131,
+  246,214,96,116,96,124,25,160,124,131,96,116,39,149,123,239,21,255,255,131,
+  245,214,162,124,160,116,24,160,124,22,224,124,6,160,124,132,224,124,160,124,
+  224,124,224,124,10,160,124,131,96,116,228,132,57,231,23,255,255,131,178,198,
+  225,124,225,124,29,226,132,131,225,132,33,133,225,132,10,226,132,130,225,132,
+  225,132,3,226,132,7,225,132,3,226,132,131,225,132,225,132,226,132,3,225,
+  124,130,226,124,226,124,3,162,124,4,161,124,130,162,124,162,124,11,226,124,
+  189,0,127,255,255,127,255,255,127,255,255,127,255,255,19,255,255,132,189,247,
+  236,173,224,124,225,132,9,34,133,138,226,132,227,132,164,124,101,116,37,108,
+  198,99,70,91,71,83,197,66,240,148,16,255,255,130,38,149,96,116,26,160,
+  124,131,96,116,228,132,57,231,21,255,255,131,246,214,226,132,160,116,19,160,
+  124,131,224,124,160,124,160,124,27,224,124,129,160,124,5,224,124,9,160,124,
+  131,96,116,39,149,123,239,23,255,255,133,112,190,224,124,225,132,226,132,225,
+  132,3,226,132,130,225,132,225,132,22,226,132,4,225,132,11,226,132,132,225,
+  132,225,132,226,132,226,132,6,225,132,3,226,132,3,225,132,130,226,132,225,
+  132,3,225,124,130,226,124,226,124,6,162,124,3,161,124,5,162,124,133,226,
+  124,226,124,225,124,226,124,225,124,187,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,18,255,255,131,57,223,102,149,224,124,11,34,133,139,226,132,226,
+  132,163,124,164,116,101,108,198,99,134,91,71,83,6,75,137,99,190,247,15,
+  255,255,130,113,190,32,108,27,160,124,131,96,116,162,124,247,214,21,255,255,
+  131,55,223,226,132,160,116,15,160,124,39,224,124,8,160,124,131,96,116,169,
+  157,190,247,22,255,255,139,254,247,236,173,224,124,225,132,226,132,225,132,225,
+  132,226,132,226,132,225,132,225,132,23,226,132,3,225,132,130,33,133,225,132,
+  11,226,132,131,225,132,226,132,226,132,7,225,132,130,226,132,226,132,5,225,
+  132,134,225,124,225,124,226,124,225,124,226,124,226,124,3,162,124,129,163,124,
+  3,162,124,5,161,124,131,162,124,162,124,226,124,3,225,124,211,0,127,255,
+  255,127,255,255,127,255,255,127,255,255,17,255,255,131,179,198,34,133,224,124,
+  12,34,133,139,226,132,226,132,163,124,164,124,101,116,198,99,134,91,71,83,
+  7,83,198,74,119,198,15,255,255,132,188,239,163,132,96,116,96,124,3,160,
+  124,129,96,124,22,160,124,131,96,116,161,116,181,206,21,255,255,131,56,223,
+  226,132,160,116,14,160,124,33,224,124,132,160,124,224,124,160,124,224,124,9,
+  160,124,130,96,116,236,173,23,255,255,143,189,247,169,157,224,124,225,132,226,
+  132,226,132,225,132,225,132,226,132,225,132,225,132,226,132,226,132,225,132,225,
+  132,22,226,132,129,225,132,3,33,133,130,225,132,226,132,4,225,132,7,226,
+  132,3,225,132,129,226,132,3,225,132,130,226,132,226,132,4,225,132,130,226,
+  132,226,124,4,225,124,132,226,124,226,124,162,124,162,124,3,163,124,3,162,
+  124,5,161,124,4,226,124,202,0,127,255,255,127,255,255,127,255,255,127,255,
+  255,15,255,255,132,189,247,44,174,224,124,225,132,13,34,133,139,226,132,226,
+  132,227,124,164,124,101,116,37,108,134,91,71,83,7,83,198,74,109,124,16,
+  255,255,130,237,173,96,108,3,96,116,130,160,124,96,124,23,160,124,131,160,
+  116,160,116,114,198,21,255,255,131,56,223,227,132,160,116,14,160,124,25,224,
+  124,19,160,124,130,96,116,47,182,23,255,255,143,187,239,103,149,224,124,33,
+  133,33,133,34,133,34,133,225,132,225,132,226,132,225,132,226,132,226,132,225,
+  132,225,132,3,226,132,133,225,132,225,132,226,132,225,132,225,132,15,226,132,
+  130,225,132,33,133,8,225,132,131,226,132,226,132,225,132,3,226,132,4,225,
+  132,130,226,132,226,132,8,225,132,130,226,132,226,132,4,225,124,3,226,124,
+  11,162,124,4,226,124,1,225,124,195,0,127,255,255,127,255,255,127,255,255,
+  127,255,255,14,255,255,132,56,223,102,149,224,124,33,133,14,34,133,140,226,
+  132,226,132,227,132,164,124,101,116,37,108,198,99,70,91,7,83,7,75,71,
+  83,124,231,15,255,255,129,56,223,5,96,116,129,160,124,3,96,124,22,160,
+  124,130,96,116,48,190,21,255,255,131,57,231,227,132,160,116,55,160,124,131,
+  160,116,161,124,179,206,23,255,255,131,57,231,36,141,224,124,3,34,133,130,
+  33,133,33,133,4,225,132,133,226,132,226,132,225,132,225,132,226,132,4,225,
+  132,131,226,132,225,132,225,132,15,226,132,134,225,132,225,132,226,132,225,132,
+  33,133,225,132,5,226,132,129,225,132,3,226,132,4,225,132,3,226,132,8,
+  225,132,130,226,132,226,132,3,225,124,130,226,124,225,124,3,226,124,8,162,
+  124,7,226,124,176,0,127,255,255,127,255,255,127,255,255,127,255,255,13,255,
+  255,131,178,198,34,133,224,124,16,34,133,140,226,132,226,132,227,132,164,124,
+  164,116,37,108,198,99,134,91,71,83,7,83,5,75,244,181,16,255,255,131,
+  105,157,96,116,96,124,3,96,116,4,96,124,22,160,124,130,96,116,237,181,
+  21,255,255,131,57,231,227,132,160,116,53,160,124,131,96,116,162,132,246,222,
+  23,255,255,131,246,214,35,141,224,124,4,34,133,129,33,133,5,225,132,129,
+  226,132,3,225,132,5,226,132,4,225,132,14,226,132,129,225,132,3,226,132,
+  129,225,132,9,226,132,4,225,132,3,226,132,9,225,132,131,226,132,226,132,
+  225,132,3,225,124,130,226,124,225,124,14,226,124,131,225,124,226,124,226,124,
+  202,0,127,255,255,127,255,255,127,255,255,127,255,255,11,255,255,132,189,247,
+  235,173,224,124,225,132,17,34,133,141,226,132,226,132,227,132,163,124,164,124,
+  101,116,38,108,134,91,70,83,7,83,6,75,41,108,190,247,15,255,255,137,
+  246,214,96,116,96,124,96,116,96,124,96,124,96,116,96,124,96,124,24,160,
+  124,130,96,116,236,173,21,255,255,131,122,231,227,132,160,116,51,160,124,131,
+  96,116,37,141,121,231,23,255,255,132,179,206,226,132,224,124,225,132,4,33,
+  133,133,225,132,225,132,226,132,225,132,226,132,7,225,132,5,226,132,133,225,
+  132,225,132,226,132,225,132,225,132,17,226,132,130,225,132,225,132,4,226,132,
+  6,225,132,129,226,132,9,225,132,3,226,132,130,225,132,225,132,3,225,124,
+  131,226,124,225,124,225,124,9,226,124,132,225,124,226,124,226,124,225,124,3,
+  226,124,213,0,127,255,255,127,255,255,127,255,255,127,255,255,10,255,255,132,
+  56,223,102,149,224,124,33,133,18,34,133,3,226,132,138,163,124,164,124,101,
+  116,37,108,198,99,70,83,71,83,7,83,69,83,183,206,15,255,255,132,254,
+  255,38,149,96,116,160,124,3,96,124,131,96,116,96,116,96,124,24,160,124,
+  131,96,116,170,165,254,255,20,255,255,131,57,231,227,132,160,116,49,160,124,
+  131,96,116,104,157,188,239,23,255,255,137,112,190,225,124,225,124,226,132,226,
+  132,225,132,33,133,225,132,225,132,5,226,132,131,225,132,225,132,226,132,7,
+  225,132,132,226,132,226,132,225,132,225,132,5,226,132,133,225,132,225,132,226,
+  132,226,132,225,132,8,226,132,3,225,132,4,226,132,6,225,132,130,226,132,
+  226,132,9,225,132,132,226,132,226,132,225,132,225,132,4,225,124,131,226,124,
+  226,124,225,124,7,226,124,130,225,124,225,124,7,226,124,218,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,9,255,255,131,178,198,34,133,224,124,20,
+  34,133,3,226,132,138,227,124,164,124,101,116,37,108,198,99,134,91,71,83,
+  7,83,68,83,236,148,16,255,255,130,179,206,96,116,3,160,124,5,96,124,
+  130,96,116,96,124,22,160,124,131,96,116,169,157,190,247,20,255,255,131,56,
+  223,226,132,160,116,47,160,124,131,96,116,170,165,190,247,23,255,255,131,45,
+  174,160,116,225,124,4,226,132,136,225,132,225,132,226,132,225,132,225,132,226,
+  132,226,132,225,132,4,34,133,10,225,132,132,226,132,225,132,226,132,226,132,
+  3,225,132,133,226,132,225,132,33,133,225,132,225,132,3,226,132,3,225,132,
+  5,226,132,7,225,132,4,226,132,129,225,132,3,226,132,3,225,132,132,226,
+  132,226,132,225,132,225,132,5,225,124,132,226,124,226,124,225,124,225,124,6,
+  226,124,129,225,124,6,226,124,130,226,132,226,132,221,0,127,255,255,127,255,
+  255,127,255,255,127,255,255,7,255,255,132,188,239,236,173,224,124,225,132,21,
+  34,133,3,226,132,139,227,132,164,124,101,116,37,108,198,99,134,91,71,83,
+  70,83,133,91,36,108,58,231,15,255,255,131,189,247,227,132,96,116,3,160,
+  124,5,96,124,133,96,116,96,116,96,124,160,124,96,124,19,160,124,131,96,
+  116,104,157,189,247,20,255,255,131,56,223,227,132,96,116,44,160,124,131,160,
+  116,160,116,46,182,23,255,255,136,189,247,170,165,160,116,225,124,225,124,226,
+  124,226,132,226,132,8,225,132,5,34,133,131,33,133,34,133,226,132,9,225,
+  132,132,226,132,225,132,225,132,226,132,5,225,132,129,33,133,3,226,132,130,
+  225,132,225,132,6,226,132,4,225,132,131,226,132,226,132,225,132,4,226,132,
+  3,225,132,6,226,132,129,225,132,6,225,124,129,226,124,3,225,124,5,226,
+  124,130,225,124,225,124,6,226,124,130,226,132,226,132,221,0,127,255,255,127,
+  255,255,127,255,255,127,255,255,6,255,255,131,55,223,101,149,224,124,22,34,
+  133,4,226,132,139,227,132,163,124,164,124,101,116,37,108,134,99,70,83,70,
+  83,197,99,193,107,237,173,16,255,255,130,113,190,96,116,4,160,124,133,96,
+  124,160,124,96,124,96,116,96,124,5,96,116,129,96,124,18,160,124,131,96,
+  116,103,149,188,239,20,255,255,131,56,223,163,132,96,116,42,160,124,131,160,
+  116,161,124,178,198,23,255,255,132,123,239,104,149,160,116,226,124,3,225,124,
+  131,226,124,226,124,225,124,4,225,132,3,226,132,8,34,133,132,226,132,34,
+  133,225,132,226,132,8,225,132,130,226,132,226,132,3,225,132,130,226,132,225,
+  132,3,226,132,130,225,132,225,132,5,226,132,4,225,132,132,226,132,226,132,
+  225,132,225,132,4,226,132,4,225,132,5,226,132,129,225,132,9,225,124,9,
+  226,124,131,225,124,226,124,226,124,3,226,132,1,225,132,217,0,127,255,255,
+  127,255,255,127,255,255,127,255,255,5,255,255,131,177,198,34,133,224,124,23,
+  34,133,4,226,132,140,227,132,163,124,164,124,101,116,37,108,198,99,134,91,
+  70,91,196,99,33,116,162,124,188,239,15,255,255,130,188,247,162,132,5,160,
+  124,130,96,124,96,124,8,96,116,129,96,124,18,160,124,131,96,116,38,149,
+  123,239,20,255,255,131,55,223,227,132,96,116,40,160,124,131,160,116,227,132,
+  245,214,23,255,255,133,57,231,37,141,160,124,226,132,226,132,5,226,124,129,
+  225,124,3,225,132,3,226,132,9,34,133,129,226,132,3,34,133,130,226,132,
+  226,132,6,225,132,131,33,133,225,132,226,132,4,225,132,3,226,132,129,225,
+  132,4,226,132,5,225,132,6,226,132,3,225,132,3,225,124,130,225,132,225,
+  132,4,226,132,130,225,132,225,132,8,225,124,5,226,124,129,225,124,5,226,
+  124,133,225,132,226,132,226,132,225,132,225,132,193,0,127,255,255,127,255,255,
+  127,255,255,127,255,255,3,255,255,132,188,239,170,165,224,124,225,132,24,34,
+  133,4,226,132,140,227,132,163,124,164,124,101,116,37,108,198,99,134,91,133,
+  91,36,108,97,116,96,116,114,198,16,255,255,130,47,190,96,116,5,160,124,
+  129,96,124,10,96,116,129,96,124,17,160,124,131,96,116,37,141,123,239,20,
+  255,255,131,247,222,162,124,160,116,38,160,124,131,160,116,37,141,121,231,23,
+  255,255,131,246,214,227,132,225,124,7,226,132,129,225,132,4,226,132,130,225,
+  132,226,132,12,34,133,6,226,132,8,225,132,130,33,133,33,133,8,226,132,
+  5,225,132,8,226,132,129,225,132,5,225,124,3,225,132,132,226,132,226,132,
+  225,132,225,132,8,225,124,8,226,124,130,225,124,225,124,3,226,132,131,225,
+  132,226,132,225,132,223,0,127,255,255,127,255,255,127,255,255,127,255,255,133,
+  255,255,255,255,55,223,100,141,224,124,25,34,133,4,226,132,142,227,132,227,
+  132,163,124,164,124,101,116,37,116,37,108,198,99,197,99,35,108,96,124,160,
+  124,37,149,190,247,15,255,255,130,188,239,162,132,5,160,124,130,96,124,96,
+  124,3,96,116,129,32,116,7,96,116,17,160,124,131,96,116,37,141,123,239,
+  20,255,255,131,247,214,162,124,160,116,36,160,124,131,160,116,103,149,187,239,
+  23,255,255,134,179,198,225,124,225,124,226,132,225,132,225,132,9,226,132,129,
+  225,132,16,34,133,134,226,132,34,133,34,133,33,133,33,133,226,132,7,225,
+  132,8,226,132,7,225,132,137,226,132,226,132,225,132,226,132,226,132,225,132,
+  226,132,225,132,225,132,4,226,124,4,225,132,131,226,132,226,132,225,132,7,
+  225,124,6,226,124,139,225,124,226,124,225,124,226,124,226,132,226,132,225,132,
+  225,132,226,132,226,132,225,132,218,0,127,255,255,127,255,255,127,255,255,127,
+  255,255,132,255,255,112,190,225,132,225,132,26,34,133,4,226,132,138,227,132,
+  227,132,163,124,164,124,101,116,101,116,37,108,197,99,36,108,98,116,3,160,
+  124,129,244,214,16,255,255,130,236,173,96,116,5,160,124,129,96,124,4,96,
+  116,6,32,116,131,96,116,96,116,96,124,16,160,124,131,96,116,229,140,123,
+  239,20,255,255,131,246,214,161,116,160,116,25,160,124,7,224,124,133,160,124,
+  160,124,160,116,171,165,190,247,23,255,255,134,113,190,160,116,226,124,226,124,
+  226,132,225,132,8,226,132,129,225,132,21,34,133,3,226,132,5,225,132,133,
+  33,133,225,132,226,132,226,132,225,132,5,226,132,8,225,132,4,226,132,137,
+  225,132,226,132,225,132,225,132,226,132,226,124,226,124,225,124,225,124,4,225,
+  132,130,226,132,225,132,7,225,124,5,226,124,133,225,124,225,124,226,124,225,
+  124,226,132,7,225,132,230,0,127,255,255,127,255,255,127,255,255,126,255,255,
+  132,123,239,168,157,224,124,225,132,27,34,133,3,226,132,3,227,132,136,163,
+  124,164,124,101,124,101,116,37,108,37,108,36,108,97,116,3,160,124,130,167,
+  157,254,255,15,255,255,130,123,239,225,132,5,160,124,130,96,124,96,124,5,
+  96,116,5,32,116,4,96,116,3,96,124,12,160,124,131,96,116,228,140,123,
+  239,20,255,255,131,245,214,160,116,160,116,14,160,124,129,224,124,3,160,124,
+  130,224,124,160,124,11,224,124,131,160,124,160,116,47,190,23,255,255,131,254,
+  247,236,165,160,116,3,226,124,9,226,132,23,34,133,132,226,132,33,133,34,
+  133,226,132,4,225,132,133,33,133,225,132,226,132,226,132,225,132,5,226,132,
+  7,225,132,4,226,132,136,225,132,226,132,225,132,225,132,226,132,226,132,226,
+  124,226,124,5,225,124,132,225,132,225,124,225,132,225,132,5,225,124,6,226,
+  124,3,225,124,132,226,132,225,132,225,132,226,132,5,225,132,204,0,127,255,
+  255,127,255,255,127,255,255,125,255,255,131,245,214,35,141,224,124,28,34,133,
+  3,226,132,3,227,132,142,163,132,163,124,164,124,100,124,101,116,37,108,37,
+  108,100,116,96,116,160,124,224,124,224,132,224,124,246,214,16,255,255,130,236,
+  173,96,116,6,160,124,129,96,124,5,96,116,6,32,116,4,96,116,3,96,
+  124,11,160,124,131,96,116,228,140,122,231,20,255,255,130,180,206,96,116,13,
+  160,124,4,224,124,129,160,124,12,224,124,131,160,124,160,124,179,206,23,255,
+  255,131,189,247,170,157,160,116,4,226,124,4,226,132,129,225,132,27,34,133,
+  133,33,133,33,133,226,132,226,132,33,133,5,225,132,131,226,132,226,132,225,
+  132,4,226,132,8,225,132,5,226,132,3,225,132,131,226,132,226,124,226,124,
+  15,225,124,5,226,124,3,225,124,130,226,132,225,132,4,226,132,4,225,132,
+  208,0,127,255,255,127,255,255,127,255,255,123,255,255,132,189,247,45,182,225,
+  132,225,132,29,34,133,130,226,132,226,132,3,227,132,3,163,124,140,164,124,
+  100,124,101,116,101,116,100,116,99,116,160,124,160,124,224,132,224,132,224,124,
+  233,165,16,255,255,130,187,239,226,132,6,160,124,3,96,124,5,96,116,9,
+  32,116,3,96,116,129,96,124,10,160,124,131,96,116,227,132,57,231,20,255,
+  255,130,180,206,160,116,11,160,124,15,224,124,133,160,124,224,124,160,116,227,
+  132,55,223,23,255,255,133,122,231,39,141,161,116,227,124,227,124,4,226,124,
+  131,226,132,226,132,225,132,28,34,133,132,33,133,34,133,34,133,226,132,6,
+  225,132,131,226,132,226,132,225,132,3,226,132,10,225,132,3,226,132,131,225,
+  132,226,132,226,132,3,226,124,16,225,124,4,226,124,3,225,124,130,225,132,
+  225,132,6,226,132,3,225,132,211,0,127,255,255,127,255,255,127,255,255,122,
+  255,255,132,57,223,103,149,224,124,225,132,29,34,133,3,226,132,142,227,132,
+  227,132,163,132,163,124,163,124,164,124,164,124,100,124,101,116,101,116,100,116,
+  162,116,160,124,160,124,4,224,132,129,56,223,16,255,255,130,45,182,96,116,
+  7,160,124,132,96,124,96,124,96,116,96,124,5,96,116,7,32,116,3,96,
+  116,130,96,124,96,124,9,160,124,131,96,116,227,132,122,231,20,255,255,130,
+  113,198,160,116,8,160,124,17,224,124,132,160,124,160,116,37,149,122,231,23,
+  255,255,133,55,223,36,133,160,116,226,124,227,124,4,226,124,129,225,124,3,
+  226,132,31,34,133,131,33,133,33,133,226,132,4,225,132,131,226,132,226,132,
+  225,132,3,226,132,10,225,132,4,226,132,131,226,124,226,132,226,124,18,225,
+  124,3,226,124,132,225,124,225,124,225,132,225,132,8,226,132,3,225,132,207,
+  0,127,255,255,127,255,255,127,255,255,121,255,255,131,178,198,34,133,224,124,
+  30,34,133,3,226,132,3,227,132,130,163,124,163,124,3,164,124,135,100,124,
+  101,124,100,116,163,116,161,124,160,124,160,124,3,224,132,130,160,124,234,173,
+  16,255,255,130,188,239,226,132,9,160,124,3,96,124,13,96,116,5,96,124,
+  8,160,124,131,96,116,228,140,123,231,20,255,255,130,112,190,160,116,7,160,
+  124,7,224,124,130,160,124,160,124,7,224,124,132,160,124,160,116,104,157,188,
+  247,23,255,255,131,180,206,226,124,225,124,7,226,124,132,225,124,225,124,226,
+  132,226,132,31,34,133,131,33,133,34,133,226,132,6,225,132,3,226,132,10,
+  225,132,5,226,132,129,226,124,3,225,124,132,226,124,225,124,225,124,226,124,
+  13,225,124,133,226,124,226,124,225,124,225,124,225,132,3,226,132,129,225,132,
+  6,226,132,3,225,132,225,0,127,255,255,127,255,255,127,255,255,119,255,255,
+  132,188,239,236,173,224,124,225,132,31,34,133,3,226,132,132,227,132,227,132,
+  163,132,163,124,4,164,124,135,100,124,101,124,100,124,163,124,160,124,160,124,
+  224,124,4,224,132,130,225,132,57,231,16,255,255,130,45,182,160,116,11,160,
+  124,3,96,124,130,160,124,160,124,9,96,124,129,160,124,4,96,124,131,160,
+  124,96,124,96,124,5,160,124,131,96,116,228,140,122,231,20,255,255,132,46,
+  182,160,116,160,124,224,124,3,160,124,134,224,124,224,124,160,124,224,124,160,
+  124,224,124,4,160,124,6,224,124,132,160,124,160,116,237,173,190,247,23,255,
+  255,131,113,190,225,124,225,124,9,226,124,130,225,124,225,132,3,226,132,31,
+  34,133,129,226,132,4,225,132,4,226,132,8,225,132,8,226,132,134,225,124,
+  225,124,226,124,226,124,225,124,225,124,5,226,124,13,225,124,129,225,132,4,
+  226,132,129,225,132,6,226,132,3,225,132,231,0,127,255,255,127,255,255,127,
+  255,255,118,255,255,131,55,223,101,149,224,124,33,34,133,3,226,132,133,227,
+  132,227,132,163,124,164,124,164,124,3,100,124,134,164,124,100,124,164,124,162,
+  124,160,124,160,124,5,224,132,130,160,124,234,173,16,255,255,130,124,239,226,
+  132,28,160,124,129,96,124,4,160,124,130,96,124,96,124,4,160,124,131,96,
+  116,229,140,123,239,20,255,255,130,237,173,160,116,4,224,124,5,160,124,130,
+  224,124,224,124,10,160,124,129,113,198,23,255,255,133,254,255,45,182,160,124,
+  226,124,226,132,7,226,124,135,227,124,227,124,226,124,226,124,226,132,226,132,
+  225,132,29,34,133,134,33,133,33,133,226,132,225,132,225,132,33,133,5,226,
+  132,8,225,132,130,226,132,225,132,5,226,132,136,225,124,225,124,226,124,225,
+  124,226,124,226,124,225,124,162,124,4,226,124,5,225,124,129,226,124,4,225,
+  124,131,224,124,225,124,225,132,3,226,132,4,225,132,6,226,132,130,225,132,
+  225,132,225,0,127,255,255,127,255,255,127,255,255,117,255,255,131,112,190,225,
+  132,224,124,34,34,133,3,226,132,133,227,132,227,132,163,124,164,124,164,124,
+  4,100,124,132,164,124,163,124,161,124,160,124,7,224,132,130,225,132,122,231,
+  16,255,255,130,46,190,160,116,3,224,124,132,160,124,224,124,160,124,224,124,
+  32,160,124,131,96,116,229,140,123,239,20,255,255,130,235,165,160,116,4,224,
+  124,4,160,124,3,224,124,6,160,124,131,160,116,226,124,244,206,23,255,255,
+  135,189,247,170,165,160,124,225,132,225,132,226,132,226,132,6,226,124,136,227,
+  124,163,124,226,124,226,124,225,124,225,132,226,132,226,132,18,34,133,129,33,
+  133,9,34,133,130,33,133,33,133,4,225,132,5,226,132,4,225,132,133,226,
+  132,225,132,225,132,226,132,225,132,6,226,132,130,225,124,225,124,3,226,124,
+  131,162,124,161,124,162,124,3,226,124,11,225,124,130,225,132,225,132,4,226,
+  132,5,225,132,7,226,132,225,0,127,255,255,127,255,255,127,255,255,115,255,
+  255,132,122,231,169,165,224,124,225,132,34,34,133,4,226,132,132,227,132,163,
+  132,163,124,164,124,5,100,124,132,164,124,163,124,160,124,160,124,7,224,132,
+  130,160,124,235,173,16,255,255,131,188,247,35,141,160,124,9,224,124,30,160,
+  124,131,96,116,38,149,124,239,19,255,255,133,190,247,169,157,160,116,224,124,
+  224,124,5,160,124,3,224,124,5,160,124,131,160,116,36,141,56,223,23,255,
+  255,137,123,231,104,149,224,124,226,132,226,132,225,132,225,132,226,132,226,132,
+  6,226,124,135,163,124,163,124,226,124,225,124,225,124,226,132,226,132,13,34,
+  133,7,33,133,5,34,133,5,33,133,3,225,132,4,226,132,6,225,132,133,
+  226,132,226,132,225,132,226,132,225,132,5,226,132,137,226,124,225,124,225,124,
+  226,124,162,124,161,124,162,124,161,124,162,124,3,226,124,10,225,124,130,225,
+  132,225,132,5,226,132,6,225,132,6,226,132,216,0,127,255,255,127,255,255,
+  127,255,255,114,255,255,131,244,206,35,133,224,124,36,34,133,4,226,132,133,
+  227,132,163,132,163,124,164,124,164,124,4,100,124,131,163,124,162,124,160,124,
+  9,224,132,130,225,132,122,231,16,255,255,130,113,198,160,124,5,224,132,6,
+  224,124,29,160,124,131,96,116,38,149,188,239,19,255,255,131,189,247,103,157,
+  160,116,13,160,124,131,160,116,103,149,188,239,23,255,255,131,56,223,36,141,
+  224,124,4,226,132,132,225,132,225,132,226,132,226,132,6,226,124,135,163,124,
+  163,124,226,124,225,124,225,124,225,132,226,132,11,34,133,140,33,133,33,133,
+  225,132,33,133,225,132,225,132,226,132,225,132,225,132,226,132,33,133,226,132,
+  4,33,133,3,225,132,5,226,132,6,225,132,11,226,132,131,225,124,225,124,
+  226,124,6,162,124,3,226,124,8,225,124,130,224,124,225,132,8,226,132,5,
+  225,132,5,226,132,1,225,132,222,0,127,255,255,127,255,255,127,255,255,112,
+  255,255,132,189,247,45,182,224,124,225,132,37,34,133,3,226,132,134,227,132,
+  227,132,163,124,163,124,164,124,164,124,4,100,124,131,163,124,162,124,160,132,
+  9,224,132,130,160,124,234,173,16,255,255,131,189,247,36,141,224,124,5,224,
+  132,6,224,124,29,160,124,131,96,116,103,149,189,247,19,255,255,131,188,247,
+  38,149,160,116,11,160,124,131,160,116,171,165,190,247,23,255,255,131,245,206,
+  226,132,225,124,6,226,132,3,225,132,130,226,132,226,132,5,226,124,135,163,
+  124,163,124,226,124,225,124,225,132,226,132,226,132,10,34,133,129,33,133,9,
+  225,132,129,33,133,4,225,132,131,33,133,225,132,225,132,6,226,132,6,225,
+  132,10,226,132,132,226,124,225,124,225,124,226,124,3,161,124,130,162,124,162,
+  124,3,226,124,8,225,124,130,225,132,225,132,3,226,132,4,225,132,3,226,
+  132,3,225,132,6,226,132,1,225,132,225,0,127,255,255,127,255,255,127,255,
+  255,111,255,255,132,56,223,102,149,224,124,33,133,37,34,133,3,226,132,3,
+  227,132,131,163,132,163,124,164,124,5,100,124,132,163,124,162,124,160,132,160,
+  132,9,224,132,130,225,132,122,231,16,255,255,130,179,206,224,124,8,224,132,
+  3,224,124,130,160,124,224,124,28,160,124,131,160,116,103,149,190,247,19,255,
+  255,131,188,239,36,141,160,116,9,160,124,130,160,116,48,190,24,255,255,131,
+  112,190,225,124,225,124,13,226,132,4,226,124,136,162,124,163,124,163,124,226,
+  124,225,124,225,124,226,132,226,132,9,34,133,129,33,133,3,225,132,130,33,
+  133,225,132,4,226,132,3,225,132,131,226,132,225,132,225,132,7,226,132,6,
+  225,132,10,226,132,129,226,124,3,225,124,129,162,124,3,161,124,132,162,124,
+  162,124,226,124,226,124,7,225,124,130,224,124,225,132,4,226,132,3,225,132,
+  129,33,133,3,226,132,5,225,132,5,226,132,1,225,132,220,0,127,255,255,
+  127,255,255,127,255,255,110,255,255,131,112,190,34,133,224,124,39,34,133,3,
+  226,132,3,227,132,131,163,132,163,124,164,124,5,100,124,132,99,124,161,124,
+  160,124,160,132,9,224,132,130,160,124,233,165,16,255,255,131,254,247,102,149,
+  224,124,8,224,132,6,224,124,27,160,124,131,160,116,168,157,254,247,19,255,
+  255,130,122,231,227,132,7,160,124,131,160,116,161,124,180,206,24,255,255,131,
+  237,173,224,124,225,132,15,226,132,4,226,124,3,163,124,133,226,124,225,124,
+  225,132,226,132,226,132,3,34,133,133,33,133,34,133,226,132,33,133,33,133,
+  3,225,132,130,33,133,225,132,18,226,132,8,225,132,8,226,132,135,225,124,
+  226,124,225,124,226,124,162,124,162,124,161,124,3,162,124,130,226,124,226,124,
+  6,225,124,130,224,124,225,132,3,226,132,4,225,132,131,33,133,33,133,225,
+  132,3,226,132,4,225,132,4,226,132,130,225,132,225,132,232,0,127,255,255,
+  127,255,255,127,255,255,108,255,255,132,188,239,169,165,224,124,225,132,39,34,
+  133,4,226,132,134,227,132,227,132,163,132,163,124,164,124,164,124,3,100,124,
+  134,101,124,100,124,100,124,161,124,160,124,160,132,11,224,132,129,122,231,16,
+  255,255,130,245,214,224,124,7,224,132,11,224,124,129,160,124,8,224,124,11,
+  160,124,129,161,124,3,224,124,130,160,116,170,165,20,255,255,130,56,223,161,
+  124,5,160,124,131,160,116,227,132,56,223,23,255,255,131,189,247,169,157,224,
+  124,17,226,132,5,226,124,3,163,124,139,225,124,225,124,225,132,226,132,226,
+  132,34,133,34,133,226,132,33,133,226,132,226,132,5,225,132,131,226,132,226,
+  132,225,132,5,226,132,17,225,132,9,226,132,133,226,124,225,124,226,124,225,
+  124,226,124,6,162,124,129,226,124,7,225,124,129,225,132,3,226,132,130,225,
+  132,33,133,3,225,132,131,33,133,225,132,225,132,3,226,132,130,225,132,225,
+  132,7,226,132,1,225,132,221,0,127,255,255,127,255,255,127,255,255,107,255,
+  255,131,179,206,35,141,224,124,41,34,133,4,226,132,143,227,132,227,132,163,
+  132,163,124,164,124,100,124,100,124,101,124,101,124,37,124,37,124,100,124,161,
+  124,160,124,160,132,10,224,132,130,160,124,234,165,17,255,255,130,169,165,224,
+  124,4,224,132,130,224,124,224,124,3,160,124,18,224,124,4,160,124,11,224,
+  124,130,160,124,235,173,20,255,255,130,246,214,161,124,3,160,124,131,96,116,
+  104,157,123,239,23,255,255,131,122,231,102,149,224,124,20,226,132,4,226,124,
+  3,163,124,133,225,124,225,124,225,132,226,132,226,132,10,225,132,5,226,132,
+  6,225,132,129,226,132,14,225,132,4,226,132,132,225,132,225,132,226,132,226,
+  132,4,225,124,129,226,124,6,162,124,4,226,124,3,225,124,131,225,132,226,
+  132,226,132,4,225,132,130,33,133,33,133,5,225,132,130,226,132,226,132,4,
+  225,132,5,226,132,1,225,132,233,0,127,255,255,127,255,255,127,255,255,105,
+  255,255,132,189,247,172,165,160,124,224,132,42,34,133,4,226,132,136,227,132,
+  227,132,163,124,164,124,164,124,100,124,101,124,101,124,3,37,124,132,99,124,
+  97,124,160,124,160,132,8,224,132,4,160,124,129,56,223,16,255,255,130,56,
+  223,224,124,4,224,132,22,224,124,6,225,124,130,161,124,161,124,4,225,124,
+  5,225,132,130,224,124,237,181,20,255,255,134,180,206,160,124,160,124,96,116,
+  236,173,190,247,23,255,255,131,246,214,36,141,225,124,13,226,132,129,225,132,
+  4,226,132,132,225,132,225,132,226,132,226,132,4,226,124,133,163,124,163,124,
+  226,124,225,124,225,124,3,226,132,9,225,132,5,226,132,5,225,132,6,226,
+  132,10,225,132,4,226,132,132,225,132,226,132,226,132,226,124,3,225,124,3,
+  226,124,5,162,124,3,226,124,3,225,124,131,225,132,226,132,226,132,6,225,
+  132,129,33,133,5,225,132,4,226,132,130,225,132,225,132,5,226,132,1,225,
+  132,237,0,127,255,255,127,255,255,127,255,255,104,255,255,133,247,214,165,132,
+  192,107,224,124,33,133,42,34,133,3,226,132,144,227,132,227,132,163,132,164,
+  124,164,124,100,124,100,124,101,124,37,124,37,124,37,116,37,124,99,124,97,
+  124,160,124,160,132,5,224,132,131,160,124,224,124,225,132,4,160,124,129,168,
+  157,17,255,255,131,235,173,224,124,225,132,4,224,132,130,224,124,224,132,13,
+  224,124,129,225,124,9,160,124,6,161,124,7,162,124,130,96,116,47,182,20,
+  255,255,131,113,198,161,124,48,190,24,255,255,131,178,198,225,132,224,124,13,
+  226,132,8,225,132,130,226,132,226,132,4,226,124,3,163,124,131,226,124,225,
+  124,225,124,3,226,132,8,225,132,5,226,132,6,225,132,6,226,132,9,225,
+  132,4,226,132,135,225,132,226,132,226,132,225,132,225,124,226,124,225,124,3,
+  226,124,131,162,124,162,124,161,124,3,162,124,135,226,124,225,124,224,124,225,
+  132,225,132,226,132,226,132,10,225,132,13,226,132,130,225,132,225,132,253,0,
+  127,255,255,127,255,255,127,255,255,102,255,255,135,254,255,240,181,32,108,192,
+  107,32,116,224,132,33,133,41,34,133,3,226,132,151,227,132,227,132,163,132,
+  163,124,164,124,100,124,100,124,101,124,37,124,37,124,37,116,197,115,37,116,
+  35,124,97,124,160,124,160,132,160,124,161,132,161,124,161,124,97,124,160,124,
+  3,161,124,3,160,124,130,96,116,247,214,16,255,255,130,123,239,225,132,7,
+  224,132,14,224,124,129,160,124,3,224,124,8,160,124,131,161,124,161,124,160,
+  124,7,161,124,131,160,124,96,116,48,190,20,255,255,129,122,231,24,255,255,
+  131,46,182,160,124,225,124,8,225,132,130,226,132,226,132,13,225,132,130,226,
+  132,226,132,4,226,124,3,163,124,133,226,124,225,124,225,124,226,132,226,132,
+  6,225,132,130,33,133,225,132,5,226,132,8,225,132,6,226,132,8,225,132,
+  5,226,132,129,226,124,4,225,124,4,226,124,139,162,124,161,124,161,124,162,
+  124,162,124,225,124,224,124,225,132,225,132,226,132,226,132,9,225,132,130,33,
+  133,225,132,13,226,132,130,225,132,225,132,4,1,127,255,255,127,255,255,127,
+  255,255,101,255,255,130,122,231,104,157,3,32,108,131,32,116,224,132,33,133,
+  41,34,133,141,225,132,226,132,226,132,227,132,227,132,163,124,164,124,164,124,
+  100,124,101,124,37,124,37,124,37,116,3,197,115,139,35,124,96,124,160,132,
+  160,124,192,107,34,116,129,99,128,99,192,99,32,108,32,108,3,96,116,133,
+  160,124,160,124,96,116,103,149,254,255,16,255,255,130,111,190,224,124,6,224,
+  132,20,224,124,10,160,124,132,161,124,161,124,160,124,160,124,3,161,124,131,
+  160,124,160,116,114,198,42,255,255,131,189,247,235,165,160,124,3,226,132,10,
+  225,132,7,226,132,5,225,132,130,226,132,226,132,5,226,124,3,163,124,130,
+  226,124,225,124,3,226,132,5,225,132,10,226,132,7,225,132,4,226,132,7,
+  225,132,130,226,132,225,132,4,226,132,133,226,124,225,124,225,124,226,124,225,
+  124,3,226,124,138,162,124,162,124,161,124,161,124,162,124,224,124,224,124,225,
+  132,226,132,226,132,5,225,132,129,33,133,3,225,132,132,33,133,225,132,33,
+  133,225,132,13,226,132,130,225,132,225,132,239,0,127,255,255,127,255,255,127,
+  255,255,100,255,255,137,180,206,227,132,96,116,96,116,32,108,32,108,32,116,
+  224,132,33,133,40,34,133,5,226,132,147,227,132,163,124,164,124,100,124,101,
+  124,37,124,37,116,197,115,197,115,198,115,134,115,197,115,35,124,96,124,160,
+  124,160,132,32,116,192,107,192,107,3,128,99,132,192,99,192,99,192,107,32,
+  108,3,96,116,130,96,108,181,206,16,255,255,131,189,247,35,141,224,124,3,
+  224,132,20,224,124,10,160,124,4,161,124,130,160,124,160,124,5,161,124,130,
+  160,116,180,206,40,255,255,131,123,239,104,149,160,124,11,226,132,129,225,132,
+  17,226,132,4,226,124,129,162,124,3,163,124,130,225,124,225,124,3,226,132,
+  4,225,132,4,226,132,129,225,132,6,226,132,8,225,132,3,226,132,5,225,
+  132,8,226,132,4,225,124,4,226,124,136,162,124,161,124,225,124,224,124,224,
+  124,225,132,226,132,226,132,6,225,132,130,33,133,33,133,3,225,132,129,33,
+  133,4,225,132,10,226,132,3,225,132,39,1,56,255,255,140,254,255,124,239,
+  249,222,119,206,244,197,177,181,47,165,237,156,172,148,171,148,106,140,106,140,
+  5,105,140,137,170,148,171,148,236,156,46,173,176,181,243,197,118,214,249,222,
+  124,239,127,255,255,127,255,255,127,255,255,16,255,255,138,188,247,171,165,160,
+  116,160,124,160,124,96,116,96,116,32,108,32,116,224,132,42,34,133,129,225,
+  132,3,226,132,148,163,132,163,124,164,124,100,124,37,124,37,116,198,115,198,
+  115,134,115,134,115,70,107,197,115,35,124,96,124,160,124,160,132,224,132,32,
+  133,225,132,160,124,3,224,132,130,224,124,161,124,4,162,124,131,161,116,38,
+  141,190,247,16,255,255,132,178,198,160,124,224,132,224,132,15,224,124,130,160,
+  124,224,124,19,160,124,130,161,124,160,124,3,161,124,132,160,124,160,124,161,
+  124,245,214,38,255,255,131,56,223,36,141,224,124,31,226,132,4,226,124,134,
+  162,124,163,124,163,124,226,124,225,124,225,124,3,226,132,129,225,132,4,226,
+  132,4,225,132,6,226,132,7,225,132,11,226,132,133,225,132,226,132,226,124,
+  226,132,226,132,4,225,124,4,226,124,132,162,124,225,124,224,124,224,124,3,
+  226,132,9,225,132,4,33,133,130,225,132,225,132,3,226,132,129,225,132,8,
+  226,132,3,225,132,12,1,51,255,255,135,190,247,58,231,118,206,177,181,237,
+  156,106,140,200,131,8,199,123,130,199,131,199,131,11,39,132,136,38,132,38,
+  132,103,140,170,156,109,173,51,198,248,222,189,247,127,255,255,127,255,255,127,
+  255,255,10,255,255,131,246,214,228,140,160,116,3,160,124,133,96,116,96,116,
+  32,108,32,116,224,132,41,34,133,129,225,132,3,226,132,150,227,132,163,132,
+  164,124,100,124,101,124,37,124,197,115,198,115,134,115,134,115,70,107,70,107,
+  133,115,35,116,96,124,160,124,160,132,224,132,224,132,161,124,67,99,193,99,
+  4,96,116,135,160,116,161,124,161,124,160,124,160,124,160,116,114,198,17,255,
+  255,131,101,149,224,124,224,132,12,224,124,31,160,124,131,160,116,161,124,247,
+  222,36,255,255,131,244,206,226,132,225,124,16,226,132,3,225,132,13,226,132,
+  5,226,124,3,163,124,131,226,124,225,124,225,132,4,226,132,7,225,132,6,
+  226,132,7,225,132,10,226,132,129,225,132,5,226,132,5,225,124,3,162,124,
+  131,225,124,224,124,225,132,3,226,132,6,225,132,129,33,133,3,225,132,129,
+  33,133,6,225,132,12,226,132,130,225,132,225,132,49,1,47,255,255,135,190,
+  247,249,222,243,189,237,156,41,132,134,115,198,123,12,199,123,130,199,131,199,
+  131,11,39,132,130,38,132,38,132,4,38,140,133,37,140,103,148,44,173,51,
+  198,58,231,127,255,255,127,255,255,127,255,255,5,255,255,141,254,247,47,182,
+  96,116,160,116,160,124,161,124,160,124,160,124,96,116,96,116,32,116,32,116,
+  224,132,41,34,133,166,226,132,225,132,226,132,227,132,227,132,163,132,164,124,
+  101,124,37,124,37,116,198,115,134,115,134,115,70,107,6,107,70,107,133,115,
+  195,115,96,124,160,124,160,132,224,132,224,132,224,124,194,99,130,99,194,107,
+  33,108,32,116,160,124,225,132,33,133,162,124,33,116,160,124,160,116,35,141,
+  188,239,16,255,255,132,246,214,224,124,224,132,160,124,5,224,124,131,160,124,
+  160,124,224,124,35,160,124,131,96,116,163,132,122,231,34,255,255,131,112,190,
+  224,124,225,124,16,226,132,131,225,132,226,132,225,132,14,226,132,6,226,124,
+  133,163,124,163,124,226,124,225,124,225,124,9,226,132,130,225,132,225,132,7,
+  226,132,7,225,132,14,226,132,5,225,124,136,226,124,226,124,225,124,224,124,
+  224,124,225,132,226,132,226,132,12,225,132,129,33,133,3,225,132,134,226,132,
+  226,132,225,132,226,132,226,132,225,132,9,226,132,130,225,124,161,116,35,1,
+  44,255,255,132,124,239,53,206,46,165,40,132,5,134,115,129,198,123,12,199,
+  123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,130,37,140,
+  37,140,3,101,140,131,233,164,50,198,58,239,127,255,255,127,255,255,127,255,
+  255,132,255,255,57,223,38,141,96,116,3,160,124,132,161,124,160,124,160,124,
+  96,116,3,32,116,130,224,132,33,133,40,34,133,3,226,132,138,227,132,227,
+  132,163,124,164,124,101,124,37,124,198,115,198,115,134,115,70,107,3,6,107,
+  133,70,107,195,115,96,124,160,124,160,132,3,224,132,142,131,99,67,91,194,
+  99,33,108,32,108,160,124,33,133,33,133,163,124,33,116,96,116,160,124,160,
+  124,47,190,17,255,255,131,169,165,160,124,160,124,5,224,124,30,160,124,129,
+  160,116,8,160,124,131,96,116,228,132,123,239,31,255,255,132,190,247,171,165,
+  160,124,225,124,15,226,132,3,225,132,16,226,132,6,226,124,3,163,124,131,
+  162,124,225,124,225,124,19,226,132,7,225,132,5,226,132,130,225,132,225,132,
+  5,226,132,140,225,124,225,124,226,124,225,124,225,124,226,124,225,124,224,124,
+  225,124,225,132,226,132,226,132,20,225,132,7,226,132,135,225,132,225,124,161,
+  124,161,116,98,108,194,99,195,99,63,1,41,255,255,132,123,239,52,198,171,
+  148,198,123,3,133,115,5,134,115,129,198,123,12,199,123,130,199,131,199,131,
+  11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,3,101,140,3,
+  100,140,131,43,173,181,214,254,255,127,255,255,127,255,255,124,255,255,131,113,
+  198,97,124,96,116,4,160,124,132,161,124,160,124,96,124,96,116,3,32,116,
+  130,224,132,33,133,40,34,133,4,226,132,137,227,132,163,124,100,124,101,124,
+  37,116,198,115,134,115,70,107,70,107,3,7,107,133,70,107,195,115,96,124,
+  160,124,160,132,3,224,132,143,131,99,2,83,193,107,33,108,97,116,224,132,
+  33,133,33,133,163,124,34,116,96,116,160,124,160,124,227,132,123,239,16,255,
+  255,130,57,231,161,132,32,160,124,133,160,116,160,124,160,124,96,116,96,116,
+  4,160,124,136,160,116,160,124,160,124,96,116,160,124,96,116,229,140,188,239,
+  29,255,255,133,123,239,104,149,160,124,225,132,226,132,3,225,132,13,226,132,
+  129,225,132,17,226,132,6,226,124,4,163,124,131,226,124,225,124,225,124,19,
+  226,132,6,225,132,5,226,132,129,225,132,4,226,132,141,225,132,226,132,225,
+  124,225,124,226,124,226,124,225,124,225,124,224,124,224,124,225,132,226,132,226,
+  132,19,225,132,6,226,132,138,225,132,225,124,225,124,161,116,162,116,162,124,
+  99,116,195,99,195,107,35,108,68,1,38,255,255,133,190,247,118,206,236,156,
+  133,115,132,115,5,133,115,5,134,115,129,198,123,12,199,123,130,199,131,199,
+  131,11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,3,101,140,
+  4,100,140,132,99,140,231,156,114,206,189,247,127,255,255,127,255,255,120,255,
+  255,130,122,231,105,157,3,96,116,6,160,124,135,96,116,96,116,32,116,33,
+  108,32,116,224,132,33,133,39,34,133,4,226,132,138,227,132,163,132,164,124,
+  100,124,101,124,37,116,198,115,134,115,70,107,71,107,3,7,107,133,70,107,
+  195,115,96,124,160,124,160,132,3,224,132,143,131,99,2,83,193,107,96,116,
+  96,116,224,132,225,132,33,133,163,132,34,116,96,116,160,116,161,124,96,116,
+  171,165,17,255,255,130,46,182,96,116,30,160,124,129,96,116,4,160,124,131,
+  160,116,160,124,96,124,9,96,116,130,39,149,189,247,27,255,255,134,55,223,
+  36,141,160,124,225,132,226,132,225,132,3,226,132,131,226,124,226,132,225,132,
+  28,226,132,5,226,124,137,162,124,163,124,162,124,163,124,163,124,162,124,225,
+  124,225,124,226,124,19,226,132,5,225,132,11,226,132,6,225,124,133,224,124,
+  225,132,225,132,226,132,226,132,10,225,132,3,33,133,5,225,132,129,33,133,
+  3,226,132,142,225,132,225,124,225,124,224,124,161,124,161,116,162,116,163,116,
+  163,124,99,116,195,99,195,99,35,108,35,108,91,1,36,255,255,135,59,231,
+  176,181,199,123,68,107,68,107,68,115,132,115,5,133,115,5,134,115,129,198,
+  123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,
+  130,37,140,37,140,3,101,140,4,100,140,3,99,140,131,166,156,114,206,190,
+  247,127,255,255,127,255,255,117,255,255,135,181,206,164,124,160,116,160,124,96,
+  124,96,116,96,124,4,160,124,3,96,116,133,32,116,33,108,32,116,224,132,
+  33,133,39,34,133,129,225,132,3,226,132,146,227,132,163,132,164,124,100,124,
+  37,124,198,115,198,115,134,115,70,107,6,107,7,107,199,106,7,107,133,115,
+  34,116,96,124,160,124,160,132,3,224,132,144,131,99,2,83,193,107,96,116,
+  96,116,225,132,225,132,33,133,163,132,34,116,96,116,96,116,161,124,161,124,
+  97,116,247,222,16,255,255,130,189,247,228,140,35,160,124,12,96,116,131,96,
+  108,105,157,189,247,25,255,255,131,180,206,226,132,225,124,3,226,132,131,226,
+  124,226,132,226,132,3,226,124,130,226,132,225,132,27,226,132,6,226,124,137,
+  163,124,163,124,162,124,163,124,163,124,162,124,225,124,225,124,226,124,19,226,
+  132,4,225,132,9,226,132,129,225,132,3,225,124,136,226,124,225,124,224,124,
+  225,124,225,132,225,132,226,132,226,132,12,225,132,133,33,133,225,132,225,132,
+  33,133,225,132,3,226,132,142,225,132,225,124,225,124,161,124,162,124,162,124,
+  163,124,163,124,163,116,163,116,163,124,99,116,131,99,195,107,3,35,108,94,
+  1,34,255,255,137,248,222,236,156,132,115,67,107,67,107,68,107,68,107,68,
+  115,132,115,5,133,115,5,134,115,129,198,123,12,199,123,130,199,131,199,131,
+  11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,3,101,140,4,
+  100,140,3,99,140,132,98,140,98,140,230,164,181,222,127,255,255,127,255,255,
+  114,255,255,137,189,247,174,165,35,116,98,116,160,124,160,124,96,124,96,116,
+  96,124,3,160,124,137,160,116,160,116,96,116,96,116,32,116,33,108,32,116,
+  224,132,33,133,38,34,133,130,226,132,225,132,3,226,132,146,227,132,163,132,
+  164,124,100,124,37,124,197,115,198,115,134,107,70,107,6,107,7,107,199,106,
+  6,107,133,115,33,124,96,124,160,124,160,132,3,224,132,133,195,107,194,74,
+  193,99,33,108,96,116,3,225,132,136,226,132,34,116,33,116,96,116,161,124,
+  162,124,96,116,40,149,17,255,255,130,179,206,160,116,33,160,124,130,160,116,
+  160,124,11,96,116,131,96,108,163,132,123,239,24,255,255,131,47,182,160,124,
+  225,124,6,226,132,129,226,124,5,226,132,129,225,132,24,226,132,8,226,124,
+  137,163,124,163,124,162,124,163,124,163,124,163,116,162,124,225,124,225,124,10,
+  226,132,129,225,132,8,226,132,3,225,132,10,226,132,3,225,124,129,226,124,
+  3,225,124,131,225,132,226,132,226,132,10,225,132,129,33,133,5,225,132,3,
+  226,132,129,225,132,3,225,124,129,162,124,3,163,124,4,163,116,132,163,124,
+  99,116,131,99,195,99,4,35,108,124,1,32,255,255,132,183,214,170,148,66,
+  107,66,107,3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,134,
+  115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,
+  4,38,140,130,37,140,37,140,3,101,140,4,100,140,3,99,140,134,98,140,
+  98,140,98,148,97,148,106,181,123,239,127,255,255,127,255,255,111,255,255,137,
+  246,214,232,140,195,115,100,124,98,124,160,124,160,124,96,124,96,116,4,160,
+  124,137,96,116,96,116,160,116,96,116,96,116,33,108,33,116,160,132,33,133,
+  38,34,133,130,33,133,225,132,3,226,132,146,227,132,163,124,164,124,100,124,
+  37,124,197,115,134,115,70,107,70,107,6,107,199,106,199,106,70,107,196,115,
+  33,124,96,124,160,124,160,132,3,224,132,145,194,107,194,74,193,99,192,107,
+  96,116,33,133,225,132,225,132,226,132,35,116,33,116,96,116,161,124,162,124,
+  96,124,32,116,181,206,17,255,255,129,105,157,6,160,124,130,224,124,224,124,
+  27,160,124,130,96,124,96,124,8,96,116,131,96,108,105,157,124,239,23,255,
+  255,132,188,239,235,165,160,116,225,124,37,226,132,9,226,124,130,163,124,162,
+  124,3,163,124,133,163,116,163,116,162,124,225,124,225,124,9,226,132,130,225,
+  132,225,132,7,226,132,4,225,132,131,226,132,225,132,225,132,4,226,132,139,
+  226,124,225,132,226,132,225,124,226,124,225,124,224,124,225,132,225,132,226,132,
+  226,132,12,225,132,131,33,133,226,132,226,132,3,225,132,3,225,124,132,162,
+  124,162,116,163,124,163,124,6,163,116,137,163,124,99,108,131,91,195,99,35,
+  108,35,108,99,108,99,116,163,124,127,1,30,255,255,130,249,222,170,148,4,
+  66,107,3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,134,115,
+  129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,
+  38,140,130,37,140,37,140,3,101,140,4,100,140,3,99,140,135,98,140,98,
+  140,98,148,97,148,97,148,162,148,115,214,127,255,255,127,255,255,108,255,255,
+  135,254,247,46,182,225,124,99,124,99,124,163,124,98,124,3,160,124,130,96,
+  116,96,124,3,160,124,137,161,124,160,124,160,124,96,124,96,116,33,108,193,
+  107,160,124,33,133,38,34,133,5,226,132,145,227,132,163,124,164,124,100,124,
+  37,116,198,115,134,115,70,107,6,107,7,107,199,106,199,106,70,107,195,115,
+  32,124,96,124,160,132,4,224,132,146,34,108,194,74,193,99,32,108,160,116,
+  33,133,225,132,225,132,226,132,195,115,34,108,96,116,161,124,162,124,97,124,
+  32,116,228,132,254,247,16,255,255,130,56,223,161,124,3,160,124,5,224,124,
+  22,160,124,130,96,124,96,124,3,160,124,131,96,124,160,124,96,124,6,96,
+  116,129,237,173,25,255,255,130,171,165,160,116,3,226,132,129,226,124,32,226,
+  132,12,226,124,3,162,124,129,162,116,3,163,116,132,162,116,161,124,225,124,
+  226,124,8,226,132,130,225,132,225,132,6,226,132,4,225,132,3,226,132,130,
+  225,132,226,124,4,226,132,129,225,132,3,225,124,134,224,124,225,132,225,132,
+  226,132,225,132,33,133,10,225,132,130,226,132,226,132,3,225,132,3,225,124,
+  133,162,124,162,124,163,124,162,116,162,116,7,163,116,135,163,124,99,108,195,
+  99,35,108,99,116,163,124,226,124,3,226,132,166,1,28,255,255,132,124,239,
+  45,165,65,107,65,107,4,66,107,3,67,107,132,68,107,68,107,68,115,132,
+  115,5,133,115,5,134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,
+  132,130,38,132,38,132,4,38,140,130,37,140,37,140,3,101,140,4,100,140,
+  3,99,140,137,98,140,98,140,98,148,97,148,97,148,96,148,96,148,171,181,
+  189,247,127,255,255,127,255,255,105,255,255,136,56,223,103,157,160,124,225,132,
+  163,124,161,132,161,124,98,124,3,160,124,130,96,116,96,124,3,160,124,137,
+  161,124,161,124,160,124,96,124,96,116,33,116,193,107,160,124,33,133,38,34,
+  133,4,226,132,146,227,132,163,132,164,124,164,124,101,124,37,116,197,115,134,
+  115,71,107,7,107,7,107,199,106,7,107,133,115,194,115,96,124,160,124,160,
+  132,4,224,132,146,34,116,130,74,194,99,193,107,160,124,33,133,225,132,225,
+  132,226,132,195,115,194,107,97,116,161,124,162,124,97,124,96,116,32,108,48,
+  182,17,255,255,131,237,181,160,116,160,124,6,224,132,129,224,124,19,160,124,
+  132,96,124,160,124,96,124,96,124,6,160,124,134,96,124,96,124,160,124,96,
+  116,161,124,114,198,26,255,255,133,55,223,227,132,225,124,226,132,226,132,3,
+  226,124,130,226,132,226,132,4,226,124,132,226,132,226,132,226,124,226,124,19,
+  226,132,13,226,124,131,162,124,162,124,163,124,5,163,116,131,162,116,161,124,
+  225,124,6,226,132,130,225,132,225,132,8,226,132,3,225,132,3,226,132,129,
+  225,132,4,226,132,130,225,124,226,124,3,225,124,133,224,132,225,132,226,132,
+  226,132,225,132,3,33,133,5,225,132,3,226,132,130,225,132,225,132,3,225,
+  124,134,162,124,162,124,163,124,162,124,162,124,162,116,9,163,116,132,162,124,
+  162,124,162,116,226,124,5,226,132,130,226,124,226,124,188,1,27,255,255,130,
+  117,206,132,123,3,65,107,4,66,107,3,67,107,132,68,107,68,107,68,115,
+  132,115,5,133,115,5,134,115,156,198,123,199,123,199,123,40,132,107,140,237,
+  156,112,173,178,181,52,198,118,206,184,214,249,222,250,222,58,231,250,222,249,
+  222,183,214,118,206,52,198,242,189,112,173,45,165,171,148,105,140,39,132,39,
+  132,38,132,38,132,4,38,140,130,37,140,37,140,3,101,140,4,100,140,3,
+  99,140,133,98,140,98,140,98,148,97,148,97,148,3,96,148,130,229,164,122,
+  239,127,255,255,127,255,255,102,255,255,143,254,255,113,190,225,132,224,124,225,
+  132,225,132,226,132,163,124,163,124,99,124,160,124,224,124,160,124,96,116,96,
+  124,3,160,124,137,161,124,161,124,160,124,96,124,96,116,33,116,193,107,160,
+  124,33,133,37,34,133,130,226,132,225,132,3,226,132,145,227,132,163,132,163,
+  124,100,124,101,124,37,116,198,115,134,115,71,107,7,107,7,107,199,106,6,
+  107,133,115,33,116,96,124,160,124,5,224,132,147,34,116,195,74,193,107,193,
+  107,160,124,33,133,225,132,225,132,226,132,195,107,194,107,97,116,161,124,162,
+  124,97,124,96,116,32,116,98,116,124,239,16,255,255,131,188,239,228,140,160,
+  124,5,224,132,16,160,124,4,96,124,133,160,124,96,124,160,124,160,124,96,
+  124,6,160,124,133,96,124,96,124,96,116,228,132,247,222,28,255,255,132,245,
+  214,225,124,225,124,226,132,15,226,124,6,226,132,129,226,124,8,226,132,8,
+  226,124,129,225,124,6,226,124,131,162,124,162,124,163,124,5,163,116,132,162,
+  116,161,116,224,124,225,124,6,226,132,129,225,132,8,226,132,3,225,132,6,
+  226,132,6,225,124,132,225,132,225,132,226,132,226,132,6,225,132,3,226,132,
+  3,225,132,3,225,124,133,162,124,162,124,163,124,162,124,162,124,7,163,116,
+  3,162,116,131,162,124,226,124,226,124,9,226,132,130,226,124,226,124,159,1,
+  25,255,255,132,189,247,44,165,1,107,1,107,3,65,107,4,66,107,3,67,
+  107,132,68,107,68,107,68,115,132,115,5,133,115,3,134,115,134,41,140,237,
+  156,178,189,119,214,58,231,189,247,19,255,255,139,189,247,59,239,248,222,51,
+  198,111,181,235,156,103,140,38,140,38,140,37,140,37,140,3,101,140,4,100,
+  140,3,99,140,133,98,140,98,140,98,148,97,148,97,148,4,96,148,130,162,
+  156,246,222,127,255,255,127,255,255,100,255,255,144,122,231,168,157,224,124,225,
+  132,226,132,225,132,225,132,226,132,101,124,100,124,100,124,160,124,224,124,160,
+  124,96,116,96,116,3,160,124,3,161,124,134,97,116,96,116,33,116,194,107,
+  160,124,33,133,37,34,133,130,226,132,225,132,3,226,132,145,227,132,163,124,
+  164,124,100,124,37,124,198,115,198,115,134,107,71,107,7,107,199,106,199,106,
+  6,107,132,115,32,124,96,124,160,132,5,224,132,134,98,116,131,74,129,99,
+  33,108,160,124,33,133,3,225,132,138,196,107,194,107,96,116,161,124,98,124,
+  97,116,32,116,32,116,192,107,172,165,17,255,255,134,179,206,160,116,224,124,
+  224,132,224,124,224,124,19,160,124,4,96,124,131,160,124,160,124,96,124,6,
+  160,124,132,96,116,96,116,40,149,124,239,30,255,255,132,114,198,160,124,225,
+  124,226,132,15,226,124,130,226,132,226,124,9,226,132,18,226,124,131,162,124,
+  163,124,163,124,6,163,116,132,162,116,161,116,225,124,225,124,13,226,132,3,
+  225,132,4,226,132,3,226,124,5,225,124,132,225,132,225,132,226,132,226,132,
+  5,225,132,135,226,132,226,132,225,132,225,132,224,124,224,124,225,124,3,162,
+  124,8,163,116,138,162,116,163,116,162,124,161,124,161,124,225,124,226,132,226,
+  132,225,132,225,132,10,226,132,130,226,124,226,124,149,1,24,255,255,133,58,
+  231,38,132,0,99,1,107,1,107,3,65,107,4,66,107,3,67,107,132,68,
+  107,68,107,68,115,132,115,4,133,115,133,105,140,47,165,117,206,59,231,254,
+  255,30,255,255,133,124,239,247,222,241,189,43,165,102,140,3,101,140,4,100,
+  140,3,99,140,133,98,140,98,140,98,148,97,148,97,148,5,96,148,130,97,
+  148,180,214,127,255,255,127,255,255,98,255,255,145,115,198,98,124,160,124,33,
+  133,225,132,225,132,226,132,225,132,226,132,101,124,36,124,99,124,160,124,224,
+  124,160,124,96,116,96,116,3,160,124,4,161,124,133,96,116,33,116,194,107,
+  96,124,33,133,37,34,133,129,225,132,4,226,132,145,227,132,163,124,164,124,
+  100,124,37,124,198,115,134,115,70,107,71,107,7,107,199,106,199,106,70,107,
+  195,115,32,124,96,124,160,132,5,224,132,134,98,116,195,74,130,99,194,107,
+  160,124,33,133,3,225,132,139,35,116,193,107,96,116,162,124,98,124,97,116,
+  32,116,32,116,32,108,192,107,248,222,16,255,255,131,254,255,103,149,160,124,
+  3,224,132,129,224,124,18,160,124,4,96,124,6,160,124,134,96,124,160,124,
+  96,116,96,116,172,173,254,247,32,255,255,131,46,182,160,116,226,132,21,226,
+  124,132,226,132,226,124,226,132,226,132,20,226,124,130,162,124,163,124,5,163,
+  116,133,99,116,99,116,162,116,160,124,225,124,13,226,132,3,225,132,144,226,
+  132,226,132,225,132,226,132,226,124,225,124,225,124,226,124,226,124,225,124,225,
+  124,225,132,225,132,226,132,225,132,225,132,3,226,132,3,225,132,134,224,124,
+  225,124,225,124,162,124,162,124,162,116,8,163,116,134,162,116,162,116,161,124,
+  225,124,225,124,225,132,4,226,132,5,225,132,6,226,132,4,226,124,131,1,
+  23,255,255,134,183,214,131,115,0,99,0,99,1,107,1,107,3,65,107,4,
+  66,107,3,67,107,137,68,107,68,107,68,115,132,115,133,115,170,148,178,189,
+  250,222,254,255,38,255,255,132,124,239,117,214,109,173,102,148,4,100,140,3,
+  99,140,133,98,140,98,140,98,148,97,148,97,148,7,96,148,129,114,214,127,
+  255,255,127,255,255,95,255,255,135,123,231,41,149,192,107,32,116,224,132,33,
+  133,34,133,3,225,132,132,227,132,101,124,36,124,163,124,3,160,124,130,96,
+  116,96,116,4,160,124,3,161,124,133,96,116,97,116,33,108,96,124,33,133,
+  36,34,133,130,226,132,225,132,4,226,132,145,227,132,163,124,164,124,101,124,
+  37,124,198,115,134,115,70,107,7,107,7,107,199,106,7,107,69,107,195,115,
+  32,124,160,124,160,132,5,224,132,134,161,124,4,91,130,99,194,107,160,124,
+  34,133,3,225,132,139,35,116,193,107,96,116,162,124,98,124,97,116,32,116,
+  32,116,32,108,192,107,231,140,17,255,255,134,57,231,161,124,224,124,224,132,
+  224,132,224,124,18,160,124,5,96,124,131,160,124,96,124,96,124,3,160,124,
+  131,96,116,97,124,114,198,35,255,255,130,235,165,160,124,30,226,124,133,225,
+  124,226,124,226,124,225,124,225,124,10,226,124,130,163,124,163,124,5,163,116,
+  3,99,116,131,161,116,224,124,225,124,6,226,132,9,225,132,3,226,132,129,
+  225,132,5,225,124,130,225,132,225,132,5,226,132,3,225,132,138,224,124,225,
+  124,226,124,162,124,163,124,163,124,162,116,162,116,163,116,99,116,3,163,116,
+  134,162,116,162,116,161,124,225,124,225,124,225,132,8,226,132,6,225,132,6,
+  226,132,3,226,124,162,1,22,255,255,130,182,214,66,107,3,0,99,130,1,
+  107,1,107,3,65,107,4,66,107,3,67,107,133,68,107,68,107,40,132,177,
+  181,58,231,16,255,255,134,190,247,124,239,58,231,249,222,183,214,117,206,3,
+  52,198,135,53,198,118,206,183,214,249,222,59,231,189,247,254,255,13,255,255,
+  133,188,247,117,214,43,173,100,140,100,140,3,99,140,133,98,140,98,140,98,
+  148,97,148,97,148,8,96,148,129,114,206,127,255,255,127,255,255,93,255,255,
+  136,116,198,99,116,192,99,33,108,97,116,160,124,225,132,34,133,3,225,132,
+  132,226,132,100,124,36,124,162,124,3,160,124,130,96,116,96,116,4,160,124,
+  3,161,124,133,96,124,97,116,193,107,96,124,32,133,37,34,133,129,225,132,
+  4,226,132,145,227,132,163,124,164,124,101,124,37,116,198,115,134,115,70,107,
+  7,107,7,107,199,106,7,107,133,115,194,115,96,124,160,124,160,132,5,224,
+  132,134,161,124,4,91,130,99,194,107,161,124,34,133,3,225,132,140,35,116,
+  194,107,96,116,162,124,98,124,97,116,32,116,32,116,32,108,32,108,192,99,
+  115,198,17,255,255,132,46,182,160,124,224,132,224,132,17,160,124,10,96,124,
+  133,160,124,160,124,96,116,163,132,247,222,36,255,255,131,189,247,102,149,161,
+  124,28,226,124,134,225,124,226,124,226,124,225,124,226,124,225,124,10,226,124,
+  132,163,124,162,124,162,116,162,116,3,163,116,3,99,116,132,163,116,161,116,
+  224,124,225,124,4,226,132,9,225,132,3,226,132,135,226,124,225,124,225,124,
+  226,124,225,124,224,124,225,124,4,226,132,3,225,132,131,224,124,225,124,225,
+  124,4,162,124,129,163,124,3,163,116,136,99,116,163,116,162,116,161,124,225,
+  124,225,124,225,132,225,132,11,226,132,6,225,132,6,226,132,131,226,124,226,
+  132,226,132,180,1,21,255,255,130,184,214,65,107,4,0,99,130,1,107,1,
+  107,3,65,107,4,66,107,134,67,107,67,107,68,107,236,156,183,214,254,255,
+  12,255,255,136,124,239,249,222,53,198,178,181,46,165,171,148,106,140,40,132,
+  4,199,123,130,199,131,199,131,6,39,132,135,104,140,170,148,45,165,176,181,
+  52,206,249,222,124,239,11,255,255,138,58,231,239,189,165,148,99,140,99,140,
+  98,140,98,140,98,148,97,148,97,148,9,96,148,129,114,214,127,255,255,127,
+  255,255,90,255,255,150,189,239,107,157,192,99,192,107,32,108,32,108,32,116,
+  160,124,224,132,33,133,225,132,226,132,225,132,227,132,100,124,36,124,163,124,
+  161,124,224,124,160,124,96,116,96,116,4,160,124,3,161,124,133,96,116,96,
+  116,194,107,96,124,225,132,36,34,133,130,33,133,225,132,4,226,132,145,227,
+  132,163,124,164,124,100,124,37,116,198,115,134,115,70,107,7,107,199,106,199,
+  106,6,107,133,115,34,116,96,124,160,124,160,132,5,224,132,134,161,124,3,
+  91,130,99,193,107,161,124,34,133,3,225,132,141,35,116,193,107,96,116,162,
+  124,98,124,97,116,32,116,32,116,32,108,32,108,192,107,99,116,188,239,16,
+  255,255,133,189,247,35,141,160,124,224,132,160,132,16,160,124,9,96,124,133,
+  160,124,160,124,96,116,39,149,123,239,38,255,255,131,123,231,228,132,225,124,
+  11,226,124,130,225,124,225,124,3,226,124,130,225,124,225,124,4,226,124,133,
+  225,124,226,124,226,124,225,124,225,124,16,226,124,131,163,124,162,124,162,124,
+  4,163,116,4,99,116,132,162,116,160,124,225,124,226,124,3,226,132,5,225,
+  132,8,226,132,3,225,124,132,224,124,225,132,226,132,226,132,4,224,124,130,
+  225,124,226,124,7,162,124,139,163,124,162,116,162,116,161,116,161,124,224,124,
+  225,124,225,132,226,132,226,132,225,132,13,226,132,5,225,132,9,226,132,149,
+  1,20,255,255,130,59,231,67,107,5,0,99,130,1,107,1,107,3,65,107,
+  4,66,107,131,132,115,46,165,58,231,10,255,255,134,190,247,250,222,52,198,
+  47,165,107,148,200,123,11,199,123,130,199,131,199,131,11,39,132,134,38,132,
+  104,140,235,156,176,181,182,214,124,239,9,255,255,136,188,247,50,198,166,156,
+  98,140,98,140,98,148,97,148,97,148,10,96,148,129,181,222,127,255,255,127,
+  255,255,88,255,255,131,181,206,164,124,192,99,4,32,108,145,33,108,96,116,
+  224,132,33,133,33,133,226,132,226,132,227,132,100,124,99,124,163,124,161,124,
+  224,124,160,124,96,124,96,116,96,124,3,160,124,3,161,124,133,96,116,96,
+  116,193,107,32,116,224,132,36,34,133,130,225,132,225,132,4,226,132,144,227,
+  132,163,124,100,124,101,124,37,116,198,115,134,115,71,107,7,107,199,106,199,
+  106,6,107,133,115,33,124,96,124,160,124,6,224,132,134,161,124,67,91,130,
+  99,193,107,160,124,34,133,3,225,132,134,99,116,33,108,96,116,162,124,98,
+  124,97,116,3,32,116,132,32,108,32,108,192,99,174,173,17,255,255,131,180,
+  206,160,124,224,132,16,160,124,131,96,124,160,124,160,124,7,96,124,132,96,
+  116,96,116,237,173,190,247,40,255,255,131,56,223,226,124,225,124,10,226,124,
+  129,225,124,9,226,124,129,225,124,3,226,124,4,225,124,14,226,124,131,162,
+  124,163,124,163,124,4,163,116,5,99,116,132,162,116,161,124,225,124,226,124,
+  3,226,132,4,225,132,8,226,132,138,226,124,225,124,225,124,225,132,226,132,
+  226,132,226,124,225,124,225,124,226,124,3,225,124,130,161,124,161,124,8,225,
+  124,3,225,132,133,226,132,225,132,225,132,33,133,225,132,13,226,132,5,225,
+  132,9,226,132,135,1,19,255,255,130,254,255,39,132,6,0,99,130,1,107,
+  1,107,3,65,107,133,66,107,66,107,67,107,46,165,59,231,9,255,255,132,
+  59,231,53,198,46,165,41,132,3,134,115,129,198,123,12,199,123,130,199,131,
+  199,131,11,39,132,130,38,132,38,132,3,38,140,132,102,140,235,164,50,198,
+  57,231,8,255,255,134,189,247,49,198,164,148,98,148,97,148,97,148,10,96,
+  148,130,161,148,57,231,127,255,255,127,255,255,85,255,255,130,189,247,172,165,
+  7,32,108,140,33,108,96,116,224,132,33,133,225,132,226,132,226,132,227,132,
+  100,124,99,124,163,124,161,124,3,160,124,130,96,116,96,124,3,160,124,3,
+  161,124,133,96,116,96,116,32,108,32,124,224,132,35,34,133,130,33,133,225,
+  132,5,226,132,144,163,132,164,124,100,124,37,124,197,115,134,115,70,107,7,
+  107,7,107,199,106,199,106,70,107,196,115,32,124,96,124,160,132,6,224,132,
+  134,160,124,131,99,130,99,194,99,96,116,33,133,3,225,132,134,99,116,193,
+  107,96,116,162,124,162,124,97,116,3,32,116,3,32,108,130,33,108,57,223,
+  17,255,255,129,168,157,19,160,124,130,96,124,96,116,5,96,124,131,96,116,
+  97,124,114,198,43,255,255,130,179,198,161,124,11,226,124,131,225,124,226,124,
+  226,124,3,225,124,131,226,124,226,124,225,124,5,226,124,129,225,124,17,226,
+  124,130,163,124,163,124,6,163,116,4,99,116,132,162,116,225,124,225,124,226,
+  124,3,226,132,130,225,132,225,132,5,226,132,131,225,132,226,132,226,132,4,
+  225,132,130,226,132,226,132,3,226,124,130,226,132,226,132,11,225,132,130,226,
+  132,226,132,8,225,132,13,226,132,5,225,132,9,226,132,160,1,19,255,255,
+  129,111,173,7,0,99,130,1,107,1,107,3,65,107,131,66,107,171,148,249,
+  222,8,255,255,133,59,231,242,189,171,148,134,115,133,115,5,134,115,129,198,
+  123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,
+  134,37,140,37,140,101,140,233,156,241,197,58,231,7,255,255,132,124,247,237,
+  189,97,148,97,148,11,96,148,130,228,164,189,247,127,255,255,127,255,255,83,
+  255,255,142,182,206,165,132,192,99,33,108,33,108,32,108,32,108,32,116,32,
+  108,32,116,32,116,96,124,224,132,33,133,3,226,132,133,163,132,100,124,163,
+  124,163,124,98,124,3,160,124,130,96,124,96,124,3,160,124,136,162,124,161,
+  124,161,124,96,124,96,116,32,116,32,116,224,132,35,34,133,130,33,133,225,
+  132,5,226,132,144,163,132,163,124,100,124,37,124,198,115,134,115,70,107,7,
+  107,7,107,199,106,199,106,70,107,196,115,32,124,96,124,160,132,6,224,132,
+  134,161,124,131,99,130,99,194,99,97,116,33,133,3,225,132,134,99,124,193,
+  107,96,116,162,124,162,124,97,116,3,32,116,3,32,108,131,192,99,41,149,
+  254,255,16,255,255,130,122,231,226,132,9,160,124,130,96,124,96,124,5,160,
+  124,130,96,124,160,124,6,96,124,131,96,116,228,132,246,222,24,255,255,130,
+  246,214,56,223,19,255,255,130,47,182,160,116,10,226,124,129,225,124,31,226,
+  124,3,163,124,7,163,116,134,99,116,99,116,163,116,161,116,225,124,226,124,
+  3,226,132,3,225,132,3,226,132,129,225,132,3,226,132,3,225,132,138,226,
+  132,226,132,226,124,226,124,225,124,225,124,225,132,226,132,33,133,34,133,6,
+  226,132,8,225,132,133,33,133,225,132,225,132,226,132,225,132,14,226,132,5,
+  225,132,4,226,132,3,225,132,1,225,124,234,1,18,255,255,130,59,231,1,
+  99,7,0,99,134,1,107,1,107,65,107,65,107,197,123,117,206,7,255,255,
+  131,189,247,52,198,171,148,5,133,115,5,134,115,129,198,123,12,199,123,130,
+  199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,
+  3,101,140,132,100,140,42,165,116,206,189,247,6,255,255,130,56,231,39,165,
+  12,96,148,129,170,181,10,255,255,130,176,181,170,148,35,171,148,130,170,148,
+  183,214,5,255,255,130,52,198,170,148,4,171,148,130,236,156,189,247,8,255,
+  255,130,52,198,170,148,4,171,148,129,45,165,71,255,255,130,111,173,170,148,
+  3,171,148,130,170,148,178,189,127,255,255,53,255,255,132,189,247,174,173,192,
+  107,192,107,4,32,108,144,32,116,32,108,32,108,32,116,96,116,96,124,224,
+  132,226,132,226,132,225,132,226,132,163,124,100,124,163,124,100,116,98,124,3,
+  160,124,130,96,124,96,124,3,160,124,137,162,124,162,124,161,124,96,124,96,
+  116,32,116,32,116,224,132,33,133,34,34,133,130,33,133,225,132,5,226,132,
+  144,163,132,164,124,100,124,37,124,198,115,134,115,70,107,7,107,7,107,199,
+  106,199,106,70,107,196,115,32,124,96,124,160,132,6,224,132,134,225,132,131,
+  99,129,99,194,107,97,116,33,133,3,225,132,134,163,124,193,107,96,116,161,
+  124,98,124,97,124,3,32,116,3,32,108,131,33,108,192,99,116,198,17,255,
+  255,129,112,190,8,160,124,3,96,124,130,160,124,160,124,3,96,124,129,160,
+  124,5,96,124,132,96,116,32,116,105,157,123,239,24,255,255,132,178,198,225,
+  124,36,133,123,239,19,255,255,130,236,165,160,124,27,226,124,130,225,124,225,
+  124,12,226,124,3,163,124,8,163,116,136,99,116,99,116,162,116,161,124,225,
+  124,226,124,226,132,226,132,3,225,132,3,226,132,130,225,132,226,132,4,225,
+  132,137,226,132,226,132,225,124,225,124,162,124,224,124,225,132,34,133,34,133,
+  5,33,133,134,225,132,226,132,225,132,225,132,226,132,226,132,5,225,132,130,
+  33,133,225,132,16,226,132,7,225,132,129,226,132,4,225,132,130,224,124,226,
+  132,204,1,18,255,255,129,236,156,8,0,99,133,1,107,1,107,65,107,110,
+  173,189,247,6,255,255,133,58,231,111,173,198,123,68,115,132,115,5,133,115,
+  5,134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,
+  38,132,4,38,140,130,37,140,37,140,3,101,140,3,100,140,131,166,148,239,
+  189,123,239,5,255,255,130,254,255,48,198,12,96,148,129,180,222,9,255,255,
+  129,39,132,37,192,98,129,242,189,5,255,255,129,237,164,6,192,98,129,124,
+  239,8,255,255,129,45,165,5,192,98,130,67,107,254,255,70,255,255,129,198,
+  123,5,192,98,129,106,148,127,255,255,52,255,255,134,247,214,166,132,192,99,
+  32,108,32,116,33,116,4,32,108,143,32,116,32,108,32,108,32,116,96,124,
+  224,132,225,132,226,132,225,132,225,132,163,124,100,124,100,124,37,116,97,116,
+  4,160,124,129,96,124,3,160,124,3,161,124,134,96,124,96,116,32,116,32,
+  116,224,132,33,133,33,34,133,131,33,133,225,132,225,132,4,226,132,137,227,
+  132,163,124,164,124,101,124,37,124,198,115,134,115,70,107,7,107,3,199,106,
+  133,70,107,195,115,32,124,96,124,160,124,7,224,132,133,195,107,193,107,194,
+  107,97,116,34,133,3,225,132,134,162,124,194,107,96,116,161,124,162,124,98,
+  116,4,32,116,134,32,108,32,108,33,108,192,107,165,124,189,247,16,255,255,
+  130,254,255,38,149,6,160,124,14,96,124,131,96,116,96,116,237,181,24,255,
+  255,135,254,255,46,182,160,124,226,124,225,124,104,149,189,247,18,255,255,131,
+  190,247,103,149,160,124,7,226,124,3,225,124,30,226,124,4,163,124,8,163,
+  116,133,99,116,163,116,162,116,161,124,225,124,3,226,132,132,225,132,225,132,
+  226,132,226,132,5,225,132,3,226,132,135,225,124,225,124,162,124,225,124,224,
+  132,226,132,226,132,5,33,133,133,34,133,226,132,226,132,33,133,33,133,9,
+  225,132,16,226,132,6,225,132,129,226,132,4,225,132,131,224,124,35,133,246,
+  214,239,1,17,255,255,130,124,239,1,99,8,0,99,131,1,107,196,123,182,
+  214,6,255,255,130,248,222,236,156,3,68,107,130,68,115,132,115,5,133,115,
+  5,134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,
+  38,132,4,38,140,130,37,140,37,140,3,101,140,4,100,140,132,99,140,100,
+  148,173,181,58,231,5,255,255,130,247,230,228,164,10,96,148,130,228,164,189,
+  247,8,255,255,129,104,140,37,192,98,129,243,189,5,255,255,129,46,165,5,
+  192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,
+  255,50,255,255,6,189,247,14,255,255,129,39,132,5,192,98,129,171,148,127,
+  255,255,50,255,255,136,190,247,239,181,192,107,192,99,32,108,32,116,33,116,
+  33,108,7,32,108,141,33,116,96,116,224,132,225,132,226,132,226,132,225,132,
+  227,132,100,124,100,124,37,108,161,124,224,124,3,160,124,129,96,124,3,160,
+  124,3,161,124,134,96,124,96,116,96,116,32,116,224,132,33,133,32,34,133,
+  132,33,133,33,133,225,132,225,132,5,226,132,136,163,124,164,124,101,124,37,
+  116,198,115,134,115,70,107,6,107,3,199,106,133,70,107,196,115,32,124,96,
+  124,160,132,7,224,132,133,194,107,193,99,193,107,97,116,33,133,3,225,132,
+  134,162,124,33,108,96,116,161,124,162,124,98,116,4,32,116,134,32,108,32,
+  108,33,108,33,108,192,99,174,173,17,255,255,130,246,214,161,124,4,160,124,
+  130,96,124,160,124,4,96,124,129,160,124,7,96,124,131,96,116,162,124,115,
+  198,24,255,255,131,188,239,169,157,160,124,3,226,132,131,160,124,171,165,254,
+  247,18,255,255,131,122,231,36,133,225,124,6,226,124,130,225,124,225,124,31,
+  226,124,134,162,124,162,124,163,124,163,124,163,116,162,116,7,163,116,137,99,
+  116,163,116,161,116,225,124,226,124,226,132,226,132,225,132,225,132,3,226,132,
+  3,225,132,3,226,132,135,225,124,225,124,163,124,162,124,224,124,225,132,226,
+  132,6,33,133,132,226,132,227,132,33,133,33,133,6,225,132,130,33,133,225,
+  132,18,226,132,10,225,132,132,224,124,36,141,56,223,255,255,236,1,17,255,
+  255,130,178,189,192,98,8,0,99,130,170,148,124,239,5,255,255,130,248,222,
+  171,148,3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,134,115,
+  129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,
+  38,140,130,37,140,37,140,3,101,140,4,100,140,3,99,140,131,99,148,173,
+  181,122,239,4,255,255,130,188,247,105,181,10,96,148,129,48,206,8,255,255,
+  129,104,140,37,192,98,129,243,189,5,255,255,129,46,165,5,192,98,130,1,
+  99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,255,49,255,255,
+  130,249,222,67,107,4,67,115,130,67,107,183,214,13,255,255,129,39,132,5,
+  192,98,129,171,148,127,255,255,49,255,255,131,248,222,166,132,192,99,4,32,
+  108,130,33,116,33,116,4,32,108,144,192,107,32,108,32,108,32,116,96,116,
+  160,124,225,132,225,132,226,132,225,132,227,132,100,124,101,116,197,107,160,124,
+  224,132,3,160,124,129,96,124,3,160,124,3,161,124,3,96,116,131,32,116,
+  160,132,33,133,32,34,133,131,33,133,33,133,225,132,5,226,132,137,227,132,
+  163,124,164,124,101,124,37,116,198,115,134,115,70,107,7,107,3,199,106,134,
+  70,107,196,115,33,124,96,124,160,132,160,132,6,224,132,133,33,116,193,107,
+  194,107,97,116,33,133,3,225,132,134,162,124,194,107,96,116,161,124,98,124,
+  98,116,3,32,116,3,32,108,3,33,108,130,34,108,249,222,17,255,255,130,
+  236,173,96,116,4,160,124,5,96,124,129,160,124,6,96,124,131,96,116,229,
+  140,57,231,24,255,255,131,56,223,37,141,224,124,5,226,132,130,160,116,46,
+  182,19,255,255,131,55,223,226,124,225,124,5,226,124,129,225,124,31,226,124,
+  4,162,124,129,163,124,9,163,116,134,99,116,99,116,162,116,161,116,225,124,
+  226,124,4,226,132,4,225,132,3,226,132,136,224,124,225,124,163,124,162,124,
+  224,124,225,132,226,132,226,132,3,33,133,134,34,133,34,133,33,133,34,133,
+  226,132,226,132,8,225,132,19,226,132,7,225,132,135,226,132,226,132,224,124,
+  102,149,123,231,255,255,255,255,248,1,17,255,255,130,104,140,192,98,7,0,
+  99,129,176,181,5,255,255,132,59,231,236,156,66,107,66,107,3,67,107,132,
+  68,107,68,107,68,115,132,115,5,133,115,5,134,115,129,198,123,12,199,123,
+  130,199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,
+  140,3,101,140,4,100,140,3,99,140,133,98,140,98,140,99,148,239,197,189,
+  247,4,255,255,129,238,197,9,96,148,130,163,156,189,247,7,255,255,129,104,
+  140,6,192,98,129,0,99,29,1,99,130,0,99,243,197,5,255,255,129,46,
+  165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,
+  115,254,255,49,255,255,129,249,222,6,192,98,129,182,214,13,255,255,129,39,
+  132,5,192,98,129,170,148,127,255,255,47,255,255,132,254,255,240,181,193,107,
+  192,99,3,32,108,130,192,107,32,108,4,32,116,6,32,108,144,32,116,160,
+  124,224,132,225,132,226,132,226,132,227,132,164,124,38,116,196,107,160,124,224,
+  124,160,124,160,124,96,124,96,124,3,160,124,3,161,124,3,96,116,131,32,
+  116,160,132,33,133,32,34,133,130,33,133,225,132,6,226,132,137,163,132,163,
+  124,100,124,101,124,37,116,134,115,70,107,71,107,7,107,3,199,106,134,70,
+  107,132,115,33,124,96,124,160,124,160,132,6,224,132,133,33,116,193,107,194,
+  107,97,116,33,133,3,225,132,135,162,124,194,107,32,116,161,124,162,124,98,
+  116,33,116,3,32,116,3,32,108,132,33,108,33,108,32,108,41,149,17,255,
+  255,131,189,247,228,140,96,124,3,160,124,4,96,124,3,160,124,3,96,124,
+  132,96,116,96,116,105,157,188,247,24,255,255,131,179,206,226,132,224,124,7,
+  226,132,130,224,124,178,198,19,255,255,130,179,198,160,124,3,226,124,3,225,
+  124,3,226,124,129,225,124,27,226,124,4,162,124,3,163,124,7,163,116,3,
+  99,116,132,162,116,161,124,226,124,226,124,3,226,132,3,225,132,3,226,132,
+  134,225,124,225,124,163,124,163,124,224,124,225,132,3,226,132,129,34,133,5,
+  33,133,4,226,132,9,225,132,17,226,132,4,225,132,135,226,132,225,132,226,
+  132,164,124,160,124,103,149,188,239,3,255,255,24,2,16,255,255,131,189,247,
+  67,107,192,98,5,0,99,130,65,107,52,198,4,255,255,131,190,247,176,181,
+  131,115,3,66,107,3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,
+  5,134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,
+  38,132,4,38,140,130,37,140,37,140,3,101,140,4,100,140,3,99,140,134,
+  98,140,98,140,98,148,97,148,228,156,180,214,4,255,255,129,114,206,9,96,
+  148,129,180,214,7,255,255,129,104,140,6,192,98,130,176,181,59,231,29,58,
+  231,129,189,247,5,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,
+  255,129,46,165,5,192,98,130,132,115,254,255,49,255,255,129,249,222,6,192,
+  98,129,183,214,13,255,255,129,106,148,5,67,107,129,237,156,127,255,255,46,
+  255,255,136,57,223,166,132,192,99,192,107,192,107,32,108,32,116,32,116,3,
+  32,108,132,96,116,96,116,32,116,32,116,4,32,108,133,33,108,32,108,96,
+  124,224,132,225,132,3,226,132,131,164,124,38,116,196,107,4,160,124,130,96,
+  124,96,124,3,160,124,131,161,124,162,116,98,116,3,96,116,131,32,116,160,
+  124,33,133,31,34,133,131,33,133,225,132,225,132,6,226,132,146,163,132,163,
+  124,100,124,101,124,197,115,134,115,70,107,6,107,199,106,199,106,199,98,199,
+  106,6,107,132,115,33,116,96,124,160,124,160,132,6,224,132,133,33,116,193,
+  99,194,107,33,116,33,133,3,225,132,137,162,132,33,116,96,116,161,124,162,
+  124,98,116,33,116,32,116,32,116,4,32,108,133,33,108,33,116,97,116,32,
+  108,114,190,17,255,255,130,180,206,96,116,4,160,124,3,96,124,136,160,124,
+  160,124,96,124,96,124,160,124,96,116,96,116,48,190,25,255,255,133,46,182,
+  224,124,225,124,225,132,225,132,6,226,132,131,225,124,225,124,245,206,19,255,
+  255,134,47,182,160,116,226,124,225,124,226,124,225,124,3,226,124,129,225,124,
+  27,226,124,132,162,124,163,124,162,124,162,124,4,163,124,7,163,116,4,99,
+  116,135,162,116,162,124,226,124,226,124,226,132,226,132,225,132,3,226,132,135,
+  225,132,225,124,226,124,163,124,163,124,161,124,224,124,4,226,132,6,33,133,
+  13,225,132,18,226,132,137,227,124,226,132,163,124,227,124,226,132,163,124,160,
+  124,234,165,190,247,4,255,255,29,2,16,255,255,131,58,231,0,99,192,98,
+  4,0,99,130,67,115,183,214,4,255,255,131,183,214,38,132,65,107,4,66,
+  107,3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,134,115,129,
+  198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,38,
+  140,130,37,140,37,140,3,101,140,4,100,140,3,99,140,136,98,140,98,140,
+  98,148,97,148,97,148,96,148,106,181,123,239,3,255,255,129,180,214,8,96,
+  148,129,105,181,7,255,255,129,104,140,6,192,98,129,52,198,36,255,255,129,
+  46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,
+  132,115,254,255,49,255,255,129,249,222,6,192,98,129,183,214,13,255,255,130,
+  190,247,189,247,3,190,247,130,189,247,190,247,127,255,255,45,255,255,131,240,
+  181,33,108,192,99,4,32,108,134,32,116,32,108,32,108,192,107,32,108,32,
+  108,3,32,116,6,32,108,138,33,116,160,124,224,132,225,132,225,132,226,132,
+  163,132,38,116,197,107,97,124,3,160,124,129,96,124,4,160,124,137,161,124,
+  162,116,97,116,97,116,96,116,96,116,32,116,160,124,33,133,30,34,133,132,
+  33,133,33,133,225,132,225,132,6,226,132,146,163,132,163,124,100,124,37,124,
+  197,115,134,115,70,107,7,107,199,106,199,106,199,98,199,98,6,107,133,115,
+  194,115,32,124,160,124,160,132,6,224,132,133,97,116,194,107,194,99,33,116,
+  33,133,3,225,132,137,226,132,34,116,96,116,161,124,162,124,98,116,33,116,
+  32,116,32,116,4,32,108,134,33,108,34,116,97,116,97,116,163,132,188,239,
+  17,255,255,130,170,165,96,116,4,160,124,129,96,124,5,160,124,131,96,116,
+  162,132,245,214,24,255,255,131,188,239,169,157,224,124,6,225,132,5,226,132,
+  131,225,124,35,133,122,231,18,255,255,131,254,255,170,165,160,124,5,226,124,
+  130,225,124,225,124,22,226,124,5,162,124,129,163,124,4,162,124,132,163,124,
+  163,124,162,124,163,124,6,163,116,4,99,116,132,162,116,162,116,161,124,225,
+  124,5,226,132,140,225,132,224,124,162,124,163,124,163,124,161,124,224,124,226,
+  132,225,132,225,132,226,132,226,132,6,33,133,10,225,132,130,226,132,225,132,
+  15,226,132,139,227,124,225,132,225,132,163,124,226,132,227,124,226,124,226,132,
+  226,124,160,124,236,173,6,255,255,38,2,16,255,255,131,184,214,192,98,192,
+  98,3,0,99,130,132,115,249,222,3,255,255,130,190,247,110,173,3,65,107,
+  4,66,107,3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,134,
+  115,129,198,123,3,199,123,146,40,132,106,140,237,156,111,173,178,181,52,198,
+  118,206,183,214,248,222,249,222,249,222,184,214,53,206,178,189,111,173,237,156,
+  170,148,104,140,4,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,
+  3,101,140,4,100,140,3,99,140,137,98,140,98,140,98,148,97,148,97,148,
+  96,148,96,148,163,156,181,222,3,255,255,129,180,222,7,96,148,130,162,156,
+  188,247,6,255,255,129,104,140,6,192,98,129,243,197,36,255,255,129,46,165,
+  5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,
+  254,255,49,255,255,129,249,222,6,192,98,129,183,214,127,255,255,63,255,255,
+  132,58,231,232,140,192,99,192,107,9,32,108,134,192,107,32,108,96,116,96,
+  116,32,116,32,116,3,32,108,3,32,116,129,160,124,3,225,132,136,226,132,
+  227,132,101,124,198,107,34,116,160,124,160,124,96,124,5,160,124,137,161,116,
+  161,124,162,116,98,116,34,108,34,108,33,108,160,124,33,133,30,34,133,3,
+  33,133,129,225,132,6,226,132,137,163,132,163,124,100,124,37,124,197,115,134,
+  115,70,107,7,107,199,106,3,199,98,134,6,107,69,115,194,115,32,124,96,
+  124,160,132,6,224,132,133,97,116,193,107,194,107,34,116,33,133,3,225,132,
+  137,226,132,33,116,32,108,161,124,162,124,98,124,33,116,32,116,32,116,4,
+  32,108,134,33,108,34,116,97,116,97,116,96,116,172,165,17,255,255,130,122,
+  231,162,124,9,160,124,131,96,116,38,149,122,231,24,255,255,131,57,231,101,
+  141,224,124,7,225,132,6,226,132,131,225,124,38,141,188,239,18,255,255,131,
+  188,239,37,141,160,124,11,226,124,132,225,124,226,124,225,124,225,124,11,226,
+  124,6,162,124,129,226,124,4,162,124,6,163,124,6,163,116,4,99,116,132,
+  162,116,224,124,225,124,225,132,4,226,132,137,224,124,162,124,163,124,163,124,
+  162,124,224,124,226,132,225,132,225,132,4,226,132,130,34,133,226,132,3,33,
+  133,10,225,132,12,226,132,131,225,132,227,124,226,124,3,226,132,137,225,132,
+  163,124,226,124,226,132,227,124,226,132,163,124,224,124,47,182,7,255,255,31,
+  2,16,255,255,135,183,214,192,98,192,98,0,99,0,99,132,115,58,231,3,
+  255,255,131,57,231,39,132,1,107,3,65,107,4,66,107,3,67,107,132,68,
+  107,68,107,68,115,132,115,5,133,115,4,134,115,135,40,132,172,148,113,181,
+  117,206,249,222,124,239,254,255,14,255,255,136,254,255,125,239,58,231,118,214,
+  242,189,45,165,169,148,38,132,4,38,140,130,37,140,37,140,3,101,140,4,
+  100,140,3,99,140,133,98,140,98,140,98,148,97,148,97,148,4,96,148,129,
+  238,197,3,255,255,129,180,214,7,96,148,129,246,222,6,255,255,129,104,140,
+  6,192,98,129,243,197,36,255,255,129,46,165,5,192,98,130,1,99,124,239,
+  8,255,255,129,46,165,5,192,98,130,132,115,254,255,49,255,255,129,249,222,
+  6,192,98,129,183,214,127,255,255,62,255,255,135,240,181,34,108,128,99,192,
+  107,32,108,32,108,192,107,7,32,108,130,192,107,32,108,3,96,116,129,33,
+  116,3,32,108,3,32,116,130,160,124,224,132,3,33,133,135,226,132,164,124,
+  198,107,197,107,96,116,160,124,96,124,5,160,124,137,161,116,161,124,161,124,
+  99,116,195,107,195,107,194,107,96,124,225,132,30,34,133,129,33,133,3,225,
+  132,5,226,132,138,227,132,163,132,163,124,100,124,37,124,197,115,134,115,70,
+  107,7,107,199,106,3,199,98,134,199,106,69,107,195,115,32,124,96,124,160,
+  124,6,224,132,145,97,116,194,107,194,107,33,108,33,133,226,132,225,132,225,
+  132,226,132,33,116,32,108,161,124,162,124,98,124,33,116,32,116,32,116,4,
+  32,108,135,34,108,34,116,97,116,97,116,162,124,161,124,246,214,17,255,255,
+  130,114,198,96,116,7,160,124,131,96,116,236,173,189,247,24,255,255,131,179,
+  198,35,133,225,124,8,225,132,3,226,132,129,225,132,3,226,132,131,160,124,
+  168,157,254,247,18,255,255,131,57,231,227,132,225,124,15,226,124,132,225,124,
+  226,124,226,124,225,124,5,226,124,6,162,124,6,226,124,129,162,124,5,163,
+  124,6,163,116,4,99,116,131,160,116,224,124,225,124,3,226,132,140,225,132,
+  224,124,162,116,163,116,163,116,162,116,224,124,225,132,225,132,33,133,33,133,
+  226,132,8,33,133,11,225,132,10,226,132,3,226,124,140,226,132,227,124,225,
+  132,226,132,163,124,226,124,227,124,226,124,226,132,162,124,225,124,178,198,8,
+  255,255,57,2,16,255,255,134,184,214,192,98,192,98,0,99,131,115,58,231,
+  3,255,255,132,52,198,66,107,1,107,1,107,3,65,107,4,66,107,3,67,
+  107,132,68,107,68,107,68,115,132,115,5,133,115,133,199,123,172,148,242,189,
+  248,222,189,247,26,255,255,136,190,247,59,231,117,206,175,181,234,156,38,140,
+  37,140,37,140,3,101,140,4,100,140,3,99,140,133,98,140,98,140,98,148,
+  97,148,97,148,5,96,148,133,105,181,189,247,255,255,255,255,114,206,6,96,
+  148,129,113,206,6,255,255,129,104,140,6,192,98,129,243,197,36,255,255,129,
+  46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,
+  132,115,254,255,49,255,255,129,249,222,6,192,98,129,183,214,127,255,255,60,
+  255,255,133,58,223,232,140,128,99,192,99,193,107,10,32,108,153,192,107,32,
+  108,32,108,96,116,96,116,97,116,33,116,32,108,32,108,192,107,32,108,96,
+  116,32,116,96,124,224,132,34,133,33,133,33,133,226,132,164,124,38,108,134,
+  99,98,116,160,124,96,124,6,160,124,136,161,124,160,124,98,116,196,107,194,
+  107,194,107,96,116,224,132,29,34,133,132,33,133,33,133,225,132,225,132,7,
+  226,132,147,163,132,164,124,100,124,37,124,197,115,134,115,70,107,7,107,199,
+  106,199,106,199,98,199,98,199,106,70,107,131,115,32,116,96,124,160,124,160,
+  132,5,224,132,133,96,116,194,107,194,107,33,108,33,133,3,225,132,138,226,
+  132,34,116,32,116,161,124,162,124,98,124,33,116,32,116,32,108,32,116,3,
+  32,108,136,34,108,34,116,97,116,97,124,162,124,161,116,37,141,254,247,16,
+  255,255,131,254,255,104,157,96,116,4,160,124,131,96,116,161,124,114,198,25,
+  255,255,131,47,182,224,124,225,124,4,226,132,6,225,132,7,226,132,130,160,
+  124,236,173,19,255,255,131,246,214,161,124,225,124,9,226,124,131,225,124,226,
+  124,225,124,4,226,124,129,225,124,5,226,124,6,162,124,8,226,124,134,162,
+  124,163,124,163,124,162,124,163,124,163,124,6,163,116,133,99,116,162,116,160,
+  116,224,124,225,124,3,226,132,140,225,124,224,124,162,116,163,116,163,116,162,
+  116,224,124,225,132,226,132,33,133,225,132,225,132,7,33,133,131,225,132,225,
+  132,33,133,10,225,132,5,226,132,147,225,132,226,132,226,132,227,124,226,124,
+  226,132,226,132,226,124,227,124,226,132,225,132,163,124,226,132,227,124,226,124,
+  225,132,162,124,226,132,244,206,9,255,255,62,2,16,255,255,133,58,231,0,
+  99,192,98,66,107,249,222,3,255,255,133,110,173,0,99,0,99,1,107,1,
+  107,3,65,107,4,66,107,3,67,107,138,68,107,68,107,68,115,132,115,133,
+  115,133,115,199,123,237,156,117,206,124,239,35,255,255,134,59,239,116,206,109,
+  173,103,148,101,140,101,140,4,100,140,3,99,140,133,98,140,98,140,98,148,
+  97,148,97,148,6,96,148,133,38,165,123,239,255,255,255,255,238,197,5,96,
+  148,129,236,189,6,255,255,129,104,140,6,192,98,129,243,197,36,255,255,129,
+  46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,
+  132,115,254,255,49,255,255,129,58,231,6,192,98,129,184,214,38,255,255,141,
+  123,239,183,214,52,198,178,189,112,181,111,173,111,173,176,181,177,181,52,198,
+  183,214,59,231,190,247,127,255,255,7,255,255,135,254,255,241,181,34,108,128,
+  99,193,107,193,107,192,107,10,32,108,136,192,107,32,108,32,108,32,116,96,
+  116,96,116,33,116,33,116,3,32,108,143,32,116,32,116,96,116,224,132,34,
+  133,34,133,33,133,226,132,227,132,101,116,198,99,36,108,160,124,96,124,96,
+  124,5,160,124,137,161,124,161,124,162,116,35,108,195,107,194,107,32,116,224,
+  132,33,133,28,34,133,129,33,133,3,225,132,7,226,132,137,163,132,164,124,
+  100,124,37,124,197,115,134,115,70,107,7,107,199,106,3,199,98,135,199,106,
+  6,107,132,115,193,115,96,124,160,124,160,132,5,224,132,143,97,124,34,108,
+  194,107,34,108,33,133,226,132,225,132,225,132,226,132,34,116,32,116,161,124,
+  162,124,99,124,33,116,3,32,116,3,32,108,136,33,116,34,116,98,116,97,
+  124,162,124,162,124,160,116,112,190,17,255,255,130,58,231,161,124,3,160,124,
+  131,96,116,37,141,247,222,24,255,255,132,123,239,169,165,224,124,225,132,4,
+  226,132,7,225,132,5,226,132,3,227,124,130,162,116,114,190,19,255,255,130,
+  113,190,160,116,7,226,124,130,225,124,225,124,13,226,124,3,162,124,12,226,
+  124,133,162,124,163,124,162,124,163,124,163,124,6,163,116,132,162,116,224,124,
+  225,124,226,124,3,226,132,137,226,124,224,124,162,116,99,116,99,116,162,116,
+  224,124,225,132,226,132,3,33,133,3,226,132,130,33,133,33,133,4,225,132,
+  131,226,132,33,133,33,133,6,225,132,12,226,132,142,226,124,227,124,226,132,
+  227,124,226,132,225,132,227,124,226,132,227,124,226,124,226,124,161,124,35,141,
+  246,222,10,255,255,112,2,16,255,255,136,190,247,66,107,0,99,182,214,255,
+  255,255,255,190,247,170,148,3,0,99,130,1,107,1,107,3,65,107,4,66,
+  107,3,67,107,135,68,107,68,107,68,115,132,115,171,148,52,198,124,239,41,
+  255,255,132,189,247,182,214,109,173,102,148,3,100,140,3,99,140,133,98,140,
+  98,140,98,148,97,148,97,148,7,96,148,133,228,164,122,239,255,255,255,255,
+  105,181,4,96,148,129,170,181,6,255,255,129,104,140,6,192,98,129,243,197,
+  36,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,
+  5,192,98,130,132,115,254,255,8,255,255,130,177,181,170,148,4,171,148,130,
+  45,165,254,255,16,255,255,129,58,231,6,171,148,129,58,231,4,255,255,130,
+  183,214,170,148,3,171,148,129,105,140,6,192,98,129,40,132,4,171,148,130,
+  170,148,117,206,7,255,255,129,111,173,4,171,148,130,170,148,178,189,14,255,
+  255,133,189,247,53,198,171,156,133,115,1,99,10,192,98,133,0,99,132,115,
+  170,148,243,197,189,247,127,255,255,3,255,255,132,57,223,232,140,128,99,192,
+  99,3,193,107,14,32,108,139,32,116,32,116,96,116,97,116,33,116,32,108,
+  32,116,32,116,32,108,32,116,160,124,4,33,133,136,225,132,227,132,165,124,
+  198,107,197,107,160,124,160,124,96,124,5,160,124,137,161,124,161,124,162,124,
+  35,116,195,107,194,107,32,116,224,132,33,133,27,34,133,3,33,133,130,225,
+  132,225,132,7,226,132,137,163,132,164,124,100,124,37,124,197,115,134,115,70,
+  107,7,107,199,106,4,199,98,134,6,107,132,115,193,115,32,124,96,124,160,
+  132,5,224,132,129,161,124,3,194,107,141,225,132,226,132,225,132,225,132,226,
+  132,98,116,32,116,161,124,162,124,99,124,33,116,32,116,32,116,3,32,108,
+  138,33,108,34,116,98,116,98,116,161,124,162,124,162,124,161,124,225,124,122,
+  231,17,255,255,134,48,190,96,116,160,124,96,116,170,165,188,239,24,255,255,
+  132,56,223,36,141,224,124,225,132,5,226,132,4,225,132,142,226,132,225,132,
+  225,132,226,132,228,124,228,124,165,124,165,124,166,116,166,124,166,124,165,116,
+  164,116,182,206,19,255,255,132,171,165,160,116,225,124,225,124,3,226,124,130,
+  225,124,225,124,30,226,124,3,163,124,129,162,124,5,163,116,131,161,116,224,
+  124,225,124,4,226,132,131,225,124,224,124,162,116,3,99,116,136,224,124,225,
+  132,34,133,33,133,33,133,226,132,33,133,33,133,3,226,132,129,33,133,3,
+  225,132,131,33,133,225,132,226,132,6,225,132,9,226,132,129,226,124,4,226,
+  132,140,226,124,227,124,225,132,226,132,227,124,226,132,226,132,226,124,226,132,
+  161,124,37,141,57,231,11,255,255,103,2,15,255,255,136,246,222,188,247,199,
+  123,242,189,255,255,255,255,124,239,39,132,4,0,99,130,1,107,1,107,3,
+  65,107,4,66,107,3,67,107,132,68,107,198,123,111,173,250,222,13,255,255,
+  137,189,247,59,231,184,214,118,206,244,189,178,181,112,173,111,173,47,165,3,
+  46,165,137,47,173,112,173,177,181,242,189,53,206,184,222,58,231,124,239,254,
+  255,13,255,255,132,124,239,115,206,233,164,100,140,3,99,140,133,98,140,98,
+  140,98,148,97,148,97,148,8,96,148,133,228,156,123,239,255,255,188,247,228,
+  164,3,96,148,129,170,181,6,255,255,129,104,140,6,192,98,129,243,197,36,
+  255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,
+  192,98,130,132,115,254,255,8,255,255,129,105,140,5,192,98,130,66,107,190,
+  247,16,255,255,129,183,214,6,192,98,129,183,214,4,255,255,129,178,189,17,
+  192,98,129,111,173,7,255,255,129,198,123,5,192,98,129,106,148,12,255,255,
+  131,190,247,112,181,67,115,18,192,98,131,67,107,112,181,190,247,127,255,255,
+  132,49,190,34,108,192,99,192,107,4,193,107,13,32,108,133,32,116,32,116,
+  96,116,96,116,33,116,5,32,116,142,96,116,225,132,33,133,225,132,33,133,
+  33,133,225,132,226,132,164,124,37,116,197,107,160,124,160,124,96,124,5,160,
+  124,137,161,124,161,124,162,116,35,116,196,107,194,107,32,116,224,132,33,133,
+  27,34,133,129,33,133,4,225,132,3,226,132,141,225,132,226,132,226,132,227,
+  132,163,124,164,124,101,124,37,124,198,115,134,115,70,107,7,107,199,106,4,
+  199,98,134,6,107,133,115,194,115,32,124,96,124,160,132,5,224,132,143,161,
+  124,34,108,195,107,194,107,225,132,226,132,225,132,225,132,226,132,98,116,32,
+  116,161,124,162,124,98,124,33,116,3,32,116,140,32,108,32,108,33,116,34,
+  116,98,116,98,116,162,124,162,124,161,124,161,124,160,124,168,157,17,255,255,
+  132,254,255,38,149,96,116,47,182,25,255,255,134,179,206,226,132,225,124,227,
+  132,227,124,227,124,3,228,124,130,227,124,227,132,4,226,132,131,227,124,228,
+  124,165,124,8,166,116,131,165,116,166,124,58,231,18,255,255,131,190,247,102,
+  149,160,124,5,225,124,31,226,124,129,163,124,4,162,124,134,163,116,163,116,
+  162,116,161,116,224,124,225,124,4,226,132,131,225,124,224,124,162,116,3,99,
+  116,138,161,116,225,132,226,132,33,133,33,133,226,132,226,132,33,133,33,133,
+  225,132,3,33,133,129,226,132,13,225,132,10,226,132,141,227,124,226,124,227,
+  124,225,132,226,132,227,124,226,132,227,124,226,132,226,132,160,124,102,149,123,
+  239,12,255,255,86,2,15,255,255,135,237,189,48,206,58,231,255,255,255,255,
+  124,239,198,123,5,0,99,130,1,107,1,107,3,65,107,4,66,107,133,67,
+  107,67,107,199,123,242,189,125,239,10,255,255,134,123,239,183,214,178,189,46,
+  165,107,140,40,132,9,199,123,130,199,131,199,131,7,39,132,135,104,140,170,
+  148,45,165,176,181,116,206,249,222,188,247,11,255,255,137,248,222,108,181,100,
+  148,99,140,98,140,98,140,98,148,97,148,97,148,9,96,148,132,229,164,188,
+  247,255,255,55,231,3,96,148,129,106,181,6,255,255,129,104,140,6,192,98,
+  129,243,197,36,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,
+  129,46,165,5,192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,
+  130,132,115,190,247,16,255,255,129,248,222,6,192,98,129,184,214,4,255,255,
+  129,242,189,17,192,98,129,112,181,7,255,255,129,39,132,5,192,98,129,171,
+  148,11,255,255,130,249,222,197,123,22,192,98,130,198,123,249,222,124,255,255,
+  134,57,223,41,149,192,99,192,107,32,108,32,108,4,193,107,13,32,108,130,
+  32,116,32,116,3,96,116,148,32,116,96,116,96,116,32,116,96,116,160,124,
+  33,133,33,133,225,132,225,132,33,133,33,133,226,132,164,124,37,124,37,116,
+  97,124,160,124,96,124,96,124,5,160,124,136,161,116,161,116,162,116,98,116,
+  34,108,192,107,160,124,33,133,27,34,133,129,33,133,3,225,132,4,226,132,
+  129,225,132,3,226,132,138,163,124,164,124,101,124,37,116,198,115,134,115,70,
+  107,7,107,199,106,199,106,3,199,98,135,6,107,69,107,194,115,32,124,96,
+  124,160,124,160,132,4,224,132,134,161,124,34,108,195,107,34,108,225,132,226,
+  132,3,225,132,134,98,124,32,116,161,124,162,124,98,124,33,116,3,32,116,
+  141,32,108,33,108,33,116,34,116,98,116,98,124,162,124,162,124,161,124,225,
+  124,225,132,160,124,179,206,17,255,255,130,57,223,180,206,24,255,255,133,254,
+  247,47,182,161,124,227,124,229,124,9,165,124,132,229,124,228,124,228,124,165,
+  124,5,166,116,129,102,116,5,166,116,131,164,116,40,141,188,239,18,255,255,
+  132,122,231,227,132,160,124,225,124,35,226,124,3,162,124,134,163,124,163,116,
+  162,116,224,124,224,124,226,124,4,226,132,139,225,124,224,124,163,116,100,116,
+  99,116,99,116,161,116,224,132,226,132,226,132,34,133,3,226,132,131,33,133,
+  33,133,226,132,3,33,133,129,226,132,14,225,132,8,226,132,132,226,124,226,
+  132,226,124,225,132,4,226,132,133,226,124,226,132,161,116,168,157,188,247,13,
+  255,255,98,2,15,255,255,134,171,181,227,156,255,255,255,255,58,231,197,123,
+  6,0,99,130,1,107,1,107,3,65,107,4,66,107,131,39,132,243,189,189,
+  247,8,255,255,135,124,239,118,206,111,173,106,140,199,123,134,115,198,123,12,
+  199,123,130,199,131,199,131,11,39,132,135,38,132,38,132,103,140,235,156,176,
+  181,182,214,123,239,9,255,255,135,58,231,173,189,99,148,98,140,98,148,97,
+  148,97,148,10,96,148,135,104,173,254,255,255,255,47,198,96,148,96,148,171,
+  189,6,255,255,129,104,140,6,192,98,129,243,197,36,255,255,129,46,165,5,
+  192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,
+  255,8,255,255,129,170,148,5,192,98,130,132,115,190,247,16,255,255,129,248,
+  222,6,192,98,129,184,214,4,255,255,129,178,181,17,192,98,129,111,173,7,
+  255,255,129,39,132,5,192,98,129,171,148,10,255,255,130,249,222,66,107,7,
+  192,98,137,132,115,104,140,236,156,237,164,45,165,236,156,170,148,40,132,132,
+  115,8,192,98,130,67,107,58,231,122,255,255,139,49,190,33,108,192,99,32,
+  108,32,108,193,107,33,108,32,108,33,108,193,107,193,107,13,32,108,3,32,
+  116,131,96,116,96,116,96,124,3,96,116,130,160,124,225,132,5,33,133,137,
+  225,132,226,132,163,124,37,124,100,124,98,124,160,124,160,124,96,124,5,160,
+  124,136,96,116,160,116,160,124,96,116,33,116,32,108,160,124,32,133,26,34,
+  133,130,33,133,33,133,4,225,132,3,226,132,129,225,132,3,226,132,138,163,
+  124,164,124,100,124,37,116,198,115,134,107,70,107,7,107,199,106,199,106,3,
+  199,98,145,199,106,70,107,131,115,32,116,96,124,96,124,160,132,224,132,160,
+  132,224,132,224,132,161,124,34,108,195,107,34,108,225,132,226,132,3,225,132,
+  134,98,124,32,116,161,116,162,124,99,124,34,116,3,32,116,142,32,108,33,
+  108,33,116,34,116,98,116,98,124,162,124,162,124,161,124,225,124,225,132,224,
+  124,227,132,123,239,41,255,255,133,124,239,106,149,163,116,165,124,165,124,3,
+  166,124,10,165,124,6,166,116,130,102,116,103,116,4,166,116,132,165,124,163,
+  116,107,157,190,247,18,255,255,133,246,214,161,124,225,124,226,124,225,124,20,
+  226,124,129,225,124,12,226,124,4,162,124,131,161,124,224,124,225,124,5,226,
+  132,131,225,124,224,124,162,116,3,163,116,130,160,124,225,132,3,226,132,3,
+  33,133,131,225,132,33,133,34,133,3,226,132,13,225,132,8,226,132,143,226,
+  124,226,132,227,124,226,132,226,132,225,132,226,132,227,124,225,132,226,132,226,
+  132,226,124,160,124,235,173,254,255,14,255,255,108,2,15,255,255,133,170,181,
+  96,148,113,206,255,255,51,198,7,0,99,130,1,107,1,107,3,65,107,133,
+  66,107,66,107,133,123,242,189,189,247,7,255,255,132,124,239,52,198,172,148,
+  198,123,5,134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,
+  38,132,38,132,4,38,140,133,102,140,234,164,241,197,57,231,254,255,7,255,
+  255,133,58,239,172,181,98,148,97,148,97,148,11,96,148,134,237,197,255,255,
+  254,255,38,173,96,148,238,197,6,255,255,129,104,140,6,192,98,129,243,197,
+  36,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,
+  5,192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,
+  190,247,16,255,255,129,248,222,6,192,98,129,184,214,4,255,255,134,249,222,
+  177,181,178,189,178,189,242,189,46,165,6,192,98,130,237,164,242,189,3,178,
+  189,130,177,181,248,222,7,255,255,129,39,132,5,192,98,129,171,148,9,255,
+  255,130,189,247,132,115,6,192,98,131,105,140,183,214,190,247,7,255,255,132,
+  190,247,249,222,112,173,67,107,6,192,98,129,39,132,120,255,255,130,58,231,
+  232,140,6,32,108,130,33,108,32,108,4,33,108,12,32,108,3,32,116,129,
+  33,116,4,96,116,129,160,124,8,225,132,133,226,132,227,132,101,124,100,124,
+  99,124,7,160,124,132,160,116,96,116,161,116,97,116,3,96,116,130,160,124,
+  224,132,26,34,133,129,33,133,4,225,132,4,226,132,129,225,132,3,226,132,
+  137,163,124,164,124,100,124,37,116,198,115,70,107,70,107,7,107,199,106,4,
+  199,98,135,199,106,70,107,133,115,194,115,32,124,96,124,96,124,4,160,132,
+  133,161,124,34,108,195,107,33,108,224,132,4,225,132,134,98,116,32,108,161,
+  116,162,124,98,124,34,116,3,32,116,142,32,108,33,108,34,116,34,116,98,
+  116,98,124,162,124,162,124,161,124,225,132,225,132,224,132,160,124,236,173,40,
+  255,255,131,248,214,231,132,164,116,4,165,124,139,166,124,166,116,166,116,166,
+  124,166,116,165,124,165,124,166,116,165,116,165,124,165,124,6,166,116,131,102,
+  116,103,116,103,116,3,166,116,133,166,124,165,124,165,124,163,116,239,173,19,
+  255,255,131,113,190,160,116,225,124,35,226,124,133,163,124,162,124,161,124,224,
+  124,225,124,5,226,132,149,226,124,225,124,162,116,163,116,163,116,162,116,224,
+  124,225,132,226,132,34,133,33,133,225,132,33,133,33,133,225,132,33,133,226,
+  132,226,132,33,133,226,132,33,133,9,225,132,134,33,133,225,132,225,132,226,
+  132,225,132,225,132,5,226,132,129,226,124,6,226,132,135,227,124,226,132,226,
+  132,225,132,226,124,161,124,46,182,16,255,255,68,2,15,255,255,134,105,181,
+  96,148,162,156,188,247,255,255,177,181,6,0,99,130,1,107,1,107,3,65,
+  107,131,66,107,110,173,124,239,6,255,255,132,190,247,118,206,237,156,134,115,
+  3,133,115,5,134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,
+  130,38,132,38,132,4,38,140,135,37,140,37,140,101,140,101,140,233,156,240,
+  189,57,231,7,255,255,131,56,231,40,173,97,148,12,96,148,133,246,222,255,
+  255,56,231,96,148,179,214,6,255,255,129,104,140,6,192,98,129,52,198,36,
+  255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,
+  192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,
+  247,16,255,255,129,248,222,6,192,98,129,184,214,9,255,255,129,58,231,6,
+  192,98,129,248,222,13,255,255,129,39,132,5,192,98,129,171,148,9,255,255,
+  129,112,173,6,192,98,129,112,173,13,255,255,130,124,239,39,132,6,192,98,
+  129,183,214,118,255,255,131,49,190,34,108,192,99,7,32,108,3,33,108,130,
+  32,108,33,108,3,32,108,129,32,116,5,32,108,7,32,116,133,33,108,33,
+  108,96,116,160,124,224,124,3,225,132,139,226,132,226,132,225,132,225,132,226,
+  132,225,132,226,132,100,124,100,124,163,124,98,124,6,160,124,138,160,116,160,
+  116,97,116,98,116,97,116,96,116,96,116,96,124,224,132,33,133,24,34,133,
+  130,33,133,33,133,3,225,132,9,226,132,138,163,124,164,124,100,124,37,116,
+  198,115,70,107,71,107,7,107,199,106,199,106,3,199,98,134,199,106,6,107,
+  70,107,132,115,194,115,32,124,3,96,124,3,160,124,131,34,116,195,107,34,
+  108,5,225,132,146,99,116,32,108,160,124,162,124,98,124,35,116,33,108,32,
+  116,32,116,32,108,33,108,33,116,34,116,98,116,98,124,162,124,162,124,161,
+  124,3,224,132,131,225,132,160,124,245,214,38,255,255,131,117,198,166,116,165,
+  116,3,166,124,137,165,124,165,124,166,124,165,124,165,124,166,116,166,116,165,
+  124,165,124,9,166,116,129,102,116,4,103,116,3,166,116,133,166,124,165,124,
+  165,124,163,116,180,198,19,255,255,130,171,165,160,116,34,226,124,130,162,124,
+  162,124,3,225,124,5,226,132,140,225,124,225,124,162,124,163,116,163,116,162,
+  116,224,124,225,132,226,132,33,133,33,133,34,133,3,226,132,3,33,133,132,
+  226,132,225,132,225,132,33,133,14,225,132,12,226,132,135,227,124,226,132,227,
+  124,226,132,226,124,161,124,112,190,17,255,255,95,2,15,255,255,135,106,181,
+  96,148,96,148,170,181,255,255,255,255,176,181,5,0,99,134,1,107,1,107,
+  65,107,65,107,105,140,249,222,6,255,255,132,124,239,242,189,40,132,132,115,
+  5,133,115,5,134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,
+  130,38,132,38,132,4,38,140,130,37,140,37,140,3,101,140,133,100,140,100,
+  140,233,164,115,206,124,247,6,255,255,130,114,206,163,156,11,96,148,133,228,
+  164,189,247,255,255,237,189,247,230,6,255,255,129,104,140,6,192,98,130,236,
+  156,52,198,26,243,197,130,52,198,190,247,7,255,255,129,46,165,5,192,98,
+  130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,255,8,
+  255,255,129,170,148,5,192,98,130,132,115,190,247,16,255,255,129,248,222,6,
+  192,98,129,184,214,9,255,255,129,249,222,6,192,98,129,183,214,13,255,255,
+  129,39,132,5,192,98,129,171,148,8,255,255,130,190,247,132,115,5,192,98,
+  129,171,156,15,255,255,130,123,239,66,107,5,192,98,129,111,173,116,255,255,
+  132,57,223,232,140,192,99,192,107,8,32,108,3,33,108,5,32,108,129,96,
+  116,4,32,108,5,32,116,3,96,116,135,34,116,34,108,97,116,160,124,224,
+  132,225,132,225,132,5,226,132,3,225,132,136,163,132,37,124,163,124,100,116,
+  160,124,224,124,160,124,96,124,3,160,124,137,96,116,160,116,97,116,97,116,
+  160,116,160,124,160,124,224,132,33,133,23,34,133,130,33,133,33,133,3,225,
+  132,10,226,132,138,163,124,164,124,100,124,37,116,198,115,70,107,7,107,7,
+  107,199,106,199,106,3,199,98,135,199,106,7,107,70,107,133,115,196,115,194,
+  115,33,124,4,96,124,132,160,124,34,116,195,107,194,107,5,225,132,153,99,
+  116,33,108,160,116,162,124,162,124,35,116,194,107,32,116,32,116,32,108,33,
+  108,33,116,34,116,98,116,98,124,162,124,161,124,161,124,225,124,224,132,224,
+  132,225,132,225,124,36,141,188,239,35,255,255,134,190,247,175,157,101,108,102,
+  116,166,116,166,116,3,166,124,4,165,124,4,166,116,131,102,116,103,116,103,
+  116,3,166,116,129,102,116,4,103,116,129,103,108,3,103,116,3,166,116,133,
+  165,124,165,124,164,124,164,124,247,214,18,255,255,131,189,247,103,149,160,116,
+  32,226,124,133,162,124,226,124,225,124,225,124,225,132,5,226,132,139,225,124,
+  225,124,162,124,163,124,163,124,162,124,224,124,225,132,34,133,34,133,33,133,
+  4,226,132,5,33,133,130,225,132,33,133,12,225,132,12,226,132,137,33,133,
+  226,132,227,132,226,132,227,132,226,132,225,124,226,132,245,206,18,255,255,113,
+  2,15,255,255,129,171,189,3,96,148,132,180,222,255,255,255,255,176,181,4,
+  0,99,132,1,107,1,107,131,115,242,189,6,255,255,134,124,239,112,173,198,
+  123,68,107,68,115,132,115,5,133,115,5,134,115,129,198,123,12,199,123,130,
+  199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,
+  3,101,140,4,100,140,131,165,148,174,189,57,231,5,255,255,130,123,239,105,
+  181,11,96,148,132,238,197,255,255,190,247,190,247,6,255,255,129,104,140,35,
+  192,98,129,124,239,7,255,255,129,46,165,5,192,98,130,1,99,124,239,8,
+  255,255,129,46,165,5,192,98,130,132,115,254,255,8,255,255,129,170,148,5,
+  192,98,130,132,115,190,247,16,255,255,129,248,222,6,192,98,129,184,214,9,
+  255,255,129,249,222,6,192,98,129,183,214,13,255,255,129,39,132,5,192,98,
+  129,171,148,8,255,255,129,249,222,5,192,98,130,1,99,123,239,16,255,255,
+  129,105,140,5,192,98,129,236,156,115,255,255,131,49,182,34,116,192,107,11,
+  32,108,132,33,108,33,108,32,108,33,108,8,32,108,135,32,116,96,116,96,
+  116,32,116,32,116,96,116,96,116,3,97,116,133,98,116,161,124,224,132,225,
+  132,225,132,7,226,132,137,225,132,226,132,101,124,100,124,99,124,97,124,224,
+  124,160,124,96,124,4,160,124,132,160,116,97,116,96,116,160,116,3,160,124,
+  129,33,133,23,34,133,130,33,133,33,133,4,225,132,8,226,132,136,163,132,
+  163,124,164,124,100,124,37,116,198,115,70,107,6,107,3,199,106,3,199,98,
+  143,199,106,199,106,6,107,70,107,133,115,196,115,195,115,34,124,33,124,33,
+  124,96,124,97,124,34,108,195,107,194,107,5,225,132,153,99,124,194,107,97,
+  116,162,124,162,124,35,116,195,107,193,107,32,116,32,108,32,108,32,116,97,
+  116,98,116,98,124,162,124,162,124,161,124,225,132,225,132,224,132,225,132,226,
+  132,160,124,45,182,34,255,255,138,123,231,43,141,37,108,102,116,166,116,166,
+  116,166,124,166,116,166,116,165,116,3,165,124,3,166,116,132,103,116,103,108,
+  103,108,103,116,3,166,116,4,103,116,129,103,108,5,103,116,137,102,116,166,
+  116,166,116,166,124,165,124,165,124,164,116,231,132,123,231,18,255,255,131,58,
+  231,227,132,161,124,4,226,124,131,162,124,226,124,226,124,5,162,124,130,226,
+  124,162,124,7,226,124,129,225,124,10,226,124,131,225,124,225,124,225,132,5,
+  226,132,136,225,124,224,124,162,124,163,124,163,124,162,124,224,124,225,132,4,
+  33,133,130,226,132,225,132,3,33,133,129,225,132,3,33,133,15,225,132,10,
+  226,132,137,225,132,226,132,227,124,226,132,227,124,225,132,224,124,35,133,55,
+  223,19,255,255,108,2,15,255,255,129,238,197,3,96,148,133,162,156,122,239,
+  255,255,255,255,177,181,3,0,99,131,1,107,170,148,59,231,5,255,255,136,
+  190,247,177,181,197,123,67,107,68,107,68,107,68,115,132,115,5,133,115,5,
+  134,115,129,198,123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,
+  132,4,38,140,130,37,140,37,140,3,101,140,4,100,140,133,99,140,99,140,
+  99,148,107,181,56,231,5,255,255,130,113,206,97,148,9,96,148,130,161,148,
+  123,239,8,255,255,129,104,140,34,192,98,130,66,107,124,239,7,255,255,129,
+  46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,
+  132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,247,16,255,
+  255,129,248,222,6,192,98,129,184,214,9,255,255,129,249,222,6,192,98,129,
+  183,214,13,255,255,129,39,132,5,192,98,129,171,148,8,255,255,129,243,197,
+  5,192,98,129,105,140,17,255,255,129,171,156,5,192,98,129,236,156,113,255,
+  255,131,248,222,231,140,192,107,24,32,108,3,32,116,139,96,116,32,116,32,
+  116,96,116,96,116,97,116,96,116,97,116,97,116,161,124,161,124,3,225,132,
+  129,226,132,3,225,132,136,226,132,226,132,225,132,226,132,163,124,100,124,100,
+  124,98,124,8,160,124,131,162,116,97,116,97,116,3,160,124,130,224,132,33,
+  133,22,34,133,129,33,133,3,225,132,130,226,132,225,132,8,226,132,138,163,
+  132,163,124,100,124,100,124,37,116,198,115,70,107,70,107,7,107,199,106,4,
+  199,98,143,199,106,199,106,6,107,70,107,70,107,133,115,197,115,197,115,36,
+  116,36,124,35,124,98,124,34,116,34,108,194,107,5,225,132,136,163,124,34,
+  108,96,116,162,124,162,124,35,116,195,107,194,107,3,32,108,135,33,116,98,
+  116,98,116,98,124,162,124,161,124,161,124,4,225,132,132,226,132,225,132,225,
+  124,246,214,32,255,255,132,183,206,105,116,38,100,103,108,8,166,116,138,166,
+  124,166,116,166,116,103,116,103,108,40,108,103,108,103,116,166,116,166,116,4,
+  103,116,4,103,108,5,103,116,3,166,116,134,166,124,165,124,165,124,163,116,
+  105,149,190,247,18,255,255,130,245,214,161,124,4,226,124,131,162,124,226,124,
+  226,124,9,162,124,12,226,124,133,163,124,162,124,225,124,224,124,225,124,6,
+  226,132,130,225,124,225,124,3,163,124,135,161,124,225,124,226,132,34,133,33,
+  133,226,132,226,132,5,33,133,132,225,132,226,132,33,133,33,133,8,225,132,
+  134,33,133,225,132,225,132,33,133,225,132,225,132,5,226,132,129,227,124,5,
+  226,132,137,33,133,226,132,226,132,225,132,226,132,225,132,160,124,102,149,121,
+  231,20,255,255,104,2,15,255,255,129,115,214,4,96,148,136,38,165,189,247,
+  255,255,255,255,51,198,1,99,66,107,243,189,6,255,255,130,118,206,39,132,
+  3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,134,115,129,198,
+  123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,
+  130,37,140,37,140,3,101,140,4,100,140,3,99,140,132,98,140,98,140,107,
+  181,57,231,4,255,255,130,56,231,228,156,9,96,148,129,237,189,8,255,255,
+  129,104,140,34,192,98,130,66,107,124,239,7,255,255,129,46,165,5,192,98,
+  130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,255,8,
+  255,255,129,170,148,5,192,98,130,132,115,190,247,16,255,255,129,248,222,6,
+  192,98,129,184,214,9,255,255,129,249,222,6,192,98,129,183,214,13,255,255,
+  129,39,132,5,192,98,129,171,148,8,255,255,129,58,231,5,52,198,129,249,
+  222,17,255,255,129,39,132,5,192,98,129,236,156,111,255,255,137,254,247,239,
+  181,33,116,32,108,32,116,32,116,32,108,32,108,33,108,14,32,108,129,32,
+  116,4,32,108,4,32,116,143,96,116,96,116,32,116,96,116,97,124,161,124,
+  161,124,98,116,98,116,161,124,161,124,224,132,225,132,225,132,226,132,4,225,
+  132,135,226,132,226,132,225,132,227,132,100,124,100,124,99,124,7,160,124,132,
+  160,116,161,116,162,116,162,116,3,160,124,130,224,132,33,133,22,34,133,5,
+  225,132,5,226,132,129,225,132,4,226,132,140,163,124,100,124,100,124,37,116,
+  198,115,70,107,70,107,7,107,199,106,199,106,199,98,199,98,4,199,106,132,
+  6,107,70,107,70,107,134,115,3,197,115,156,37,116,99,124,98,116,195,107,
+  194,107,225,132,226,132,226,132,225,132,225,132,163,124,34,108,96,116,162,124,
+  162,124,35,116,195,107,194,107,33,108,32,108,32,116,34,116,98,116,97,116,
+  98,124,162,124,161,124,161,124,6,225,132,131,224,124,102,149,189,247,30,255,
+  255,135,242,181,39,108,39,100,103,108,103,116,102,116,103,116,8,166,116,134,
+  103,116,103,108,40,108,40,108,103,108,166,116,11,103,108,4,103,116,3,166,
+  116,134,165,124,165,124,228,124,228,124,162,116,173,165,19,255,255,130,112,190,
+  160,116,7,226,124,9,162,124,130,163,124,163,124,7,226,124,3,162,124,3,
+  225,124,6,226,132,144,225,124,225,124,162,124,163,124,163,124,161,124,224,124,
+  225,132,34,133,34,133,226,132,226,132,225,132,225,132,33,133,33,133,3,225,
+  132,130,226,132,226,132,13,225,132,129,33,133,11,226,132,137,33,133,226,132,
+  226,132,225,132,226,132,225,132,160,124,168,157,123,239,20,255,255,1,59,231,
+  116,2,15,255,255,129,56,231,5,96,148,129,105,181,3,255,255,130,183,214,
+  58,231,5,255,255,132,124,239,236,156,66,107,66,107,3,67,107,132,68,107,
+  68,107,68,115,132,115,5,133,115,5,134,115,129,198,123,12,199,123,130,199,
+  131,199,131,11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,3,
+  101,140,4,100,140,3,99,140,134,98,140,98,140,98,148,98,148,237,189,188,
+  247,3,255,255,130,188,247,40,173,8,96,148,130,162,156,188,247,7,255,255,
+  129,104,140,34,192,98,130,0,99,124,239,7,255,255,129,46,165,5,192,98,
+  130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,255,8,
+  255,255,129,170,148,5,192,98,130,132,115,190,247,16,255,255,129,248,222,6,
+  192,98,129,184,214,9,255,255,129,249,222,6,192,98,129,183,214,13,255,255,
+  129,39,132,5,192,98,129,171,148,31,255,255,130,118,206,0,99,5,192,98,
+  129,236,156,110,255,255,134,248,222,231,140,32,108,96,116,97,116,97,116,3,
+  32,116,129,33,116,20,32,108,3,32,116,130,96,116,161,116,3,98,116,134,
+  97,124,98,116,98,116,98,124,161,124,161,124,9,225,132,135,33,133,33,133,
+  226,132,100,124,36,124,163,124,97,124,6,160,124,129,96,116,4,161,116,132,
+  160,124,160,124,224,132,33,133,11,34,133,131,226,132,34,133,34,133,3,33,
+  133,130,34,133,34,133,4,33,133,3,225,132,6,226,132,129,225,132,3,226,
+  132,139,162,132,163,124,100,124,100,124,37,116,198,115,70,107,6,107,7,107,
+  199,106,199,106,3,199,98,3,199,106,140,6,107,6,107,70,107,134,107,134,
+  115,198,115,197,115,37,116,100,124,98,116,195,107,194,107,3,225,132,148,226,
+  132,225,132,163,124,195,107,96,116,162,124,162,124,35,116,195,107,194,107,33,
+  108,32,108,32,116,33,116,97,116,97,116,98,124,162,124,161,124,161,124,7,
+  225,132,130,160,124,46,182,28,255,255,133,189,239,110,149,38,100,39,108,103,
+  108,4,103,116,6,166,116,139,103,116,103,108,103,108,40,108,40,108,103,108,
+  103,116,103,108,39,108,40,108,40,108,9,103,108,130,103,116,103,116,3,166,
+  116,136,166,124,166,124,165,124,165,124,228,124,164,124,163,116,114,190,19,255,
+  255,130,170,157,160,116,8,226,124,10,162,124,131,226,124,162,124,162,124,3,
+  163,124,133,162,124,161,124,224,124,224,124,225,124,6,226,132,136,225,124,225,
+  124,162,124,163,124,163,124,225,124,224,132,226,132,3,33,133,136,225,132,33,
+  133,225,132,225,132,33,133,33,133,225,132,33,133,16,225,132,7,226,132,129,
+  227,124,3,226,132,129,33,133,4,226,132,132,225,132,160,116,170,165,189,247,
+  20,255,255,130,249,222,69,115,153,2,15,255,255,130,189,247,162,156,5,96,
+  148,129,172,189,8,255,255,130,118,206,197,123,3,66,107,3,67,107,132,68,
+  107,68,107,68,115,132,115,5,133,115,5,134,115,129,198,123,12,199,123,130,
+  199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,130,37,140,37,140,
+  3,101,140,4,100,140,3,99,140,135,98,140,98,140,98,148,97,148,97,148,
+  164,156,180,214,3,255,255,130,254,255,171,181,8,96,148,129,114,214,7,255,
+  255,129,104,140,6,192,98,129,236,156,28,52,198,129,190,247,7,255,255,129,
+  46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,
+  132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,247,16,255,
+  255,129,248,222,6,192,98,129,184,214,9,255,255,129,249,222,6,192,98,129,
+  183,214,13,255,255,129,39,132,5,192,98,129,171,148,27,255,255,133,189,247,
+  59,231,248,222,111,173,1,99,6,192,98,129,236,156,108,255,255,132,189,247,
+  239,181,97,116,32,108,7,96,116,129,32,116,14,32,108,148,33,108,32,108,
+  32,108,32,116,32,116,96,116,32,116,96,116,96,116,160,124,225,132,225,132,
+  225,124,162,124,162,124,161,124,161,124,162,124,162,124,161,124,3,225,132,132,
+  33,133,225,132,226,132,225,132,4,33,133,148,226,132,164,124,37,124,99,124,
+  99,124,160,124,160,124,96,124,96,116,160,124,160,124,160,116,160,116,161,116,
+  162,116,98,116,161,116,160,124,160,124,225,132,14,34,133,7,33,133,3,225,
+  132,8,226,132,129,225,132,3,226,132,139,162,132,163,124,100,124,101,124,37,
+  116,198,115,70,107,6,107,7,107,199,106,199,106,4,199,98,142,199,106,199,
+  106,6,107,6,107,70,107,70,107,134,115,198,115,197,115,197,115,100,124,99,
+  116,195,107,194,107,5,225,132,149,163,124,195,107,96,116,161,124,162,124,35,
+  116,195,107,195,107,34,108,32,108,32,116,33,116,97,116,97,116,98,124,162,
+  124,161,124,161,124,225,132,225,132,224,132,3,225,132,132,226,132,225,132,225,
+  124,247,222,26,255,255,137,56,223,41,141,37,108,103,116,102,116,102,116,103,
+  116,103,108,103,116,3,166,116,4,103,116,129,103,108,4,40,108,133,103,108,
+  103,108,39,108,40,108,40,108,8,103,108,133,39,108,103,108,103,116,103,116,
+  102,116,3,166,116,129,166,124,5,165,124,130,164,124,247,214,18,255,255,131,
+  188,239,37,141,160,124,8,226,124,12,162,124,135,163,124,162,124,162,124,161,
+  124,224,124,224,124,225,132,6,226,132,140,225,124,225,124,162,124,163,124,163,
+  124,225,124,225,132,225,132,34,133,33,133,226,132,226,132,3,33,133,131,225,
+  132,226,132,33,133,16,225,132,129,33,133,5,226,132,135,227,124,226,132,227,
+  124,226,132,227,124,226,132,33,133,3,226,132,133,227,132,225,132,160,124,45,
+  174,254,247,20,255,255,131,118,206,3,107,128,90,150,2,16,255,255,129,105,
+  181,6,96,148,129,172,189,5,255,255,131,189,247,111,173,65,107,4,66,107,
+  3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,134,115,129,198,
+  123,12,199,123,130,199,131,199,131,11,39,132,130,38,132,38,132,4,38,140,
+  130,37,140,37,140,3,101,140,4,100,140,3,99,140,137,98,140,98,140,98,
+  148,97,148,97,148,96,148,96,148,170,181,188,247,3,255,255,129,237,189,7,
+  96,148,129,104,173,7,255,255,129,104,140,6,192,98,129,52,198,36,255,255,
+  129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,
+  130,132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,247,16,
+  255,255,129,248,222,6,192,98,129,184,214,9,255,255,129,249,222,6,192,98,
+  129,183,214,13,255,255,129,39,132,5,192,98,129,171,148,16,255,255,141,254,
+  255,124,239,58,231,248,222,118,206,51,198,177,181,46,165,171,148,39,132,133,
+  123,67,107,1,99,9,192,98,129,236,156,107,255,255,132,247,222,230,140,32,
+  108,32,116,8,96,116,130,32,116,32,116,12,32,108,130,33,108,32,108,3,
+  32,116,136,96,116,96,116,160,116,97,116,97,116,160,124,225,132,225,132,3,
+  161,124,7,225,132,131,226,132,34,133,33,133,4,225,132,3,33,133,136,227,
+  132,101,124,100,124,99,124,160,124,160,124,96,116,96,116,4,160,124,136,161,
+  116,161,116,98,116,97,116,160,124,160,124,224,132,33,133,12,34,133,131,33,
+  133,33,133,225,132,4,33,133,5,225,132,7,226,132,129,225,132,3,226,132,
+  138,162,132,163,124,100,124,101,124,37,116,198,115,70,107,70,107,7,107,199,
+  106,5,199,98,142,199,106,199,106,6,107,6,107,70,107,70,107,134,115,134,
+  115,197,115,197,115,100,124,98,116,195,107,194,107,5,225,132,149,163,124,195,
+  107,96,116,161,124,162,124,35,116,195,107,195,107,34,108,32,108,32,116,33,
+  116,97,116,97,116,98,124,162,124,161,124,161,124,225,132,224,132,224,132,3,
+  225,132,132,226,132,160,124,36,141,246,222,25,255,255,141,179,206,34,133,224,
+  124,227,124,164,124,102,116,103,108,103,108,103,116,102,116,166,116,103,116,103,
+  116,4,103,108,137,40,108,40,108,40,100,40,108,39,108,103,108,39,108,40,
+  108,39,108,8,103,108,131,39,108,103,108,103,108,5,103,116,130,102,116,102,
+  116,5,166,124,131,165,116,230,124,123,231,18,255,255,131,57,231,226,124,225,
+  124,8,226,124,12,162,124,132,162,116,161,116,224,124,224,124,7,226,132,130,
+  225,124,225,124,3,163,124,138,225,124,224,132,226,132,34,133,34,133,33,133,
+  225,132,226,132,33,133,33,133,3,225,132,129,33,133,16,225,132,7,226,132,
+  129,227,132,3,226,132,136,33,133,227,132,226,124,226,132,226,132,225,132,225,
+  124,112,190,21,255,255,132,244,197,193,98,128,90,193,98,190,2,16,255,255,
+  129,179,214,7,96,148,130,171,181,254,255,3,255,255,131,116,206,65,107,65,
+  107,4,66,107,3,67,107,132,68,107,68,107,68,115,132,115,5,133,115,5,
+  134,115,129,198,123,3,199,123,136,200,123,41,132,171,148,237,156,46,165,112,
+  173,177,181,178,181,4,243,189,140,178,181,177,181,112,173,46,165,237,164,171,
+  148,105,148,40,140,39,132,39,132,38,132,38,132,4,38,140,130,37,140,37,
+  140,3,101,140,4,100,140,3,99,140,133,98,140,98,140,98,148,97,148,97,
+  148,3,96,148,130,228,156,246,222,3,255,255,129,237,189,6,96,148,130,162,
+  156,188,247,6,255,255,129,104,140,6,192,98,129,243,197,36,255,255,129,46,
+  165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,
+  115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,247,16,255,255,
+  129,248,222,6,192,98,129,184,214,9,255,255,129,249,222,6,192,98,129,183,
+  214,13,255,255,129,39,132,5,192,98,129,171,148,13,255,255,133,183,214,111,
+  173,105,140,132,115,2,107,20,192,98,129,236,156,105,255,255,134,189,247,238,
+  181,96,116,32,108,97,116,33,116,9,96,116,129,32,116,4,32,108,131,33,
+  108,32,108,32,116,5,32,108,143,33,108,32,108,32,108,32,116,96,116,160,
+  124,161,124,162,124,162,124,161,124,162,124,98,124,98,116,161,124,160,124,4,
+  225,132,129,226,132,3,225,132,146,33,133,34,133,33,133,226,132,225,132,226,
+  132,225,132,33,133,33,133,225,132,226,132,101,124,36,124,100,124,161,124,224,
+  124,160,124,96,124,3,160,124,137,160,116,161,124,161,124,162,116,98,116,160,
+  124,160,124,224,132,33,133,12,34,133,4,33,133,131,225,132,225,132,33,133,
+  5,225,132,6,226,132,130,225,132,225,132,3,226,132,138,162,132,163,124,100,
+  124,101,124,37,116,198,115,70,107,6,107,199,106,199,106,5,199,98,3,199,
+  106,139,6,107,70,107,70,107,134,115,134,115,197,115,197,115,36,124,98,116,
+  195,107,194,107,5,225,132,149,162,124,195,107,96,116,161,124,162,124,35,116,
+  195,107,195,107,34,108,33,108,32,116,33,116,97,116,97,116,98,124,162,124,
+  161,124,161,124,225,132,224,132,224,132,3,225,132,131,160,124,169,157,123,239,
+  24,255,255,140,190,247,46,182,224,124,225,132,34,133,33,133,33,133,226,132,
+  164,124,166,116,103,116,103,116,5,103,108,3,40,108,136,40,100,40,108,40,
+  108,39,108,39,108,40,108,40,108,39,108,8,103,108,131,39,108,103,108,103,
+  108,7,103,116,137,102,116,166,116,102,116,103,116,166,116,166,116,101,116,42,
+  141,189,247,18,255,255,131,179,198,160,124,225,124,8,226,124,10,162,124,132,
+  161,116,160,124,224,124,225,124,7,226,132,130,225,124,225,124,3,163,124,131,
+  225,124,225,132,226,132,3,34,133,132,226,132,225,132,33,133,33,133,20,225,
+  132,7,226,132,129,227,124,3,226,132,129,33,133,4,226,132,131,225,124,226,
+  132,179,198,21,255,255,133,178,181,128,90,192,90,193,98,193,98,177,2,16,
+  255,255,130,189,247,162,156,7,96,148,130,104,173,188,247,3,255,255,130,117,
+  206,132,123,4,66,107,3,67,107,132,68,107,68,107,68,115,132,115,5,133,
+  115,3,134,115,136,199,123,106,140,46,165,178,181,118,206,249,222,124,239,190,
+  247,16,255,255,140,190,247,124,239,249,230,182,214,242,189,110,173,234,156,103,
+  140,38,140,38,140,37,140,37,140,3,101,140,4,100,140,3,99,140,133,98,
+  140,98,140,98,148,97,148,97,148,5,96,148,129,113,206,3,255,255,129,172,
+  189,6,96,148,129,246,222,6,255,255,129,104,140,6,192,98,129,243,197,36,
+  255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,
+  192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,
+  247,16,255,255,129,248,222,6,192,98,129,184,214,9,255,255,129,249,222,6,
+  192,98,129,183,214,13,255,255,129,39,132,5,192,98,129,171,148,10,255,255,
+  131,190,247,178,189,197,123,18,192,98,130,1,107,1,99,5,192,98,129,236,
+  156,104,255,255,138,246,214,229,132,96,116,160,124,96,116,96,116,33,116,96,
+  116,96,116,96,124,5,96,116,130,32,116,32,116,4,32,108,150,33,108,32,
+  116,32,116,32,108,32,108,32,116,32,116,32,108,33,108,32,108,32,116,96,
+  116,160,124,161,124,162,124,162,124,225,124,225,124,161,124,162,124,161,124,225,
+  124,5,225,132,6,34,133,144,33,133,226,132,226,132,225,132,225,132,33,133,
+  34,133,225,132,226,132,164,124,37,124,163,124,161,124,160,124,160,124,96,124,
+  3,160,124,137,160,116,161,116,161,116,161,124,98,116,161,124,160,124,224,132,
+  33,133,11,34,133,3,33,133,129,225,132,3,33,133,5,225,132,7,226,132,
+  130,225,132,225,132,3,226,132,138,162,132,163,124,100,124,101,124,37,116,198,
+  115,70,107,6,107,199,106,199,106,5,199,98,3,199,106,140,6,107,6,107,
+  70,107,70,107,134,115,197,115,197,115,36,124,98,116,195,107,194,107,224,132,
+  4,225,132,153,162,132,35,108,96,116,161,124,162,124,35,116,195,107,195,107,
+  34,108,33,108,32,116,33,116,97,116,98,116,98,124,162,124,161,124,161,124,
+  225,132,225,132,224,132,225,132,224,124,225,124,112,190,25,255,255,132,123,239,
+  168,157,224,124,225,132,4,34,133,134,33,133,33,133,225,132,226,124,164,124,
+  103,116,6,40,108,135,200,99,200,99,40,100,40,108,39,108,40,108,200,99,
+  4,39,108,7,40,108,5,103,108,131,40,108,40,108,39,116,3,103,116,135,
+  39,116,103,116,39,108,40,108,103,116,37,108,110,157,19,255,255,130,237,173,
+  160,116,8,226,124,10,162,124,131,224,124,224,124,225,124,7,226,132,130,225,
+  124,161,124,3,163,124,130,225,124,225,132,3,226,132,3,33,133,130,225,132,
+  33,133,20,225,132,6,226,132,135,225,132,227,132,226,132,226,132,225,132,33,
+  133,227,132,3,226,132,131,225,124,228,132,246,214,21,255,255,131,238,164,128,
+  82,193,90,3,193,98,150,2,17,255,255,129,237,189,8,96,148,130,228,164,
+  56,231,3,255,255,130,124,239,236,156,3,66,107,3,67,107,132,68,107,68,
+  107,68,115,132,115,4,133,115,133,198,123,171,148,177,181,183,214,123,239,30,
+  255,255,133,124,239,248,222,50,198,44,173,167,148,3,101,140,4,100,140,3,
+  99,140,133,98,140,98,140,98,148,97,148,97,148,6,96,148,129,237,189,3,
+  255,255,129,105,181,5,96,148,129,113,206,6,255,255,129,104,140,6,192,98,
+  129,243,197,36,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,
+  129,46,165,5,192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,
+  130,132,115,190,247,16,255,255,129,248,222,6,192,98,129,184,214,9,255,255,
+  129,249,222,6,192,98,129,183,214,13,255,255,129,39,132,5,192,98,129,171,
+  148,9,255,255,130,249,222,198,123,15,192,98,135,2,107,132,115,40,140,45,
+  165,51,198,123,239,39,132,5,192,98,129,236,156,102,255,255,137,189,247,173,
+  173,96,116,96,116,161,124,161,124,96,116,96,116,97,116,8,96,116,130,32,
+  116,32,116,5,32,108,4,32,116,137,96,116,32,116,32,116,32,108,32,108,
+  96,116,96,116,97,116,161,124,8,225,132,131,226,132,225,132,225,132,9,34,
+  133,4,225,132,136,34,133,33,133,225,132,226,132,163,124,37,124,99,124,162,
+  124,3,160,124,129,96,124,3,160,124,136,160,116,161,116,162,116,98,116,161,
+  124,160,124,160,124,225,132,11,34,133,4,33,133,132,225,132,225,132,33,133,
+  33,133,3,225,132,8,226,132,130,225,132,225,132,3,226,132,138,163,132,163,
+  124,100,124,100,124,37,116,198,115,70,107,70,107,7,107,199,106,5,199,98,
+  3,199,106,140,6,107,6,107,70,107,70,107,134,115,134,115,197,115,36,124,
+  98,116,195,107,194,99,225,124,4,225,132,152,226,132,35,108,96,116,161,124,
+  162,124,99,116,196,107,195,107,34,108,33,108,33,116,33,116,97,116,98,116,
+  98,124,162,124,161,124,161,124,161,132,225,132,224,132,160,124,35,141,246,214,
+  25,255,255,131,246,214,36,141,224,124,9,34,133,151,33,133,33,133,226,132,
+  163,124,102,116,39,108,40,108,200,107,200,99,136,99,200,99,200,99,40,100,
+  40,108,200,99,200,99,39,108,39,108,40,108,40,108,200,99,200,99,40,100,
+  7,40,108,129,103,108,3,40,108,140,103,116,103,116,102,116,39,108,40,108,
+  40,108,103,116,102,116,166,124,166,124,100,116,114,190,18,255,255,131,254,255,
+  104,149,160,116,7,226,124,8,162,124,132,161,124,224,124,224,124,225,124,4,
+  226,132,133,225,132,226,132,226,132,225,124,161,124,3,163,124,130,225,124,225,
+  132,3,226,132,4,33,133,23,225,132,130,226,132,227,124,6,226,132,130,225,
+  132,33,133,3,226,132,132,225,132,224,124,37,141,57,231,20,255,255,131,190,
+  247,172,156,128,82,5,193,98,144,2,17,255,255,130,123,239,161,148,8,96,
+  148,130,97,148,113,206,4,255,255,131,117,206,198,131,66,107,3,67,107,137,
+  68,107,68,107,68,115,132,115,133,115,198,123,237,156,53,198,123,239,38,255,
+  255,132,189,247,248,222,241,189,233,156,4,100,140,3,99,140,133,98,140,98,
+  140,98,148,97,148,97,148,7,96,148,133,170,181,254,255,255,255,190,247,38,
+  173,4,96,148,129,172,189,6,255,255,129,104,140,6,192,98,129,243,197,36,
+  255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,
+  192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,
+  247,16,255,255,129,248,222,6,192,98,129,184,214,9,255,255,129,249,222,6,
+  192,98,129,183,214,13,255,255,129,39,132,5,192,98,129,171,148,8,255,255,
+  130,184,214,2,107,8,192,98,138,1,99,133,115,105,140,236,156,112,181,51,
+  198,182,214,249,222,124,239,254,255,4,255,255,129,198,131,5,192,98,129,236,
+  156,101,255,255,138,246,214,229,132,32,116,97,124,161,124,160,124,97,124,96,
+  124,96,116,97,116,8,96,116,132,32,116,32,108,32,108,32,116,3,32,108,
+  6,32,116,129,96,116,3,32,116,130,96,116,160,124,3,225,132,7,226,132,
+  129,225,132,8,34,133,3,33,133,143,225,132,33,133,33,133,34,133,33,133,
+  225,132,226,132,227,132,37,124,197,115,162,124,160,124,224,132,160,124,96,124,
+  3,160,124,137,96,116,161,116,98,116,98,116,161,116,161,124,160,124,224,132,
+  33,133,9,34,133,4,33,133,4,225,132,129,33,133,3,225,132,8,226,132,
+  130,225,132,225,132,3,226,132,138,163,132,163,124,100,124,100,124,37,116,197,
+  115,70,107,70,107,199,106,199,106,5,199,98,3,199,106,141,6,107,6,107,
+  70,107,70,107,134,115,134,115,197,115,36,124,98,116,35,108,194,99,225,124,
+  226,132,4,225,132,141,35,116,96,116,161,124,162,124,99,124,195,107,195,107,
+  34,108,33,108,33,116,33,116,97,116,98,116,5,161,124,132,225,124,160,124,
+  168,157,123,239,25,255,255,132,254,255,104,149,160,116,226,132,11,34,133,3,
+  33,133,145,226,132,164,116,39,108,200,99,73,91,136,91,200,99,200,99,39,
+  108,200,99,200,99,39,108,40,108,200,99,200,99,137,91,137,91,3,200,99,
+  9,40,108,134,103,116,166,116,165,116,39,108,39,116,166,116,4,165,124,131,
+  164,124,163,124,247,214,18,255,255,131,123,239,228,132,161,124,5,226,124,130,
+  162,124,163,124,6,162,124,131,161,124,224,124,225,124,8,226,132,135,225,124,
+  161,124,163,124,163,124,162,124,224,124,225,132,3,226,132,131,225,132,33,133,
+  33,133,3,225,132,129,33,133,18,225,132,11,226,132,136,225,132,226,132,225,
+  132,226,132,226,132,160,124,104,149,123,239,20,255,255,131,125,239,41,140,128,
+  82,6,193,98,127,2,15,255,255,132,179,214,255,255,255,255,237,197,10,96,
+  148,130,105,173,122,239,3,255,255,139,190,247,177,181,197,123,67,107,67,107,
+  68,107,68,107,68,115,171,148,53,198,124,239,45,255,255,132,57,231,241,197,
+  232,156,100,140,3,99,140,133,98,140,98,140,98,148,97,148,97,148,8,96,
+  148,133,170,181,255,255,255,255,123,239,163,156,3,96,148,129,170,181,6,255,
+  255,129,104,140,6,192,98,129,243,197,36,255,255,129,46,165,5,192,98,130,
+  1,99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,255,8,255,
+  255,129,170,148,5,192,98,130,132,115,190,247,16,255,255,129,183,214,6,192,
+  98,129,184,214,9,255,255,129,249,222,6,192,98,129,183,214,13,255,255,129,
+  39,132,5,192,98,129,171,148,7,255,255,130,125,239,67,107,6,192,98,132,
+  0,99,170,148,52,198,123,239,13,255,255,129,198,131,5,192,98,129,236,156,
+  99,255,255,140,188,239,171,165,96,116,96,116,97,124,97,124,160,124,161,124,
+  96,124,160,124,96,116,33,116,8,96,116,129,32,116,7,32,108,138,32,116,
+  32,108,32,108,32,116,97,116,97,124,98,124,97,124,97,124,161,124,3,225,
+  132,133,34,133,225,132,33,133,33,133,225,132,3,33,133,129,225,132,8,34,
+  133,6,33,133,141,225,132,225,132,33,133,33,133,226,132,101,124,134,115,99,
+  124,161,124,160,132,224,124,160,124,96,124,3,160,124,136,161,124,98,116,98,
+  116,161,116,161,124,160,124,224,132,33,133,9,34,133,3,33,133,8,225,132,
+  9,226,132,130,225,132,225,132,3,226,132,138,162,132,163,124,100,124,37,124,
+  37,116,197,115,70,107,70,107,7,107,199,106,6,199,98,130,199,106,199,106,
+  3,6,107,137,70,107,70,107,134,115,198,115,36,124,98,124,35,108,195,99,
+  225,124,4,225,132,143,161,132,34,116,96,116,161,124,162,124,99,124,195,107,
+  195,107,34,108,34,108,33,116,33,116,97,116,97,116,97,124,3,161,124,131,
+  160,124,160,124,47,190,28,255,255,131,122,231,227,132,225,124,3,226,132,11,
+  34,133,145,33,133,33,133,225,132,163,124,37,108,199,99,136,99,200,99,200,
+  99,136,91,199,99,39,100,200,99,200,99,136,99,137,91,137,91,4,200,99,
+  8,40,108,136,103,116,165,124,165,124,103,116,102,116,102,116,166,116,165,124,
+  3,228,124,131,227,124,229,132,122,231,18,255,255,133,246,214,161,124,162,124,
+  226,124,226,124,9,162,124,131,225,124,224,124,225,124,4,226,132,139,225,132,
+  225,132,226,132,226,132,224,124,161,124,163,124,163,124,162,124,224,124,225,132,
+  5,226,132,23,225,132,7,226,132,132,227,124,226,132,226,132,225,132,4,226,
+  132,132,225,132,160,124,171,165,189,247,20,255,255,131,59,231,133,115,128,90,
+  7,193,98,109,2,15,255,255,133,228,164,246,222,255,255,189,247,163,156,10,
+  96,148,131,162,148,49,206,254,255,3,255,255,134,124,239,177,181,198,123,133,
+  115,46,165,249,222,50,255,255,138,254,255,248,222,173,181,100,148,99,140,98,
+  140,98,140,98,148,97,148,97,148,9,96,148,132,172,189,255,255,255,255,246,
+  222,3,96,148,129,170,181,6,255,255,129,104,140,6,192,98,129,243,197,36,
+  255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,
+  192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,130,132,115,190,
+  247,16,255,255,129,243,197,6,192,98,129,184,214,9,255,255,129,249,222,6,
+  192,98,129,183,214,13,255,255,129,39,132,5,192,98,129,171,148,7,255,255,
+  129,111,173,6,192,98,130,198,131,249,222,16,255,255,129,198,131,5,192,98,
+  129,236,156,98,255,255,141,179,206,164,132,96,116,161,124,98,124,97,124,161,
+  124,161,124,97,124,97,124,96,124,96,116,97,116,8,96,116,130,32,116,32,
+  116,4,32,108,6,32,116,135,160,124,225,132,225,132,224,132,224,132,225,132,
+  225,132,3,34,133,8,225,132,11,34,133,3,33,133,4,225,132,137,226,132,
+  100,124,134,115,35,124,161,124,160,124,224,132,160,124,96,124,3,160,124,136,
+  161,124,162,116,98,116,96,116,160,124,160,124,224,132,225,132,8,34,133,129,
+  33,133,10,225,132,10,226,132,130,225,132,225,132,3,226,132,138,162,132,163,
+  124,100,124,101,124,37,116,197,115,70,107,6,107,199,106,199,106,6,199,98,
+  142,199,106,199,106,7,107,6,107,6,107,70,107,70,107,134,115,134,115,196,
+  115,98,124,35,108,131,99,161,124,5,225,132,147,34,116,96,116,161,124,162,
+  124,99,124,196,107,195,107,34,108,34,116,33,116,33,116,98,116,97,116,98,
+  124,162,124,161,124,160,124,227,132,246,214,30,255,255,130,179,198,161,116,3,
+  226,124,130,226,132,226,132,11,34,133,3,33,133,141,226,132,164,116,38,108,
+  136,99,72,83,136,91,199,99,200,99,200,99,136,99,73,91,73,91,136,99,
+  4,200,99,6,40,108,144,39,108,103,116,165,124,102,116,39,108,103,116,103,
+  116,166,116,166,124,165,124,165,124,164,124,229,124,164,116,106,149,190,247,18,
+  255,255,130,48,182,160,116,3,226,124,7,162,124,131,225,124,224,124,225,124,
+  3,226,132,129,225,132,4,226,132,140,224,124,161,124,163,124,163,124,162,124,
+  224,124,225,132,226,132,34,133,33,133,33,133,226,132,9,225,132,129,226,132,
+  3,225,132,129,226,132,9,225,132,5,226,132,131,227,124,226,132,227,132,7,
+  226,132,132,225,132,160,124,238,173,254,255,20,255,255,131,248,222,68,107,128,
+  90,8,193,98,92,2,15,255,255,133,161,156,229,164,254,255,255,255,181,222,
+  11,96,148,131,97,148,230,164,181,222,4,255,255,130,189,247,124,239,55,255,
+  255,135,123,239,49,198,165,156,98,140,98,148,97,148,97,148,10,96,148,135,
+  47,198,255,255,255,255,238,197,96,148,96,148,170,181,6,255,255,129,104,140,
+  6,192,98,129,243,197,36,255,255,129,46,165,5,192,98,130,1,99,124,239,
+  8,255,255,129,46,165,5,192,98,130,132,115,254,255,8,255,255,129,170,148,
+  5,192,98,130,132,115,190,247,16,255,255,129,236,156,6,192,98,129,184,214,
+  9,255,255,129,249,222,6,192,98,129,183,214,13,255,255,129,39,132,5,192,
+  98,129,171,148,6,255,255,130,190,247,132,115,5,192,98,130,133,115,189,247,
+  17,255,255,129,198,131,5,192,98,129,236,156,96,255,255,143,123,239,106,157,
+  96,116,96,116,161,124,161,124,98,124,97,124,161,124,161,124,97,124,96,124,
+  96,124,97,116,97,116,10,96,116,131,32,116,33,108,32,108,3,96,116,3,
+  32,116,137,96,116,224,132,224,132,225,132,225,132,224,132,224,132,225,132,33,
+  133,4,225,132,130,226,132,226,132,3,225,132,5,34,133,3,33,133,5,34,
+  133,130,33,133,33,133,5,225,132,132,163,124,134,115,196,115,161,124,8,160,
+  124,131,161,116,97,116,97,116,3,160,124,130,224,132,33,133,6,34,133,132,
+  33,133,33,133,225,132,33,133,8,225,132,10,226,132,130,225,132,225,132,3,
+  226,132,143,162,132,163,124,100,124,100,124,37,116,197,115,70,107,6,107,7,
+  107,199,106,199,98,199,98,135,98,199,98,199,98,4,199,106,139,6,107,6,
+  107,70,107,70,107,134,115,134,115,197,115,98,124,35,108,195,99,161,124,5,
+  225,132,146,98,116,96,116,161,124,162,124,99,124,35,116,194,107,195,107,34,
+  108,33,116,33,116,97,116,97,116,98,124,161,124,96,116,104,157,123,239,32,
+  255,255,134,107,157,163,116,164,124,227,124,227,124,226,124,3,226,132,11,34,
+  133,142,33,133,33,133,226,132,163,124,38,108,135,91,136,91,72,91,136,91,
+  136,91,72,91,73,83,136,99,136,99,4,200,99,5,40,108,136,39,108,103,
+  116,166,116,166,116,102,116,39,108,103,116,166,116,6,165,124,130,163,116,238,
+  173,19,255,255,132,170,157,161,116,227,124,226,124,6,162,124,3,225,124,133,
+  225,132,226,132,226,132,225,132,225,132,3,226,132,136,225,124,161,124,163,116,
+  163,124,163,124,224,124,225,132,226,132,6,225,132,129,33,133,20,225,132,6,
+  226,132,129,225,132,8,226,132,131,225,124,224,124,49,190,21,255,255,131,118,
+  206,2,99,128,90,9,193,98,99,2,15,255,255,134,162,156,96,148,47,198,
+  255,255,255,255,236,189,10,96,148,133,97,148,97,148,98,148,41,173,246,222,
+  61,255,255,133,189,247,49,206,165,156,97,148,97,148,11,96,148,134,246,222,
+  255,255,254,255,37,165,96,148,170,181,6,255,255,129,104,140,6,192,98,129,
+  243,197,36,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,
+  46,165,5,192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,130,
+  67,115,190,247,15,255,255,130,190,247,67,115,6,192,98,129,184,214,9,255,
+  255,129,249,222,6,192,98,129,183,214,13,255,255,129,39,132,5,192,98,129,
+  171,148,6,255,255,129,58,231,6,192,98,129,177,181,18,255,255,129,132,115,
+  5,192,98,129,236,156,95,255,255,131,49,190,163,132,96,116,4,161,124,137,
+  98,124,97,124,160,124,161,124,97,124,160,124,160,124,96,116,32,116,8,96,
+  116,133,32,116,96,116,32,116,32,108,32,108,5,32,116,130,33,116,96,124,
+  5,224,132,136,160,132,224,132,225,132,161,124,161,132,225,132,225,132,33,133,
+  9,34,133,3,33,133,6,34,133,131,225,132,33,133,33,133,3,225,132,132,
+  227,132,38,116,134,115,99,124,4,160,124,129,96,124,4,160,124,130,161,116,
+  97,116,3,160,124,130,224,132,33,133,7,34,133,129,33,133,11,225,132,9,
+  226,132,130,225,132,225,132,3,226,132,138,162,132,163,124,100,124,100,124,37,
+  116,197,115,70,107,70,107,7,107,199,106,5,199,98,4,199,106,139,6,107,
+  6,107,70,107,70,107,70,115,134,115,133,115,98,124,35,108,195,99,161,124,
+  5,225,132,145,97,124,160,124,161,124,162,124,99,124,195,115,194,107,195,107,
+  34,108,33,116,33,116,97,116,97,116,96,116,96,116,47,182,254,247,33,255,
+  255,140,124,239,168,124,101,108,102,116,102,116,165,124,164,124,227,124,226,124,
+  226,132,226,132,225,132,10,34,133,146,33,133,33,133,34,133,163,124,198,99,
+  71,83,200,74,200,74,8,75,201,74,136,91,136,91,200,99,200,99,201,99,
+  200,99,200,99,40,100,4,40,108,144,103,108,103,108,102,116,102,116,103,108,
+  40,108,103,108,165,116,228,124,165,124,166,124,165,124,165,124,228,124,163,116,
+  115,190,18,255,255,132,123,239,37,141,161,116,226,124,5,162,124,131,225,124,
+  225,124,225,132,3,226,132,3,225,132,139,226,132,225,132,224,124,161,124,163,
+  116,163,124,162,124,224,124,225,132,226,132,226,132,6,225,132,130,33,133,33,
+  133,15,225,132,129,33,133,3,225,132,5,226,132,129,227,132,8,226,132,131,
+  224,124,226,124,180,206,21,255,255,131,178,189,193,98,192,90,10,193,98,93,
+  2,15,255,255,135,162,156,96,148,96,148,56,231,255,255,254,255,39,173,9,
+  96,148,136,97,148,97,148,98,148,98,140,98,140,41,165,181,214,190,247,55,
+  255,255,129,123,239,4,255,255,131,189,247,48,198,162,148,11,96,148,134,163,
+  156,188,247,255,255,56,231,96,148,106,181,6,255,255,129,104,140,6,192,98,
+  129,243,197,36,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,
+  129,46,165,5,192,98,130,132,115,254,255,8,255,255,129,170,148,5,192,98,
+  130,1,99,124,239,15,255,255,129,242,189,7,192,98,129,184,214,9,255,255,
+  129,249,222,6,192,98,129,183,214,13,255,255,129,39,132,5,192,98,129,171,
+  148,6,255,255,129,183,214,6,192,98,129,117,206,17,255,255,129,118,206,6,
+  192,98,129,236,156,93,255,255,132,57,231,105,157,96,116,96,116,5,161,124,
+  135,97,124,161,124,160,124,97,124,97,124,160,124,160,124,9,96,116,133,32,
+  116,32,116,32,108,33,108,32,108,4,32,116,136,96,116,32,116,33,116,96,
+  124,160,124,224,132,224,132,160,132,3,161,124,134,97,124,225,132,33,133,33,
+  133,225,132,33,133,6,34,133,129,33,133,11,34,133,129,33,133,3,225,132,
+  134,226,132,225,132,226,132,101,124,134,115,36,124,9,160,124,130,161,116,97,
+  116,3,160,124,130,224,132,33,133,6,34,133,129,33,133,4,225,132,131,226,
+  132,226,132,225,132,14,226,132,129,225,132,4,226,132,138,163,132,163,124,100,
+  124,100,124,37,116,197,115,70,107,70,107,7,107,199,106,5,199,98,4,199,
+  106,3,6,107,156,70,107,70,107,134,115,133,115,99,124,35,108,131,99,161,
+  124,226,132,225,132,225,132,224,132,225,132,98,124,97,116,161,124,162,124,99,
+  124,35,116,194,107,194,107,34,108,33,116,33,116,97,116,32,108,164,132,245,
+  214,36,255,255,141,181,206,164,116,166,116,102,116,103,116,103,116,102,116,164,
+  124,164,124,227,124,226,124,226,132,225,132,10,34,133,137,33,133,33,133,163,
+  124,38,108,71,91,199,74,72,58,7,50,8,75,3,136,91,129,136,99,5,
+  200,99,3,40,108,3,103,108,133,39,108,39,108,40,100,200,99,102,108,5,
+  165,124,131,164,124,228,124,56,223,18,255,255,129,247,222,5,162,124,3,225,
+  124,131,225,132,226,132,226,132,3,225,132,3,226,132,135,225,124,161,124,163,
+  116,163,124,162,124,224,124,225,132,3,226,132,23,225,132,130,33,133,33,133,
+  5,226,132,134,227,132,226,132,227,132,226,132,226,132,225,132,3,226,132,132,
+  227,132,224,124,227,132,248,222,21,255,255,131,111,173,128,90,192,90,10,193,
+  98,1,192,98,96,2,15,255,255,136,162,156,96,148,96,148,228,164,189,247,
+  255,255,188,247,228,164,8,96,148,138,97,148,97,148,98,148,98,140,98,140,
+  99,140,99,140,231,156,49,198,123,239,51,255,255,133,183,214,236,156,132,115,
+  105,140,118,206,4,255,255,130,123,239,171,181,11,96,148,133,171,189,255,255,
+  255,255,171,189,171,189,6,255,255,129,104,140,6,192,98,129,243,197,36,255,
+  255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,
+  98,130,132,115,254,255,8,255,255,129,235,156,6,192,98,129,117,206,14,255,
+  255,130,124,239,66,107,7,192,98,129,184,214,9,255,255,129,249,222,6,192,
+  98,129,183,214,13,255,255,129,39,132,5,192,98,129,171,148,6,255,255,129,
+  118,206,6,192,98,129,242,189,16,255,255,130,124,239,132,115,6,192,98,129,
+  236,156,91,255,255,134,190,247,48,182,162,124,96,116,97,124,97,124,5,161,
+  124,135,97,124,97,124,160,124,97,124,160,124,96,124,160,124,8,96,116,138,
+  32,116,32,116,32,108,33,108,33,108,32,108,96,116,96,116,32,116,32,116,
+  4,96,116,137,160,124,161,124,97,124,97,124,98,116,97,116,96,124,224,132,
+  33,133,4,225,132,6,34,133,129,33,133,11,34,133,129,33,133,3,225,132,
+  135,226,132,225,132,225,132,164,124,134,115,196,115,161,124,8,160,124,130,161,
+  124,161,124,4,160,124,129,224,132,6,34,133,130,33,133,33,133,4,225,132,
+  15,226,132,130,225,132,225,132,4,226,132,138,163,132,163,124,100,124,100,124,
+  37,116,197,115,70,107,70,107,7,107,199,106,5,199,98,3,199,106,129,198,
+  106,3,6,107,136,70,107,70,107,134,115,133,115,99,124,35,108,195,99,161,
+  124,3,225,132,144,224,132,225,132,162,124,34,108,161,124,162,124,99,124,195,
+  115,194,107,34,108,34,108,33,116,32,116,32,108,105,157,123,231,38,255,255,
+  132,174,165,164,116,165,124,165,116,3,102,116,134,166,116,165,116,164,124,227,
+  124,226,124,226,124,3,226,132,9,34,133,135,163,124,101,116,198,99,7,75,
+  7,50,198,49,7,75,3,136,91,3,136,99,132,201,99,201,99,200,99,201,
+  99,9,40,108,131,103,108,166,116,165,124,3,229,124,131,164,124,39,141,124,
+  239,18,255,255,132,114,190,160,116,163,124,162,124,3,225,124,3,226,132,4,
+  225,132,137,226,132,225,132,225,124,161,116,163,116,163,116,162,124,224,124,225,
+  132,3,226,132,25,225,132,131,226,132,226,132,227,132,7,226,132,129,225,132,
+  4,226,132,131,224,124,102,149,57,231,20,255,255,132,190,247,237,156,128,90,
+  193,90,9,193,98,131,192,98,192,98,193,98,88,2,15,255,255,129,162,156,
+  3,96,148,133,170,181,255,255,255,255,122,239,163,156,7,96,148,133,97,148,
+  97,148,98,148,98,140,98,140,3,99,140,133,100,140,100,148,43,173,116,206,
+  124,239,45,255,255,133,59,231,178,189,105,140,68,107,68,107,3,67,107,130,
+  105,148,183,214,4,255,255,130,181,222,228,156,10,96,148,132,247,230,255,255,
+  123,239,181,222,6,255,255,129,104,140,6,192,98,129,52,198,36,255,255,129,
+  46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,
+  132,115,254,255,8,255,255,129,177,181,6,192,98,129,104,140,13,255,255,130,
+  189,247,39,132,8,192,98,129,184,214,9,255,255,129,249,222,6,192,98,129,
+  183,214,13,255,255,129,39,132,5,192,98,129,171,148,6,255,255,129,249,222,
+  6,192,98,129,105,140,15,255,255,130,249,222,197,123,7,192,98,129,236,156,
+  90,255,255,132,247,222,39,149,32,108,97,116,3,97,124,4,161,124,3,97,
+  124,3,160,124,132,96,124,160,124,96,116,32,116,6,96,116,130,32,116,32,
+  108,3,33,108,132,32,108,96,116,32,116,32,116,5,96,116,136,160,124,96,
+  124,96,116,160,124,96,124,160,124,224,132,224,132,4,225,132,131,224,132,225,
+  132,33,133,16,34,133,130,33,133,33,133,5,225,132,132,227,132,198,115,133,
+  115,98,124,9,160,124,129,161,124,4,160,124,130,224,132,33,133,5,34,133,
+  3,33,133,130,225,132,225,132,17,226,132,129,225,132,4,226,132,138,163,132,
+  163,124,100,124,100,124,37,116,197,115,134,115,70,107,6,107,199,106,6,199,
+  98,3,199,106,3,6,107,3,70,107,150,134,115,99,124,35,108,131,99,161,
+  124,226,132,225,132,225,132,224,132,224,132,162,124,34,108,161,124,162,124,99,
+  124,195,107,194,107,34,108,34,116,32,108,33,116,239,181,40,255,255,132,189,
+  239,233,132,165,116,166,116,4,165,124,3,166,116,132,165,124,164,124,227,124,
+  227,124,3,226,132,8,34,133,140,226,132,164,124,38,108,135,91,131,41,130,
+  8,199,66,137,91,136,91,136,91,137,91,137,91,3,137,99,4,201,99,129,
+  200,107,7,40,108,130,103,108,166,116,3,165,124,130,163,116,107,157,19,255,
+  255,133,171,165,160,116,225,124,225,124,225,132,4,226,132,129,225,132,3,226,
+  132,137,225,132,224,124,161,116,163,116,163,116,162,116,224,124,225,132,226,132,
+  24,225,132,131,226,132,225,132,225,132,4,226,132,129,225,132,5,226,132,136,
+  225,132,226,132,225,132,226,132,226,132,224,124,168,157,188,239,20,255,255,131,
+  124,239,41,140,128,82,13,193,98,1,192,98,90,2,15,255,255,129,227,164,
+  4,96,148,133,48,206,255,255,255,255,57,239,228,156,6,96,148,133,97,148,
+  97,148,98,148,98,140,98,140,3,99,140,4,100,140,133,102,148,44,173,51,
+  206,58,231,254,255,38,255,255,136,58,231,243,189,171,148,133,115,132,115,68,
+  115,68,107,68,107,3,67,107,132,66,107,66,107,236,156,123,239,3,255,255,
+  130,188,247,170,181,9,96,148,129,39,173,9,255,255,129,104,140,6,192,98,
+  129,176,181,30,58,231,129,59,231,5,255,255,129,46,165,5,192,98,130,1,
+  99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,255,8,255,255,
+  129,249,222,7,192,98,129,112,173,11,255,255,130,248,222,197,123,9,192,98,
+  129,184,214,9,255,255,129,249,222,6,192,98,129,111,173,13,255,255,129,39,
+  132,5,192,98,129,171,148,6,255,255,130,190,247,67,107,6,192,98,129,117,
+  206,12,255,255,131,189,247,176,181,2,107,8,192,98,129,236,156,88,255,255,
+  132,189,247,239,181,97,116,96,116,4,97,124,5,161,124,3,97,124,3,160,
+  124,132,96,124,160,124,96,116,97,116,6,96,116,132,32,116,32,108,33,108,
+  33,108,4,32,108,6,96,116,135,96,124,160,124,96,124,160,124,160,124,224,
+  132,224,132,7,225,132,3,33,133,14,34,133,130,33,133,33,133,5,225,132,
+  134,226,132,37,124,70,115,35,124,161,124,160,132,7,160,124,129,161,124,4,
+  160,124,130,224,132,33,133,4,34,133,130,33,133,33,133,4,225,132,16,226,
+  132,130,225,132,225,132,4,226,132,138,163,132,163,124,100,124,100,124,37,116,
+  197,115,134,115,70,107,6,107,199,106,5,199,98,4,199,106,3,6,107,3,
+  70,107,133,134,115,99,124,35,108,131,99,161,124,4,225,132,140,224,132,162,
+  124,34,108,161,124,162,124,99,124,195,115,194,107,34,108,192,107,100,124,182,
+  206,42,255,255,131,248,214,165,116,165,116,9,166,116,137,165,124,165,124,164,
+  124,227,124,227,124,226,132,226,132,33,133,33,133,5,34,133,137,226,132,227,
+  124,100,116,130,41,0,0,130,8,71,58,73,83,73,83,3,73,91,130,137,
+  91,137,91,4,137,99,131,201,99,200,99,200,99,4,40,108,137,103,108,103,
+  108,103,116,102,116,166,116,166,116,165,124,163,116,48,182,18,255,255,132,188,
+  247,36,141,224,124,225,132,3,226,132,3,225,132,3,226,132,136,224,124,161,
+  116,163,116,163,116,162,116,224,124,225,132,226,132,25,225,132,14,226,132,134,
+  225,132,226,132,226,124,224,124,236,165,190,247,20,255,255,131,59,231,134,123,
+  128,82,8,193,98,129,192,98,3,193,98,3,192,98,157,2,15,255,255,129,
+  39,173,5,96,148,133,180,214,255,255,255,255,123,239,229,164,5,96,148,133,
+  97,148,97,148,98,148,98,140,98,140,3,99,140,4,100,140,3,101,140,134,
+  37,140,169,156,175,181,117,206,58,231,189,247,29,255,255,133,190,247,59,231,
+  117,206,111,173,105,140,4,133,115,132,132,115,68,115,68,107,68,107,3,67,
+  107,3,66,107,130,132,115,51,198,4,255,255,129,113,206,9,96,148,129,247,
+  230,8,255,255,129,104,140,7,192,98,129,0,99,29,192,98,130,132,115,254,
+  255,4,255,255,129,46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,
+  165,5,192,98,130,132,115,254,255,9,255,255,129,105,140,7,192,98,130,171,
+  148,249,222,6,255,255,131,189,247,183,214,171,148,4,192,98,130,132,115,67,
+  107,5,192,98,129,184,214,9,255,255,130,124,239,1,99,6,192,98,134,237,
+  156,183,214,58,231,59,231,59,231,189,247,7,255,255,129,39,132,5,192,98,
+  129,171,148,7,255,255,129,111,173,6,192,98,131,1,99,177,181,125,239,7,
+  255,255,132,190,247,248,222,111,173,132,115,10,192,98,129,39,132,87,255,255,
+  132,246,214,230,140,32,108,97,116,4,97,124,130,160,124,160,124,5,161,124,
+  130,97,124,97,124,3,160,124,130,96,124,160,124,7,96,116,131,32,116,32,
+  116,32,108,3,33,108,3,32,108,134,33,116,96,116,97,116,97,116,33,116,
+  96,116,4,160,124,3,224,132,130,225,132,225,132,3,224,132,5,225,132,129,
+  33,133,4,34,133,130,33,133,33,133,3,34,133,130,33,133,33,133,3,34,
+  133,130,33,133,33,133,4,225,132,135,226,132,100,124,133,115,36,116,161,124,
+  160,124,224,132,11,160,124,130,224,132,225,132,4,34,133,130,33,133,33,133,
+  4,225,132,17,226,132,129,225,132,4,226,132,138,163,132,163,124,100,124,37,
+  124,37,116,197,115,70,115,70,107,6,107,199,106,6,199,98,3,199,106,3,
+  6,107,4,70,107,132,99,124,35,108,131,99,161,116,3,225,132,140,224,132,
+  224,132,99,124,194,107,160,124,162,124,99,124,35,116,194,107,192,99,41,149,
+  123,231,25,255,255,129,59,231,18,255,255,131,49,182,100,108,165,124,12,166,
+  116,147,165,124,165,124,164,124,227,124,226,132,226,132,33,133,33,133,34,133,
+  34,133,226,132,34,133,195,107,3,58,64,33,64,0,65,0,198,41,9,75,
+  3,9,83,3,73,91,3,137,91,133,137,99,137,99,201,99,201,99,200,99,
+  3,40,108,131,39,108,103,116,102,116,3,103,116,131,102,116,101,108,183,206,
+  18,255,255,133,56,223,225,124,225,132,226,132,226,132,4,225,132,138,226,132,
+  226,132,224,124,161,116,163,116,163,116,162,116,224,124,225,132,226,132,26,225,
+  132,129,33,133,10,226,132,3,225,132,132,226,132,226,124,224,124,46,182,21,
+  255,255,131,248,222,68,115,128,90,9,193,98,130,192,98,193,98,4,192,98,
+  1,0,99,201,2,15,255,255,129,172,189,5,96,148,134,97,148,246,222,255,
+  255,255,255,189,247,105,181,4,96,148,133,97,148,97,148,98,148,98,140,98,
+  140,3,99,140,4,100,140,3,101,140,130,37,140,37,140,3,38,140,136,168,
+  148,236,164,176,181,52,198,248,222,59,231,189,247,254,255,16,255,255,135,189,
+  247,123,239,249,222,53,198,177,181,237,156,41,132,3,134,115,5,133,115,132,
+  132,115,68,115,68,107,68,107,3,67,107,4,66,107,131,65,107,235,156,124,
+  239,3,255,255,130,246,222,162,156,7,96,148,129,170,181,8,255,255,129,104,
+  140,37,192,98,130,132,115,254,255,4,255,255,129,46,165,5,192,98,130,1,
+  99,124,239,8,255,255,129,46,165,5,192,98,130,132,115,254,255,9,255,255,
+  130,59,231,67,107,8,192,98,135,133,115,105,148,236,156,236,156,171,148,40,
+  132,67,107,5,192,98,131,132,115,58,231,198,123,5,192,98,129,184,214,10,
+  255,255,129,198,123,9,192,98,131,1,99,0,99,176,181,7,255,255,129,39,
+  132,5,192,98,129,171,148,7,255,255,130,189,247,197,123,7,192,98,137,67,
+  107,105,140,110,173,177,181,177,181,111,173,237,156,105,140,67,115,6,192,98,
+  130,171,148,176,181,6,192,98,132,170,148,177,181,46,165,45,165,81,255,255,
+  133,124,239,172,165,96,116,96,116,98,124,5,97,124,7,161,124,131,97,124,
+  97,124,161,124,4,160,124,7,96,116,149,32,116,32,108,33,108,33,108,32,
+  108,32,108,33,108,32,108,32,108,33,116,96,116,160,124,97,116,97,116,33,
+  116,96,124,160,124,160,124,224,132,160,124,160,124,4,224,132,129,160,132,4,
+  224,132,131,225,132,225,132,33,133,3,34,133,10,33,133,131,34,133,33,133,
+  33,133,4,225,132,135,226,132,163,124,197,115,36,116,98,124,160,124,224,132,
+  11,160,124,130,160,132,224,132,4,34,133,132,33,133,33,133,225,132,225,132,
+  18,226,132,130,225,132,225,132,4,226,132,138,163,124,163,124,100,124,37,124,
+  37,116,197,115,134,115,70,107,6,107,199,106,6,199,98,132,199,106,199,106,
+  198,106,198,106,3,6,107,3,70,107,133,36,124,35,108,131,99,97,116,33,
+  133,4,225,132,136,99,124,194,107,160,116,162,124,162,124,194,107,194,107,241,
+  181,25,255,255,132,254,255,242,181,101,108,182,206,17,255,255,131,190,247,42,
+  141,100,116,17,166,116,148,165,124,228,124,226,124,226,132,226,132,227,124,162,
+  124,196,74,67,66,66,58,64,33,64,0,0,0,4,25,136,66,9,83,201,
+  74,9,83,9,83,73,83,4,73,91,145,137,91,137,91,137,99,201,99,200,
+  99,40,108,200,107,40,108,40,108,103,108,103,116,103,116,166,116,166,116,102,
+  108,103,116,59,231,18,255,255,130,179,198,224,124,5,225,132,132,226,132,226,
+  132,224,124,161,116,3,163,116,131,224,124,225,132,226,132,21,225,132,129,33,
+  133,4,225,132,130,226,132,227,124,4,226,132,140,225,132,226,132,226,132,225,
+  132,226,132,33,133,33,133,225,132,226,132,225,124,225,124,178,198,21,255,255,
+  131,118,206,2,99,128,90,11,193,98,5,192,98,1,0,99,159,2,15,255,
+  255,129,179,214,6,96,148,130,161,148,246,222,3,255,255,129,47,198,3,96,
+  148,133,97,148,97,148,98,148,98,140,98,140,3,99,140,4,100,140,3,101,
+  140,130,37,140,37,140,4,38,140,130,38,132,38,132,3,39,132,135,104,140,
+  170,148,236,156,46,165,111,173,177,181,178,181,5,243,189,135,178,181,177,181,
+  112,173,46,165,236,156,107,140,41,132,3,199,123,129,198,123,5,134,115,5,
+  133,115,132,132,115,68,115,68,107,68,107,3,67,107,4,66,107,132,65,107,
+  65,107,132,123,124,239,3,255,255,130,122,239,228,164,6,96,148,130,161,156,
+  124,247,7,255,255,129,104,140,37,192,98,130,132,115,254,255,4,255,255,129,
+  46,165,5,192,98,130,1,99,124,239,8,255,255,129,46,165,5,192,98,130,
+  132,115,254,255,10,255,255,130,248,222,67,107,18,192,98,132,198,123,59,231,
+  255,255,132,115,5,192,98,129,184,214,10,255,255,129,52,198,11,192,98,129,
+  112,173,7,255,255,129,39,132,5,192,98,129,171,148,8,255,255,130,123,239,
+  198,123,19,192,98,132,67,107,242,189,255,255,123,239,9,192,98,129,132,115,
+  80,255,255,134,116,206,164,124,32,108,97,116,98,116,98,124,4,97,124,132,
+  161,124,161,124,160,124,160,124,4,161,124,4,97,124,131,160,124,160,124,96,
+  124,6,96,116,145,32,116,32,116,33,108,33,108,32,108,32,116,32,108,33,
+  108,32,116,97,116,33,116,97,116,34,116,33,116,96,116,96,116,96,124,5,
+  160,124,131,224,132,224,132,160,132,5,160,124,3,225,132,129,33,133,3,34,
+  133,3,33,133,130,225,132,225,132,7,33,133,4,225,132,137,226,132,225,132,
+  227,132,37,124,196,115,99,124,161,124,160,132,224,132,11,160,124,130,224,132,
+  33,133,3,34,133,129,33,133,3,225,132,18,226,132,3,225,132,3,226,132,
+  141,163,132,163,124,100,124,100,124,37,116,197,115,134,115,70,107,6,107,199,
+  106,199,98,199,98,135,98,3,199,98,3,199,106,129,198,106,3,6,107,3,
+  70,107,133,36,116,35,108,131,99,97,116,33,133,4,225,132,135,99,124,194,
+  107,160,116,162,124,97,116,102,124,183,214,25,255,255,134,124,239,109,149,37,
+  108,102,108,169,132,189,247,17,255,255,131,58,223,166,116,165,116,9,166,116,
+  5,166,124,5,166,116,144,165,116,165,116,165,124,37,108,198,82,197,74,133,
+  74,68,58,67,41,129,16,0,0,66,8,199,49,137,66,201,74,201,74,4,
+  9,83,3,73,91,135,137,91,137,99,137,99,201,99,201,99,200,99,200,107,
+  5,40,108,132,103,116,38,108,235,132,190,247,18,255,255,137,234,165,224,124,
+  225,132,225,132,226,132,226,132,225,132,224,124,162,116,3,163,116,131,161,124,
+  225,132,226,132,15,225,132,129,226,132,10,225,132,11,226,132,3,33,133,132,
+  226,132,224,124,35,133,246,214,21,255,255,131,242,189,193,90,192,90,10,193,
+  98,3,192,98,5,0,99,169,2,15,255,255,130,123,239,161,148,6,96,148,
+  130,161,148,246,222,3,255,255,136,246,222,228,164,96,148,97,148,97,148,98,
+  148,98,140,98,140,3,99,140,4,100,140,3,101,140,130,37,140,37,140,4,
+  38,140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,199,123,129,198,
+  123,5,134,115,5,133,115,132,132,115,68,115,68,107,68,107,3,67,107,4,
+  66,107,132,65,107,66,107,242,189,254,255,4,255,255,130,123,239,229,164,6,
+  96,148,129,179,214,7,255,255,129,39,132,37,192,98,130,67,107,254,255,4,
+  255,255,129,45,165,6,192,98,129,124,239,8,255,255,129,46,165,5,192,98,
+  130,67,107,254,255,11,255,255,130,59,231,105,140,15,192,98,134,1,99,46,
+  165,190,247,255,255,255,255,132,115,5,192,98,129,183,214,11,255,255,129,45,
+  165,10,192,98,129,111,173,7,255,255,129,198,131,5,192,98,129,170,148,9,
+  255,255,131,190,247,46,165,1,99,15,192,98,131,68,115,111,173,124,239,3,
+  255,255,129,46,165,8,192,98,129,133,123,78,255,255,136,58,231,42,149,33,
+  108,33,116,98,116,98,116,98,124,98,124,4,97,124,132,161,124,161,124,160,
+  124,160,124,4,161,124,3,97,124,133,161,124,160,124,160,124,97,116,97,116,
+  4,96,116,3,32,116,142,33,108,33,108,32,108,33,108,33,108,33,116,96,
+  116,96,116,33,116,160,124,97,116,33,116,96,116,96,116,3,160,124,129,224,
+  124,3,224,132,132,160,132,160,124,160,124,161,124,3,160,124,3,224,132,129,
+  33,133,3,34,133,130,33,133,33,133,3,225,132,130,33,133,225,132,5,33,
+  133,6,225,132,135,226,132,100,124,196,115,99,124,161,124,160,132,224,132,11,
+  160,124,130,224,132,225,132,3,34,133,131,33,133,33,133,225,132,19,226,132,
+  130,225,132,225,132,3,226,132,140,162,132,163,132,163,124,100,124,100,124,37,
+  116,197,115,134,115,70,107,6,107,199,106,199,98,4,135,98,133,199,98,199,
+  98,199,106,199,106,198,106,3,6,107,3,70,107,133,36,116,99,116,131,99,
+  97,116,33,133,4,225,132,134,99,124,194,107,96,116,96,116,107,165,188,239,
+  25,255,255,135,183,206,169,124,38,108,103,116,103,116,37,108,110,157,18,255,
+  255,130,117,198,100,108,10,166,116,6,166,124,8,166,116,150,167,116,103,116,
+  103,116,39,108,135,99,6,83,69,66,68,41,70,41,9,58,73,66,137,66,
+  138,66,138,74,201,74,201,74,9,83,73,83,73,91,73,91,137,91,137,91,
+  3,137,99,137,201,99,201,99,200,107,40,108,200,107,40,108,40,108,198,99,
+  112,165,18,255,255,142,189,247,101,149,224,124,226,132,226,132,225,132,224,124,
+  162,116,163,116,163,116,162,116,161,124,225,124,226,132,25,225,132,132,226,132,
+  226,132,226,124,225,132,8,226,132,3,225,132,132,226,132,224,124,37,141,57,
+  231,21,255,255,131,46,165,128,90,192,90,10,193,98,133,192,98,192,98,193,
+  98,192,98,192,98,4,0,99,184,2,16,255,255,129,39,173,7,96,148,130,
+  97,148,180,214,3,255,255,135,189,247,237,189,97,148,97,148,98,148,98,140,
+  98,140,3,99,140,4,100,140,3,101,140,130,37,140,37,140,4,38,140,130,
+  38,132,38,132,11,39,132,130,199,131,199,131,12,199,123,129,198,123,5,134,
+  115,5,133,115,132,132,115,68,115,68,107,68,107,3,67,107,4,66,107,130,
+  38,132,249,222,7,255,255,130,123,239,228,164,5,96,148,129,171,181,7,255,
+  255,129,237,164,37,198,131,129,106,148,5,255,255,129,177,181,5,198,131,130,
+  40,132,124,239,8,255,255,129,242,189,5,198,131,129,170,148,14,255,255,131,
+  182,214,171,148,67,107,10,192,98,131,133,123,111,173,59,231,4,255,255,129,
+  170,148,5,198,131,129,249,222,12,255,255,139,182,214,171,148,133,115,1,107,
+  0,99,192,98,1,99,1,107,67,107,132,115,243,189,7,255,255,129,236,156,
+  5,198,131,129,111,173,11,255,255,131,58,231,45,165,132,115,10,192,98,132,
+  132,115,171,148,52,198,189,247,6,255,255,131,242,189,133,123,0,99,4,192,
+  98,130,1,107,105,140,77,255,255,132,50,190,99,116,33,108,34,116,3,98,
+  116,3,97,124,11,161,124,3,97,124,3,160,124,130,97,116,97,116,4,96,
+  116,131,32,116,32,116,33,116,4,33,108,147,33,116,96,116,96,116,97,116,
+  98,116,160,124,98,116,97,124,161,124,97,124,96,124,160,124,224,124,225,132,
+  160,132,224,132,224,132,160,132,160,124,4,161,124,134,160,124,160,124,224,132,
+  225,132,225,132,33,133,3,34,133,129,33,133,3,225,132,131,33,133,225,132,
+  225,132,5,33,133,3,225,132,137,226,132,225,132,225,132,163,124,197,115,35,
+  124,161,124,160,124,224,132,11,160,124,130,160,132,224,132,3,34,133,131,33,
+  133,225,132,225,132,19,226,132,130,225,132,225,132,4,226,132,140,163,124,163,
+  124,100,124,100,124,37,116,197,115,134,115,70,107,6,107,199,106,199,98,199,
+  98,3,135,98,133,199,98,199,98,199,106,199,106,198,106,3,6,107,3,70,
+  107,141,36,116,99,116,130,99,97,116,33,133,225,132,226,132,225,132,225,132,
+  163,124,193,99,97,116,114,198,26,255,255,131,51,182,39,108,38,108,4,103,
+  108,130,38,108,117,198,18,255,255,130,174,165,100,116,9,166,116,131,166,124,
+  166,116,166,116,4,166,124,3,165,124,4,166,124,5,166,116,150,167,124,167,
+  124,103,116,199,107,72,91,73,74,201,74,73,91,136,99,73,91,73,91,9,
+  83,9,83,10,83,9,83,73,83,73,91,73,91,137,91,137,91,137,99,137,
+  99,3,201,99,133,200,107,40,108,40,108,199,99,53,190,18,255,255,134,56,
+  223,226,132,225,132,225,132,224,124,162,116,3,163,116,131,161,124,225,124,226,
+  132,8,225,132,129,33,133,11,225,132,129,226,132,5,225,132,132,226,132,226,
+  124,226,132,227,124,7,226,132,135,225,132,226,132,225,132,226,132,160,124,168,
+  157,123,239,20,255,255,132,190,255,171,148,128,90,192,98,11,193,98,4,192,
+  98,5,0,99,110,2,16,255,255,129,179,214,9,96,148,129,48,206,4,255,
+  255,133,247,230,40,173,98,148,98,140,98,140,3,99,140,4,100,140,3,101,
+  140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,131,
+  199,131,12,199,123,129,198,123,5,134,115,5,133,115,132,132,115,68,115,68,
+  107,68,107,3,67,107,3,66,107,130,45,165,189,247,5,255,255,134,183,214,
+  124,239,255,255,255,255,122,239,163,156,4,96,148,130,228,164,254,255,89,255,
+  255,140,189,247,184,214,242,189,46,165,236,156,171,148,171,148,236,156,111,173,
+  52,198,249,222,254,255,27,255,255,136,254,255,124,239,58,231,250,230,59,231,
+  124,239,189,247,254,255,28,255,255,140,190,247,248,222,243,189,46,165,236,156,
+  171,148,171,156,45,165,176,181,52,198,249,222,190,247,11,255,255,134,58,231,
+  183,214,117,206,117,206,248,222,124,239,76,255,255,133,57,223,40,149,33,108,
+  34,116,34,116,3,98,116,131,98,124,97,124,97,124,12,161,124,135,98,124,
+  98,124,97,124,160,124,160,124,96,124,97,116,4,96,116,3,32,116,129,33,
+  116,4,33,108,146,32,116,97,116,97,124,161,124,97,116,97,116,33,116,160,
+  124,97,124,97,124,224,124,224,124,160,124,160,124,161,124,160,132,160,124,160,
+  124,3,161,124,132,97,124,161,124,161,124,224,132,3,225,132,131,33,133,34,
+  133,34,133,4,33,133,5,225,132,132,33,133,34,133,34,133,33,133,6,225,
+  132,135,163,124,197,115,196,115,162,124,160,124,224,132,160,132,11,160,124,132,
+  224,132,33,133,34,133,34,133,3,225,132,18,226,132,3,225,132,4,226,132,
+  139,163,132,163,124,100,124,100,124,37,116,197,115,134,115,70,107,6,107,199,
+  106,199,98,4,135,98,133,199,98,199,98,199,106,199,106,198,106,4,6,107,
+  135,70,107,70,107,36,116,99,116,131,99,33,108,33,133,4,225,132,131,97,
+  116,102,124,247,214,25,255,255,131,189,239,109,149,38,100,4,39,108,133,103,
+  108,103,108,38,108,104,116,124,239,17,255,255,131,124,239,168,124,101,116,11,
+  166,116,132,165,124,165,124,166,124,166,124,7,165,124,129,166,124,9,166,116,
+  130,103,116,103,116,3,166,116,134,103,116,103,116,40,108,40,108,200,99,73,
+  91,3,10,83,133,73,91,73,91,137,91,137,99,137,99,4,201,99,131,200,
+  99,200,99,250,222,18,255,255,132,113,190,160,116,224,124,162,116,3,163,116,
+  131,161,124,225,124,226,132,20,225,132,136,226,132,225,132,225,132,226,132,225,
+  132,225,132,226,132,227,124,8,226,132,136,225,132,226,132,225,132,33,133,226,
+  132,160,124,170,165,189,247,20,255,255,131,124,239,40,140,128,90,10,193,98,
+  5,192,98,7,0,99,50,2,16,255,255,130,189,247,163,156,9,96,148,130,
+  171,189,190,247,4,255,255,131,180,214,230,156,98,140,3,99,140,4,100,140,
+  3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,
+  199,131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,132,132,115,68,
+  115,68,107,68,107,3,67,107,131,66,107,40,140,183,214,5,255,255,137,254,
+  255,111,173,0,99,197,123,123,239,255,255,255,255,55,231,161,148,3,96,148,
+  130,161,148,123,239,127,255,255,127,255,255,13,255,255,132,189,247,239,181,99,
+  124,32,116,3,34,116,134,98,116,97,116,98,116,98,124,97,124,97,124,12,
+  161,124,133,98,124,98,124,97,124,160,124,160,124,3,97,116,3,96,116,3,
+  32,116,5,33,108,138,33,116,160,124,160,124,162,124,98,124,97,124,96,116,
+  160,124,160,124,96,124,4,160,124,3,161,124,132,160,124,161,124,162,124,98,
+  124,3,161,124,130,225,132,225,132,3,34,133,130,225,132,225,132,4,33,133,
+  5,225,132,145,33,133,33,133,34,133,33,133,225,132,225,132,226,132,226,132,
+  225,132,225,132,226,132,37,116,133,115,98,124,160,124,160,124,160,132,11,160,
+  124,135,224,132,33,133,34,133,33,133,33,133,225,132,225,132,7,226,132,130,
+  225,132,225,132,9,226,132,3,225,132,4,226,132,139,163,124,163,124,100,124,
+  101,124,37,116,197,115,134,115,70,107,6,107,198,106,199,98,5,135,98,132,
+  199,98,199,106,199,106,198,106,4,6,107,141,70,107,70,107,196,115,99,116,
+  131,99,34,108,33,133,225,132,225,132,224,124,160,124,237,173,125,239,25,255,
+  255,134,248,214,169,124,38,100,39,108,40,108,40,108,4,39,108,131,103,108,
+  38,108,45,149,18,255,255,136,248,214,102,108,102,116,166,116,166,116,102,116,
+  166,116,166,124,3,166,116,130,166,124,166,116,7,166,124,5,165,124,132,166,
+  124,166,124,165,124,166,124,14,166,116,137,103,116,103,116,40,108,137,91,9,
+  83,202,74,202,82,10,83,74,83,3,73,91,134,137,99,201,99,201,99,136,
+  91,107,116,125,239,18,255,255,136,170,157,96,108,163,116,163,116,162,116,161,
+  124,225,124,226,132,9,225,132,129,33,133,7,225,132,132,226,132,225,132,226,
+  132,226,132,4,225,132,129,33,133,10,226,132,3,225,132,132,226,132,226,132,
+  224,124,47,182,21,255,255,132,250,230,133,123,128,90,193,98,3,192,98,6,
+  193,98,5,192,98,8,0,99,40,2,17,255,255,129,48,206,10,96,148,130,
+  38,165,57,231,4,255,255,133,190,255,115,206,231,156,99,140,99,140,4,100,
+  140,3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,
+  130,199,131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,137,132,115,
+  68,115,68,107,68,107,67,107,67,107,198,123,243,189,254,255,5,255,255,130,
+  58,231,104,140,3,0,99,133,197,123,58,231,255,255,255,255,114,214,4,96,
+  148,129,56,231,127,255,255,127,255,255,12,255,255,142,246,214,230,140,33,116,
+  98,116,98,116,35,116,34,116,34,116,98,116,97,116,98,116,98,124,98,124,
+  97,124,12,161,124,135,97,124,97,124,161,124,160,124,96,124,97,116,97,116,
+  5,96,116,145,32,116,32,116,33,116,33,116,33,108,32,108,33,108,97,116,
+  160,124,160,124,161,124,162,124,161,124,98,124,96,124,160,124,96,124,3,160,
+  124,5,161,124,135,224,132,225,132,225,132,225,124,162,124,225,132,226,132,4,
+  34,133,132,226,132,34,133,33,133,33,133,7,225,132,4,33,133,6,225,132,
+  135,226,132,37,124,70,107,36,124,161,124,160,124,160,132,3,160,124,129,96,
+  124,7,160,124,135,160,132,224,132,34,133,34,133,33,133,225,132,225,132,8,
+  226,132,129,225,132,9,226,132,3,225,132,4,226,132,139,163,124,163,124,100,
+  124,100,124,37,116,197,115,134,115,70,107,6,107,198,106,199,98,5,135,98,
+  132,199,98,199,106,199,106,198,106,4,6,107,139,70,107,70,107,197,115,99,
+  116,131,99,33,108,33,133,225,132,160,124,226,132,179,206,26,255,255,134,243,
+  181,199,99,199,99,39,108,39,108,200,107,7,39,108,130,198,99,52,182,18,
+  255,255,133,242,173,37,108,103,116,102,116,102,116,3,166,116,136,166,124,166,
+  116,166,116,103,116,102,116,166,116,166,124,166,116,9,166,124,130,165,124,166,
+  124,16,166,116,135,102,116,103,116,103,116,40,108,200,99,73,91,202,82,3,
+  202,74,135,10,83,73,91,73,91,137,91,137,99,197,99,172,165,18,255,255,
+  133,188,239,230,132,98,116,162,116,160,124,17,225,132,7,226,132,132,33,133,
+  225,132,225,132,33,133,11,226,132,134,33,133,225,132,225,132,225,124,225,124,
+  178,198,21,255,255,131,183,214,67,107,128,90,3,193,98,3,192,98,137,193,
+  98,192,98,192,98,193,98,192,98,0,99,192,98,0,99,192,98,9,0,99,
+  55,2,15,255,255,132,189,247,255,255,189,247,228,164,10,96,148,130,97,148,
+  113,206,5,255,255,131,254,255,181,214,41,165,4,100,140,3,101,140,130,37,
+  140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,
+  199,123,129,198,123,5,134,115,5,133,115,135,132,115,68,115,68,107,68,107,
+  198,123,242,189,189,247,6,255,255,131,242,189,67,115,1,107,4,0,99,133,
+  132,115,58,231,255,255,255,255,170,181,3,96,148,129,181,222,127,255,255,127,
+  255,255,10,255,255,135,188,239,237,173,161,124,97,116,99,124,99,116,98,116,
+  3,34,116,134,98,116,97,116,97,116,97,124,98,124,98,124,12,161,124,141,
+  97,124,97,124,160,124,160,124,97,124,98,116,97,116,96,116,96,116,32,116,
+  96,116,32,116,32,116,3,33,116,134,32,116,33,116,96,116,97,116,96,116,
+  160,124,3,224,132,130,161,124,161,124,4,160,124,130,224,132,161,132,8,225,
+  132,129,33,133,4,34,133,131,225,132,34,133,34,133,15,33,133,129,225,132,
+  3,226,132,140,225,132,225,132,100,124,70,107,36,116,161,124,160,124,160,132,
+  160,132,160,124,160,124,96,124,8,160,124,131,224,132,33,133,33,133,3,225,
+  132,5,226,132,5,225,132,8,226,132,3,225,132,4,226,132,139,162,124,163,
+  124,100,124,100,124,37,116,197,115,134,115,70,107,6,107,199,106,199,98,5,
+  135,98,132,199,98,199,98,199,106,198,106,4,6,107,138,70,107,70,107,197,
+  115,99,124,131,99,193,107,33,133,160,124,103,149,57,231,25,255,255,134,125,
+  239,111,149,198,99,199,107,40,108,199,107,11,39,108,129,58,223,17,255,255,
+  153,190,247,235,132,38,108,103,116,103,116,166,116,102,116,102,116,166,124,166,
+  116,166,124,103,116,103,116,166,116,166,124,166,116,166,116,166,124,166,116,166,
+  116,166,124,166,124,166,116,166,116,166,124,5,166,116,131,166,124,166,116,102,
+  116,5,166,116,3,102,116,131,103,116,103,116,102,116,5,103,116,140,39,108,
+  200,99,137,91,73,91,73,83,9,83,73,83,73,91,38,108,226,124,160,116,
+  114,190,18,255,255,133,248,214,162,116,160,124,225,132,226,132,4,225,132,131,
+  33,133,225,132,226,132,9,225,132,133,226,132,226,132,225,132,225,132,226,132,
+  3,225,132,130,33,133,225,132,4,226,132,130,227,132,227,132,4,226,132,4,
+  225,132,131,225,124,227,132,245,214,21,255,255,132,52,198,193,98,192,90,193,
+  98,12,192,98,12,0,99,42,2,15,255,255,132,47,198,245,222,255,255,180,
+  222,12,96,148,130,104,173,57,231,6,255,255,132,248,230,174,181,166,148,100,
+  140,3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,
+  130,199,131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,133,132,115,
+  68,115,105,140,51,198,189,247,6,255,255,133,248,222,104,140,65,107,1,107,
+  1,107,5,0,99,136,132,115,58,231,255,255,188,247,163,156,96,148,96,148,
+  179,214,127,255,255,127,255,255,9,255,255,136,179,206,36,141,96,116,162,124,
+  162,124,98,124,98,116,98,116,3,34,116,134,98,116,97,116,97,116,97,124,
+  98,124,98,124,12,161,124,136,97,124,97,124,160,124,96,124,97,116,97,116,
+  96,116,96,116,4,32,116,3,33,116,145,97,116,33,116,33,116,160,124,97,
+  116,33,116,160,124,224,124,161,124,160,124,160,124,97,124,160,124,224,132,161,
+  124,160,124,224,132,3,225,132,129,33,133,3,34,133,131,225,132,33,133,33,
+  133,6,34,133,4,33,133,129,225,132,8,33,133,132,225,132,33,133,33,133,
+  225,132,3,226,132,135,225,132,225,132,164,124,134,115,196,115,162,124,96,124,
+  13,160,124,131,224,132,33,133,33,133,3,225,132,4,226,132,6,225,132,8,
+  226,132,3,225,132,4,226,132,139,162,132,163,124,100,124,100,124,37,116,197,
+  115,134,115,70,107,6,107,198,106,199,106,5,135,98,132,199,98,199,98,199,
+  106,198,106,4,6,107,137,70,107,70,107,133,115,99,124,131,99,129,99,225,
+  124,45,182,190,247,25,255,255,133,248,214,170,124,198,99,39,108,40,108,12,
+  39,108,131,198,99,172,132,190,247,17,255,255,131,58,223,103,116,102,108,4,
+  103,116,3,166,116,134,103,116,40,108,103,116,166,116,166,116,103,116,9,166,
+  116,131,166,124,166,124,102,116,3,166,116,144,102,116,166,116,102,116,102,116,
+  166,116,166,116,103,116,103,116,166,116,102,116,103,116,102,116,103,116,103,116,
+  102,116,102,116,3,166,116,139,167,116,103,116,103,116,39,108,40,108,39,108,
+  102,116,164,116,162,124,226,124,55,223,18,255,255,131,112,190,160,116,226,132,
+  6,225,132,131,226,132,226,132,33,133,7,225,132,6,226,132,129,33,133,5,
+  225,132,8,226,132,3,225,132,132,226,132,161,124,101,141,56,223,21,255,255,
+  131,112,181,192,90,192,90,7,192,98,3,0,99,130,192,98,192,98,14,0,
+  99,64,2,15,255,255,133,105,181,228,164,254,255,255,255,170,181,11,96,148,
+  132,97,148,98,148,239,197,189,247,6,255,255,135,189,247,117,214,108,173,102,
+  140,101,140,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,
+  131,199,131,12,199,123,129,198,123,5,134,115,4,133,115,131,198,123,46,165,
+  183,214,7,255,255,135,124,239,45,165,66,107,65,107,65,107,1,107,1,107,
+  6,0,99,135,132,115,59,231,255,255,180,214,96,148,96,148,179,214,127,255,
+  255,127,255,255,7,255,255,137,121,231,169,165,160,124,160,124,161,124,162,124,
+  162,124,98,124,98,124,5,98,116,136,97,116,97,124,97,124,98,124,98,124,
+  161,124,161,124,162,124,9,161,124,4,97,124,3,97,116,4,32,116,3,33,
+  116,139,34,116,97,116,97,116,33,116,33,116,33,108,97,116,161,124,97,124,
+  97,124,96,124,3,160,124,132,160,132,160,124,160,124,224,132,3,225,132,135,
+  33,133,34,133,34,133,33,133,33,133,34,133,225,132,5,34,133,4,33,133,
+  132,225,132,225,132,33,133,225,132,6,33,133,4,225,132,129,226,132,4,225,
+  132,135,163,124,198,115,196,115,97,124,97,124,33,124,96,124,3,160,124,129,
+  96,124,7,160,124,131,224,132,225,132,33,133,3,225,132,4,226,132,5,225,
+  132,9,226,132,3,225,132,4,226,132,139,162,132,163,124,100,124,100,124,37,
+  116,197,115,134,115,70,107,6,107,198,106,199,98,6,135,98,131,199,98,199,
+  106,198,106,5,6,107,134,70,107,133,115,99,124,66,91,36,116,245,214,26,
+  255,255,131,244,181,40,108,199,99,7,39,108,129,199,107,5,39,108,133,199,
+  99,199,99,39,108,133,91,178,165,18,255,255,140,117,190,38,108,103,108,103,
+  116,39,108,40,108,103,116,103,116,102,116,166,116,40,108,103,108,6,103,116,
+  130,166,116,166,116,3,103,116,147,166,116,166,124,166,116,103,116,166,116,166,
+  116,103,116,103,116,102,116,103,116,103,116,166,116,166,116,103,116,102,116,102,
+  116,166,116,166,116,102,116,3,103,116,129,102,116,3,103,116,129,102,116,5,
+  166,116,134,103,116,103,116,166,116,163,116,37,141,189,247,17,255,255,131,254,
+  255,169,165,224,124,4,225,132,6,226,132,5,225,132,5,226,132,4,225,132,
+  131,33,133,226,132,225,132,4,226,132,129,225,132,3,226,132,135,225,132,225,
+  132,33,133,225,132,160,124,168,157,123,239,20,255,255,133,254,255,237,156,128,
+  90,192,98,193,98,3,192,98,3,0,99,3,192,98,17,0,99,86,2,15,
+  255,255,134,38,173,96,148,48,206,255,255,188,247,227,156,10,96,148,134,97,
+  148,97,148,98,148,165,156,114,206,190,247,7,255,255,132,124,239,117,214,109,
+  173,168,148,4,38,140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,
+  199,123,129,198,123,5,134,115,133,133,115,199,123,237,156,117,206,124,239,7,
+  255,255,132,189,247,177,181,132,115,66,107,3,65,107,130,1,107,1,107,7,
+  0,99,134,132,115,123,239,255,255,103,173,96,148,179,214,9,255,255,134,125,
+  239,52,198,112,181,176,181,117,206,190,247,3,255,255,131,59,231,183,214,250,
+  230,96,255,255,131,249,222,183,214,123,239,21,255,255,133,249,222,242,189,111,
+  173,178,189,248,222,13,255,255,131,58,231,183,214,58,231,16,255,255,131,123,
+  239,183,214,249,222,78,255,255,139,190,247,113,198,226,132,160,124,225,132,161,
+  132,161,124,162,124,162,124,98,124,98,124,5,98,116,133,97,116,97,124,97,
+  124,161,124,162,124,12,161,124,5,97,124,130,97,116,33,116,4,32,116,3,
+  33,116,145,34,116,33,116,33,116,97,116,97,116,96,116,160,124,97,116,96,
+  124,32,116,96,116,96,116,96,124,160,124,160,124,161,124,224,132,4,225,132,
+  135,33,133,34,133,33,133,225,132,225,132,33,133,225,132,4,34,133,8,33,
+  133,3,225,132,132,33,133,34,133,33,133,33,133,4,225,132,3,226,132,137,
+  225,132,225,132,227,132,37,116,133,115,97,124,96,124,34,124,96,124,3,160,
+  124,129,96,124,7,160,124,131,160,132,224,132,33,133,3,225,132,4,226,132,
+  4,225,132,10,226,132,3,225,132,4,226,132,139,163,132,163,124,164,124,100,
+  124,37,124,197,115,134,115,70,107,6,107,199,106,199,106,6,135,98,131,199,
+  98,199,106,198,106,4,6,107,134,70,107,70,107,133,107,97,116,170,132,59,
+  231,25,255,255,134,124,239,47,149,134,91,200,99,200,99,200,107,10,39,108,
+  136,199,107,39,108,39,108,199,99,39,108,199,99,198,99,184,206,18,255,255,
+  133,110,157,198,99,103,116,39,108,40,108,3,103,116,131,102,116,39,108,39,
+  108,11,103,116,134,102,116,166,116,103,116,103,116,102,116,102,116,10,103,116,
+  129,102,116,11,103,116,8,166,116,130,163,116,172,165,18,255,255,131,123,239,
+  36,141,224,124,8,226,132,131,225,132,225,132,226,132,3,225,132,9,226,132,
+  132,225,132,33,133,226,132,227,124,6,226,132,4,225,132,131,224,124,235,165,
+  189,247,20,255,255,134,124,239,106,148,128,82,192,98,192,98,193,98,3,192,
+  98,130,0,99,192,98,4,0,99,129,192,98,16,0,99,112,2,15,255,255,
+  135,163,156,96,148,161,148,57,231,255,255,56,231,97,148,9,96,148,136,97,
+  148,97,148,98,148,98,140,98,140,231,156,115,206,189,247,8,255,255,135,189,
+  247,248,222,242,189,44,165,104,148,38,132,38,132,11,39,132,130,199,131,199,
+  131,12,199,123,136,198,123,134,115,134,115,199,123,171,148,112,173,183,214,189,
+  247,8,255,255,131,189,247,242,189,197,123,3,66,107,3,65,107,130,1,107,
+  1,107,7,0,99,134,104,140,189,247,255,255,56,231,96,148,181,222,8,255,
+  255,130,51,198,67,107,4,192,98,135,132,115,183,214,255,255,255,255,237,164,
+  192,98,105,140,46,255,255,132,249,222,45,165,111,173,254,255,46,255,255,131,
+  133,123,192,98,176,181,20,255,255,129,237,164,5,192,98,130,105,140,189,247,
+  11,255,255,131,236,156,192,98,105,140,11,255,255,136,118,206,45,165,178,189,
+  255,255,255,255,112,173,192,98,132,115,77,255,255,131,56,223,102,149,160,124,
+  3,225,132,134,161,132,161,124,162,124,162,124,98,124,98,124,5,98,116,134,
+  97,116,97,124,98,124,161,124,161,124,162,124,12,161,124,134,97,124,97,124,
+  96,124,97,116,97,116,33,116,4,32,116,129,33,116,3,97,116,133,33,116,
+  33,116,160,124,97,124,97,116,7,96,116,132,160,124,225,132,224,132,224,132,
+  4,225,132,4,33,133,130,225,132,33,133,3,34,133,10,33,133,3,225,132,
+  134,33,133,34,133,33,133,33,133,225,132,225,132,5,226,132,138,225,132,225,
+  132,226,132,37,124,70,107,34,124,96,124,96,124,160,132,160,132,11,160,124,
+  129,224,132,4,225,132,4,226,132,5,225,132,9,226,132,3,225,132,4,226,
+  132,139,162,132,163,124,163,124,100,124,37,124,197,115,134,115,70,107,6,107,
+  6,107,199,106,6,135,98,132,199,98,199,106,199,106,198,106,3,6,107,132,
+  70,107,5,107,69,107,48,190,26,255,255,131,249,214,42,116,134,91,4,200,
+  99,129,200,107,3,40,108,6,39,108,129,199,99,5,39,108,131,198,99,41,
+  108,124,239,17,255,255,141,189,239,170,124,38,108,40,108,40,108,39,108,39,
+  108,103,108,103,116,39,108,39,108,103,108,39,108,3,103,108,129,39,108,3,
+  103,108,8,103,116,135,103,108,103,116,103,116,40,108,103,108,39,108,40,108,
+  12,103,116,129,39,116,3,103,116,138,103,108,103,116,103,116,103,108,103,108,
+  103,116,166,116,166,116,100,108,50,190,18,255,255,132,246,214,224,124,225,132,
+  225,132,13,226,132,131,225,132,226,132,225,132,4,226,132,130,225,132,33,133,
+  5,226,132,131,225,132,226,132,226,132,4,225,132,130,225,124,112,190,21,255,
+  255,131,58,231,134,123,128,90,3,192,98,130,0,99,192,98,25,0,99,115,
+  2,15,255,255,135,162,156,96,148,96,148,38,165,190,255,255,255,179,214,9,
+  96,148,138,97,148,97,148,98,148,98,140,98,140,99,140,99,140,167,156,49,
+  198,124,239,10,255,255,135,189,247,58,231,117,206,176,181,45,165,170,148,40,
+  132,7,39,132,130,199,131,199,131,10,199,123,134,40,132,171,148,46,165,243,
+  189,184,214,124,239,10,255,255,132,124,239,177,181,198,123,67,107,4,66,107,
+  3,65,107,130,1,107,1,107,6,0,99,135,105,140,190,247,255,255,190,247,
+  189,247,104,181,246,222,7,255,255,142,52,198,192,98,192,98,67,107,171,148,
+  170,148,1,99,192,98,1,99,58,231,255,255,45,165,192,98,105,140,46,255,
+  255,132,52,198,192,98,2,107,254,255,46,255,255,131,198,123,192,98,177,181,
+  19,255,255,137,177,181,192,98,192,98,236,156,176,181,171,148,192,98,192,98,
+  235,156,11,255,255,131,236,156,192,98,106,148,11,255,255,136,111,173,192,98,
+  198,123,255,255,255,255,118,206,171,148,111,173,75,255,255,142,188,247,46,182,
+  225,132,224,124,225,132,226,132,225,132,225,132,161,132,161,124,162,124,162,124,
+  98,124,98,124,5,98,116,134,97,116,97,124,98,124,161,124,161,124,162,124,
+  12,161,124,3,97,124,130,97,116,97,116,5,32,116,136,97,116,97,116,33,
+  116,34,116,97,116,97,116,96,116,97,116,4,96,116,3,160,124,131,224,132,
+  225,132,161,132,4,225,132,129,33,133,3,225,132,133,33,133,33,133,225,132,
+  33,133,34,133,6,33,133,129,225,132,4,33,133,3,225,132,4,33,133,130,
+  225,132,225,132,6,226,132,138,225,132,225,132,226,132,101,124,70,107,195,115,
+  96,124,96,124,224,132,160,132,11,160,124,129,224,132,3,225,132,5,226,132,
+  6,225,132,7,226,132,5,225,132,3,226,132,139,162,132,163,124,163,124,100,
+  124,37,124,197,115,134,115,70,107,6,107,6,107,199,106,7,135,98,131,199,
+  106,199,106,198,106,3,6,107,131,197,98,137,123,184,214,26,255,255,131,243,
+  173,199,99,199,99,5,200,99,3,200,107,3,200,99,133,199,99,199,107,199,
+  107,199,99,199,99,3,39,108,3,199,99,130,134,91,47,149,18,255,255,132,
+  248,214,39,108,199,107,200,107,4,39,108,130,200,107,200,107,9,39,108,6,
+  103,116,3,40,108,129,103,116,4,40,108,9,103,116,131,39,116,103,116,103,
+  116,9,40,108,135,39,108,102,116,166,116,166,116,165,116,165,116,57,223,18,
+  255,255,130,46,182,224,124,16,226,132,129,225,132,3,226,132,130,225,132,225,
+  132,5,226,132,131,225,132,226,132,226,132,3,225,132,131,225,124,226,132,179,
+  206,21,255,255,137,184,222,68,107,128,90,0,99,0,99,192,98,0,99,0,
+  99,192,98,25,0,99,111,3,15,255,255,129,162,156,3,96,148,132,236,189,
+  255,255,255,255,113,206,8,96,148,133,97,148,97,148,98,148,98,140,98,140,
+  3,99,140,133,100,140,101,148,173,181,247,222,254,255,12,255,255,137,190,247,
+  124,239,249,222,183,214,53,206,243,189,177,181,112,173,47,173,5,46,165,136,
+  47,165,112,173,178,181,244,189,118,206,248,222,59,231,189,247,13,255,255,131,
+  249,222,46,165,133,115,3,67,107,4,66,107,3,65,107,130,1,107,1,107,
+  5,0,99,136,171,156,254,255,255,255,255,255,235,156,176,181,57,231,122,239,
+  6,255,255,162,189,247,67,107,192,98,198,123,124,239,255,255,255,255,248,222,
+  1,99,192,98,106,148,255,255,45,165,192,98,170,148,255,255,184,214,117,206,
+  58,231,255,255,255,255,254,255,59,231,59,231,255,255,124,239,118,206,189,247,
+  255,255,255,255,249,222,117,206,182,214,124,239,3,255,255,140,189,247,58,231,
+  125,239,255,255,184,214,118,206,59,231,255,255,255,255,183,214,118,206,59,231,
+  4,255,255,141,190,247,248,222,117,206,118,206,59,231,255,255,255,255,124,239,
+  178,181,192,98,67,107,249,222,125,239,3,255,255,132,249,222,117,206,183,214,
+  189,247,5,255,255,158,58,231,117,206,248,222,255,255,124,239,59,231,190,247,
+  255,255,123,239,59,231,255,255,190,247,118,206,59,231,255,255,255,255,58,231,
+  118,206,117,206,248,222,254,255,255,255,255,255,125,239,58,231,189,247,190,247,
+  182,214,118,206,123,239,3,255,255,139,198,123,192,98,242,189,190,247,118,206,
+  118,206,124,239,255,255,189,247,58,231,59,231,3,255,255,132,254,255,59,231,
+  59,231,254,255,4,255,255,131,39,132,192,98,170,148,3,255,255,132,236,156,
+  192,98,66,107,189,247,3,255,255,132,248,222,117,206,183,214,189,247,3,255,
+  255,150,236,156,192,98,106,148,255,255,189,247,58,231,124,239,255,255,255,255,
+  254,255,59,231,59,231,190,247,124,239,237,164,192,98,198,131,59,231,189,247,
+  190,247,124,239,189,247,4,255,255,132,248,222,117,206,183,214,189,247,3,255,
+  255,135,124,239,58,231,190,247,254,255,183,214,118,206,123,239,4,255,255,132,
+  59,231,118,206,117,206,249,222,48,255,255,131,246,214,101,141,224,124,6,225,
+  132,134,161,132,161,124,162,124,162,124,98,124,98,124,5,98,116,130,97,124,
+  97,124,16,161,124,3,97,124,131,97,116,97,116,33,116,3,32,116,130,33,
+  116,33,116,4,34,116,131,96,116,97,116,33,116,3,96,116,133,160,124,161,
+  124,161,124,225,132,224,132,4,225,132,129,33,133,5,225,132,131,33,133,33,
+  133,225,132,3,33,133,8,225,132,130,33,133,33,133,4,225,132,129,33,133,
+  5,225,132,129,226,132,3,225,132,139,226,132,225,132,225,132,226,132,164,124,
+  134,107,196,115,97,124,96,124,160,132,224,132,11,160,124,129,160,132,3,225,
+  132,4,226,132,8,225,132,7,226,132,4,225,132,3,226,132,139,162,132,163,
+  124,99,124,100,124,36,124,197,115,133,115,70,107,6,107,6,107,199,106,7,
+  135,98,3,198,106,133,6,107,6,107,197,98,174,148,125,239,25,255,255,132,
+  125,239,238,140,134,91,199,99,10,200,99,131,199,99,200,99,200,99,11,199,
+  99,130,134,91,53,190,18,255,255,137,243,181,134,91,200,99,40,108,39,108,
+  40,108,39,108,200,107,200,99,10,39,108,132,103,108,39,108,103,116,103,116,
+  9,40,108,132,103,116,40,108,103,116,39,116,13,40,108,133,200,107,40,108,
+  40,108,103,116,103,116,4,166,116,131,165,116,233,132,189,239,17,255,255,131,
+  254,247,103,149,224,124,6,226,132,129,225,132,4,226,132,129,34,133,6,226,
+  132,132,225,132,33,133,226,132,227,132,6,226,132,134,33,133,225,132,225,132,
+  224,124,36,133,55,223,21,255,255,131,52,198,1,99,192,90,4,0,99,129,
+  192,98,27,0,99,80,3,15,255,255,129,162,156,4,96,148,132,179,214,255,
+  255,255,255,113,206,7,96,148,133,97,148,97,148,98,148,98,140,98,140,3,
+  99,140,4,100,140,132,233,156,241,189,57,231,254,255,41,255,255,134,124,239,
+  52,198,106,148,68,115,68,107,68,107,3,67,107,4,66,107,3,65,107,130,
+  1,107,1,107,4,0,99,129,46,165,3,255,255,131,178,189,192,98,106,148,
+  8,255,255,132,52,198,192,98,192,98,183,214,4,255,255,150,243,197,236,156,
+  111,173,255,255,45,165,192,98,40,140,105,140,192,98,192,98,1,99,242,189,
+  255,255,58,231,1,99,67,115,243,189,2,107,192,98,249,222,124,239,105,140,
+  3,192,98,149,66,107,177,181,255,255,255,255,177,181,1,99,105,140,105,140,
+  192,98,192,98,1,107,243,189,104,140,192,98,192,98,1,99,242,189,255,255,
+  255,255,183,214,133,115,3,192,98,132,1,99,236,156,255,255,105,140,4,192,
+  98,132,236,156,255,255,58,231,39,132,3,192,98,130,67,107,51,198,3,255,
+  255,145,111,173,0,99,192,98,192,98,105,140,198,123,1,99,118,206,255,255,
+  197,123,1,99,242,189,197,123,192,98,177,181,190,247,170,148,4,192,98,159,
+  198,123,58,231,255,255,46,165,0,99,105,140,197,123,192,98,192,98,2,107,
+  242,189,255,255,255,255,198,123,192,98,235,156,132,115,192,98,192,98,67,107,
+  249,222,59,231,1,99,1,99,182,214,255,255,255,255,242,189,1,99,133,115,
+  190,247,4,255,255,141,39,132,192,98,132,115,182,214,190,247,255,255,254,255,
+  249,222,249,222,254,255,255,255,249,222,39,132,3,192,98,146,68,115,52,198,
+  255,255,255,255,236,156,192,98,106,148,255,255,111,173,1,99,105,140,255,255,
+  255,255,123,239,1,107,1,99,248,222,197,123,4,192,98,136,243,189,243,197,
+  1,99,198,131,255,255,255,255,249,222,198,131,3,192,98,144,132,115,117,206,
+  255,255,255,255,171,148,1,99,236,156,197,123,192,98,192,98,2,107,52,198,
+  255,255,254,255,236,156,0,99,3,192,98,130,40,140,124,239,44,255,255,133,
+  123,231,234,165,224,124,224,132,226,132,4,225,132,134,224,132,225,132,161,132,
+  161,124,162,124,162,124,3,98,124,3,98,116,131,97,116,97,124,98,124,3,
+  161,124,131,162,124,161,124,162,124,10,161,124,3,97,124,133,97,116,97,116,
+  33,116,32,116,96,116,3,33,116,132,34,116,34,116,98,116,34,116,5,97,
+  116,132,160,124,225,124,161,124,160,124,9,225,132,133,224,132,224,132,225,132,
+  225,132,33,133,6,225,132,129,226,132,4,225,132,3,33,133,10,225,132,129,
+  226,132,3,225,132,129,226,132,3,225,132,135,164,124,134,115,133,115,97,124,
+  96,124,160,124,224,132,11,160,124,132,160,132,224,132,225,132,225,132,5,226,
+  132,7,225,132,7,226,132,3,225,132,4,226,132,140,162,132,162,124,163,124,
+  100,124,36,124,197,115,133,115,70,107,70,107,6,107,199,106,199,98,6,135,
+  98,134,198,98,198,106,198,106,197,98,6,107,244,189,26,255,255,131,184,206,
+  41,108,134,91,5,200,99,134,136,99,200,99,200,99,199,99,200,99,200,99,
+  15,199,99,131,134,99,199,99,250,222,18,255,255,136,238,140,135,91,200,107,
+  200,107,40,108,39,108,200,99,200,99,5,39,108,129,199,107,6,39,108,131,
+  103,108,39,108,39,108,4,40,108,3,200,107,18,40,108,140,39,116,39,116,
+  103,116,39,116,40,116,40,108,103,116,103,116,165,116,229,124,100,108,109,157,
+  18,255,255,131,122,231,34,133,225,132,10,226,132,129,226,124,6,226,132,129,
+  225,132,7,226,132,135,225,132,33,133,225,132,225,132,224,124,102,149,122,231,
+  21,255,255,131,112,173,192,90,192,98,33,0,99,121,3,15,255,255,129,228,
+  164,4,96,148,133,161,148,55,231,255,255,255,255,114,214,6,96,148,133,97,
+  148,97,148,98,148,98,140,98,140,3,99,140,4,100,140,3,101,140,132,233,
+  156,176,189,247,222,189,247,35,255,255,137,124,239,53,198,236,156,198,123,133,
+  115,132,115,68,115,68,107,68,107,3,67,107,4,66,107,3,65,107,134,1,
+  107,1,107,0,99,0,99,1,99,242,189,3,255,255,132,52,198,0,99,192,
+  98,39,132,8,255,255,132,46,165,192,98,66,107,189,247,8,255,255,244,45,
+  165,192,98,192,98,39,132,111,173,133,123,192,98,66,107,190,247,59,231,192,
+  98,0,99,192,98,66,107,198,123,250,230,104,140,192,98,133,115,177,181,45,
+  165,192,98,192,98,52,198,255,255,177,181,192,98,192,98,197,123,110,173,132,
+  115,192,98,192,98,132,115,111,173,198,123,192,98,2,107,189,247,189,247,1,
+  99,192,98,235,156,183,214,178,189,0,99,192,98,183,214,118,206,171,148,192,
+  98,2,107,112,173,183,214,189,247,132,115,192,98,198,131,177,181,236,156,192,
+  98,192,98,183,214,255,255,117,206,192,98,192,98,236,156,177,181,132,115,192,
+  98,192,98,118,206,255,255,132,115,192,98,1,99,0,99,198,123,117,206,45,
+  165,192,98,67,115,118,206,182,214,197,123,192,98,171,148,255,255,45,165,192,
+  98,192,98,198,131,177,181,170,148,192,98,192,98,248,222,255,255,198,123,192,
+  98,192,98,171,148,46,173,66,107,192,98,105,140,255,255,40,132,192,98,236,
+  156,255,255,255,255,40,140,192,98,46,165,5,255,255,129,51,198,3,192,98,
+  194,68,115,170,148,242,189,124,239,255,255,255,255,189,247,132,115,192,98,39,
+  132,178,181,171,156,192,98,192,98,184,214,255,255,236,156,192,98,106,148,255,
+  255,46,165,192,98,105,140,255,255,255,255,59,231,192,98,192,98,248,222,52,
+  198,40,140,192,98,132,115,177,181,58,231,178,181,192,98,197,123,255,255,125,
+  239,67,115,192,98,39,132,178,181,171,148,192,98,192,98,248,222,255,255,170,
+  148,192,98,192,98,105,140,111,173,132,115,192,98,132,115,255,255,117,206,192,
+  98,66,107,182,214,183,214,198,131,192,98,171,156,43,255,255,134,113,198,35,
+  133,224,124,33,133,225,132,226,132,4,225,132,136,224,132,225,132,161,132,161,
+  124,161,124,162,124,98,124,98,124,4,98,116,131,97,116,97,124,98,124,3,
+  162,124,13,161,124,130,97,124,97,124,3,97,116,145,33,116,32,116,96,116,
+  32,116,33,116,97,116,98,116,34,116,97,116,34,116,33,116,97,116,161,124,
+  97,124,97,124,161,124,161,124,4,225,132,129,33,133,6,225,132,130,224,132,
+  224,132,9,225,132,129,226,132,8,225,132,129,224,132,7,225,132,130,226,132,
+  226,132,7,225,132,136,163,124,134,115,133,115,99,124,97,124,96,124,224,132,
+  160,132,11,160,124,130,224,132,225,132,6,226,132,8,225,132,5,226,132,5,
+  225,132,3,226,132,140,162,132,163,124,163,124,100,124,37,124,197,115,133,115,
+  70,107,70,107,6,107,199,106,199,98,6,135,98,133,199,98,198,98,133,90,
+  203,131,250,222,26,255,255,139,179,173,135,99,135,91,135,99,135,99,199,99,
+  199,99,200,99,199,99,199,99,136,99,6,199,99,131,135,99,136,91,135,99,
+  11,199,99,130,134,91,172,124,18,255,255,136,60,231,41,108,199,99,200,107,
+  40,108,39,108,200,99,200,99,3,39,108,131,199,107,200,107,200,107,9,39,
+  108,129,200,107,3,40,108,139,200,99,200,107,200,99,200,107,40,108,201,107,
+  201,107,200,107,40,108,200,107,200,107,12,40,108,139,40,116,40,116,40,108,
+  40,108,39,116,103,116,103,116,165,124,228,124,162,124,178,198,18,255,255,130,
+  179,198,224,124,9,226,132,129,226,124,6,226,132,129,225,132,8,226,132,3,
+  225,132,131,224,124,169,157,189,247,21,255,255,131,236,156,128,90,192,98,34,
+  0,99,138,3,15,255,255,129,39,173,5,96,148,134,163,156,122,239,255,255,
+  255,255,245,222,162,148,4,96,148,133,97,148,97,148,98,148,98,140,98,140,
+  3,99,140,4,100,140,3,101,140,136,37,140,37,140,38,140,103,148,44,165,
+  242,197,248,222,124,239,27,255,255,133,189,247,248,222,178,181,171,148,198,123,
+  4,133,115,132,132,115,68,115,68,107,68,107,3,67,107,4,66,107,3,65,
+  107,133,1,107,1,107,0,99,132,115,183,214,3,255,255,133,118,206,1,99,
+  192,98,192,98,198,123,8,255,255,131,235,156,192,98,132,115,9,255,255,244,
+  45,165,192,98,132,115,254,255,255,255,183,214,192,98,192,98,59,231,123,239,
+  0,99,192,98,105,140,189,247,255,255,183,214,192,98,1,99,58,231,255,255,
+  255,255,46,165,192,98,197,123,255,255,177,181,192,98,66,107,189,247,255,255,
+  52,198,192,98,0,99,249,222,255,255,248,222,192,98,192,98,58,231,189,247,
+  177,181,242,189,255,255,255,255,124,239,66,107,192,98,52,198,255,255,118,206,
+  192,98,68,115,255,255,255,255,51,198,192,98,67,107,189,247,255,255,255,255,
+  171,148,192,98,105,140,255,255,105,140,192,98,170,148,255,255,255,255,58,231,
+  1,99,192,98,118,206,255,255,132,115,192,98,68,115,58,231,255,255,255,255,
+  52,198,178,189,250,230,255,255,255,255,171,148,192,98,105,140,255,255,46,165,
+  192,98,132,115,190,247,255,255,255,255,39,132,192,98,236,156,255,255,198,123,
+  192,98,171,148,255,255,255,255,111,173,192,98,132,115,255,255,51,198,192,98,
+  67,107,254,255,124,239,1,99,192,98,249,222,6,255,255,130,51,198,197,123,
+  4,192,98,191,2,107,243,189,255,255,242,189,192,98,68,115,190,247,255,255,
+  255,255,170,148,192,98,170,148,255,255,236,156,192,98,106,148,255,255,46,165,
+  192,98,105,140,255,255,255,255,59,231,1,99,192,98,249,222,255,255,112,181,
+  192,98,40,132,255,255,255,255,177,181,192,98,198,123,255,255,178,189,192,98,
+  132,115,190,247,255,255,255,255,105,140,192,98,171,148,255,255,170,148,192,98,
+  198,131,255,255,255,255,52,198,192,98,1,99,190,247,242,189,192,98,66,107,
+  118,214,190,247,124,239,117,206,183,214,41,255,255,136,55,223,167,157,224,124,
+  225,132,34,133,33,133,225,132,226,132,6,225,132,135,161,132,161,132,161,124,
+  161,124,162,124,98,124,98,124,4,98,116,130,97,124,98,124,3,162,124,131,
+  161,124,161,124,162,124,10,161,124,130,97,124,97,124,4,97,116,133,32,116,
+  96,116,32,116,97,116,97,116,3,34,116,133,34,108,97,116,161,124,160,124,
+  160,124,3,225,132,5,33,133,4,225,132,132,224,132,225,132,225,132,224,132,
+  24,225,132,132,224,132,225,132,225,132,226,132,7,225,132,136,227,132,198,115,
+  133,115,36,124,99,124,97,124,160,132,224,132,11,160,124,130,224,132,224,132,
+  6,226,132,6,225,132,130,226,132,225,132,5,226,132,4,225,132,4,226,132,
+  140,162,132,163,124,163,124,100,124,36,124,37,116,197,115,134,107,70,107,6,
+  107,199,106,199,98,6,135,98,132,134,98,134,98,49,173,190,247,25,255,255,
+  134,59,231,173,132,134,91,135,99,135,99,135,91,3,135,99,3,199,99,130,
+  136,99,135,99,5,199,99,132,135,99,72,91,136,91,135,99,11,199,99,130,
+  133,91,177,165,18,255,255,142,184,206,135,99,199,107,40,108,39,108,200,99,
+  200,99,199,107,39,108,39,108,199,107,199,107,200,99,199,107,3,39,108,129,
+  199,107,4,39,108,129,200,99,3,200,107,136,200,99,200,107,200,99,200,99,
+  200,107,201,99,201,99,201,107,4,200,107,136,40,108,200,107,40,108,40,108,
+  200,107,40,108,40,108,39,108,9,40,108,134,103,116,103,116,165,124,227,124,
+  225,132,56,223,18,255,255,130,236,173,224,124,7,226,132,131,226,124,226,132,
+  225,132,12,226,132,4,225,132,131,224,124,46,182,254,255,20,255,255,131,124,
+  247,40,140,128,90,36,0,99,148,3,15,255,255,129,236,189,6,96,148,134,
+  228,164,124,247,255,255,255,255,57,231,229,164,3,96,148,133,97,148,97,148,
+  98,148,98,140,98,140,3,99,140,4,100,140,3,101,140,130,37,140,37,140,
+  4,38,140,136,38,132,104,140,235,156,111,173,52,198,248,222,59,239,190,247,
+  16,255,255,134,189,247,250,222,118,206,177,181,172,148,40,132,3,134,115,5,
+  133,115,132,132,115,68,115,68,107,68,107,3,67,107,4,66,107,3,65,107,
+  132,1,107,1,107,105,140,123,239,3,255,255,134,182,214,1,107,0,99,192,
+  98,192,98,198,131,8,255,255,132,45,165,192,98,66,107,189,247,4,255,255,
+  150,124,239,183,214,184,214,255,255,45,165,192,98,105,140,255,255,255,255,59,
+  231,192,98,192,98,58,231,123,239,192,98,192,98,183,214,255,255,255,255,177,
+  181,192,98,198,123,3,255,255,164,183,214,192,98,1,107,190,247,178,189,192,
+  98,198,123,255,255,255,255,182,214,192,98,66,107,189,247,255,255,58,231,192,
+  98,192,98,249,222,255,255,190,247,52,198,171,156,198,131,1,99,192,98,192,
+  98,52,198,255,255,52,198,192,98,67,115,190,247,255,255,45,165,192,98,105,
+  140,3,255,255,135,52,198,192,98,132,115,190,247,197,123,192,98,242,189,3,
+  255,255,135,133,123,192,98,118,206,255,255,132,115,192,98,112,181,4,255,255,
+  139,183,214,110,173,40,140,68,115,192,98,192,98,105,140,255,255,46,165,192,
+  98,170,148,3,255,255,148,176,181,192,98,199,131,255,255,198,123,192,98,177,
+  181,255,255,255,255,51,198,192,98,132,115,255,255,189,247,66,107,192,98,248,
+  222,53,198,192,98,199,131,9,255,255,138,249,222,177,181,105,140,0,99,192,
+  98,192,98,123,239,237,156,192,98,170,148,3,255,255,158,242,189,192,98,133,
+  115,255,255,237,156,192,98,106,148,255,255,46,165,192,98,105,140,255,255,255,
+  255,123,239,1,99,192,98,249,222,255,255,111,173,192,98,39,132,255,255,255,
+  255,177,181,192,98,198,123,255,255,235,156,192,98,171,148,3,255,255,148,242,
+  189,192,98,133,123,255,255,170,148,192,98,236,156,255,255,255,255,248,222,192,
+  98,1,99,124,239,123,239,132,115,192,98,192,98,1,107,104,140,242,189,40,
+  255,255,138,188,247,45,182,225,132,224,124,33,133,34,133,34,133,33,133,225,
+  132,226,132,7,225,132,134,161,132,161,124,162,124,162,124,98,124,98,124,4,
+  98,116,130,97,124,98,124,3,161,124,130,162,124,162,124,11,161,124,3,97,
+  124,131,97,116,97,116,33,116,3,96,116,135,97,116,97,116,33,116,98,116,
+  98,116,161,124,160,124,3,224,132,135,33,133,225,132,225,132,33,133,34,133,
+  33,133,33,133,7,225,132,132,224,132,224,132,225,132,225,132,3,224,132,129,
+  225,132,4,224,132,3,225,132,129,224,132,11,225,132,131,224,132,225,132,226,
+  132,7,225,132,136,227,132,37,116,70,115,36,116,99,124,98,124,160,124,224,
+  132,11,160,124,131,160,132,224,132,225,132,5,226,132,8,225,132,6,226,132,
+  3,225,132,144,226,132,226,132,225,132,226,132,162,132,163,124,163,124,100,124,
+  36,124,37,116,197,115,134,115,70,107,6,107,199,106,199,98,5,135,98,131,
+  69,90,8,115,55,206,26,255,255,131,119,198,41,108,70,91,8,135,99,129,
+  199,99,4,135,99,5,199,99,3,135,91,131,199,99,198,99,198,99,8,199,
+  99,131,198,99,198,99,183,206,18,255,255,135,179,173,134,91,39,108,39,108,
+  200,99,136,99,199,99,3,199,107,135,200,99,136,99,199,99,199,99,39,108,
+  39,108,199,107,3,39,108,133,199,107,200,99,39,108,199,107,200,107,5,200,
+  99,3,201,99,6,200,107,4,40,108,132,39,108,39,108,40,108,200,107,8,
+  40,108,134,103,116,166,116,228,124,225,124,102,149,189,247,17,255,255,131,189,
+  247,101,141,225,124,12,226,132,129,225,132,4,226,132,129,227,132,3,226,132,
+  133,225,132,225,132,225,124,225,124,178,198,21,255,255,131,58,231,198,123,128,
+  90,37,0,99,189,3,15,255,255,129,180,214,7,96,148,141,229,164,188,247,
+  255,255,255,255,189,247,172,189,96,148,96,148,97,148,97,148,98,148,98,140,
+  98,140,3,99,140,4,100,140,3,101,140,130,37,140,37,140,4,38,140,130,
+  38,132,38,132,5,39,132,149,105,140,236,156,111,173,243,189,117,206,184,214,
+  249,222,58,231,249,222,249,222,184,214,118,206,53,198,243,189,112,173,237,156,
+  107,140,40,132,199,123,199,123,198,123,5,134,115,5,133,115,132,132,115,68,
+  115,68,107,68,107,3,67,107,4,66,107,3,65,107,130,66,107,177,181,4,
+  255,255,135,118,206,65,107,0,99,0,99,192,98,192,98,198,123,8,255,255,
+  132,52,198,192,98,192,98,118,214,4,255,255,150,235,156,192,98,132,115,255,
+  255,46,165,192,98,105,140,255,255,255,255,59,231,0,99,192,98,58,231,123,
+  239,192,98,192,98,58,231,255,255,255,255,176,181,192,98,198,131,3,255,255,
+  164,183,214,192,98,1,99,190,247,242,189,192,98,198,123,255,255,255,255,118,
+  214,192,98,66,107,189,247,255,255,58,231,192,98,192,98,58,231,124,239,132,
+  115,192,98,132,115,236,156,177,181,67,107,192,98,52,198,255,255,52,198,192,
+  98,67,115,190,247,255,255,45,165,192,98,105,140,3,255,255,135,52,198,192,
+  98,68,115,254,255,198,123,192,98,176,181,3,255,255,135,132,115,192,98,118,
+  206,255,255,132,115,192,98,243,197,3,255,255,140,237,164,192,98,192,98,105,
+  140,176,181,106,148,192,98,105,140,255,255,46,165,192,98,171,148,3,255,255,
+  148,177,181,192,98,198,123,255,255,198,123,192,98,177,181,255,255,255,255,243,
+  197,192,98,132,115,190,247,255,255,171,156,192,98,46,165,171,148,192,98,242,
+  189,5,255,255,132,59,231,171,156,235,156,58,231,3,255,255,135,118,206,0,
+  99,192,98,53,198,45,165,192,98,171,148,3,255,255,158,243,189,192,98,132,
+  115,255,255,237,156,192,98,106,148,255,255,46,165,192,98,105,140,255,255,255,
+  255,59,231,0,99,192,98,249,222,255,255,111,173,192,98,39,132,255,255,255,
+  255,177,181,192,98,198,123,255,255,171,156,192,98,171,148,3,255,255,149,242,
+  189,192,98,133,123,255,255,170,148,192,98,236,156,255,255,255,255,184,214,192,
+  98,1,99,123,239,255,255,255,255,52,198,235,156,132,115,192,98,192,98,105,
+  140,38,255,255,132,244,206,101,149,224,124,225,132,4,34,133,131,33,133,225,
+  132,226,132,7,225,132,133,161,132,161,124,162,124,98,124,98,124,5,98,116,
+  131,98,124,98,124,162,124,3,161,124,129,162,124,9,161,124,129,160,124,4,
+  97,124,133,97,116,97,116,33,116,96,116,96,116,3,97,116,135,96,116,160,
+  124,161,124,97,124,161,124,160,132,224,132,4,225,132,3,34,133,131,225,132,
+  225,132,224,132,5,225,132,130,224,132,224,132,3,225,132,130,224,132,224,132,
+  4,225,132,3,224,132,130,225,132,224,132,14,225,132,129,226,132,6,225,132,
+  136,227,132,37,124,134,115,196,115,99,124,99,124,97,124,96,124,12,160,124,
+  130,224,132,225,132,4,226,132,10,225,132,5,226,132,4,225,132,143,226,132,
+  225,132,226,132,162,124,163,124,163,124,100,124,36,124,37,116,197,115,134,115,
+  70,107,6,107,198,106,199,98,3,135,98,132,70,98,69,90,45,140,59,231,
+  26,255,255,135,177,173,134,91,134,91,199,99,135,99,135,99,135,91,8,135,
+  99,4,199,99,130,135,99,135,99,4,199,99,130,198,99,198,99,10,199,99,
+  131,198,99,40,108,124,239,17,255,255,148,190,247,173,132,198,99,39,108,200,
+  99,136,99,199,99,199,107,199,99,200,99,136,99,136,99,199,99,199,107,39,
+  108,199,107,199,99,199,107,39,108,39,108,4,199,107,131,200,99,200,99,200,
+  107,3,200,99,131,136,99,137,99,200,99,5,200,107,3,40,108,135,200,107,
+  40,108,39,108,103,108,39,108,200,107,200,107,7,40,108,134,103,116,103,116,
+  165,124,226,132,224,124,44,174,18,255,255,131,56,223,225,132,225,132,3,226,
+  132,129,226,124,10,226,132,138,225,132,226,132,226,132,225,132,225,132,33,133,
+  33,133,224,124,227,132,246,214,21,255,255,131,183,214,67,107,192,90,38,0,
+  99,130,3,15,255,255,130,124,247,161,156,7,96,148,130,38,165,123,247,3,
+  255,255,135,180,214,163,156,97,148,97,148,98,148,98,140,98,140,3,99,140,
+  4,100,140,3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,
+  39,132,130,199,131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,132,
+  132,115,68,115,68,107,68,107,3,67,107,4,66,107,132,65,107,65,107,104,
+  140,249,222,4,255,255,130,52,198,1,99,3,0,99,131,192,98,192,98,40,
+  132,8,255,255,182,189,247,67,107,192,98,197,123,59,231,255,255,255,255,183,
+  214,1,99,192,98,237,164,255,255,45,165,192,98,105,140,255,255,255,255,59,
+  231,0,99,192,98,58,231,123,239,192,98,192,98,249,222,255,255,255,255,118,
+  206,192,98,2,107,124,239,255,255,255,255,112,173,192,98,133,115,255,255,177,
+  181,192,98,198,123,255,255,255,255,118,214,192,98,66,107,189,247,255,255,58,
+  231,192,98,192,98,123,239,51,198,192,98,132,115,3,255,255,175,66,107,192,
+  98,52,198,255,255,52,198,192,98,67,107,255,255,255,255,242,189,192,98,68,
+  115,190,247,255,255,255,255,236,156,192,98,40,132,255,255,171,156,192,98,197,
+  123,124,239,255,255,242,189,192,98,192,98,118,206,255,255,132,115,192,98,243,
+  189,255,255,255,255,124,239,1,99,192,98,118,206,255,255,255,255,236,156,192,
+  98,105,140,255,255,46,165,192,98,132,115,3,255,255,148,105,140,192,98,170,
+  148,255,255,198,123,192,98,177,181,255,255,255,255,243,197,192,98,132,115,190,
+  247,255,255,183,214,192,98,66,107,1,107,1,99,124,239,5,255,255,132,123,
+  239,192,98,192,98,236,156,3,255,255,135,58,231,1,99,192,98,182,214,243,
+  189,192,98,132,115,3,255,255,158,171,148,192,98,105,140,255,255,236,156,192,
+  98,106,148,255,255,46,173,192,98,198,123,255,255,255,255,183,214,192,98,192,
+  98,249,222,255,255,111,173,192,98,39,132,255,255,255,255,177,181,192,98,198,
+  123,255,255,177,181,192,98,133,115,3,255,255,149,170,148,192,98,105,148,255,
+  255,170,148,192,98,236,156,255,255,255,255,184,214,192,98,1,99,124,239,117,
+  206,110,173,184,214,255,255,255,255,177,181,192,98,1,107,36,255,255,132,121,
+  231,235,165,224,124,225,132,6,34,133,129,33,133,9,225,132,133,161,132,161,
+  124,162,124,98,124,98,124,5,98,116,130,98,124,98,124,3,161,124,130,162,
+  124,162,124,9,161,124,129,160,124,3,97,124,131,96,124,97,116,97,116,3,
+  96,116,140,97,116,33,116,33,116,97,116,96,116,33,116,96,116,160,124,160,
+  132,224,132,225,132,33,133,4,34,133,133,33,133,225,132,225,132,224,132,224,
+  132,17,225,132,129,224,132,23,225,132,137,226,132,101,124,134,115,196,115,99,
+  124,99,124,98,124,96,124,96,124,11,160,124,130,224,132,225,132,5,226,132,
+  9,225,132,3,226,132,6,225,132,3,226,132,145,162,132,163,124,163,124,100,
+  124,36,124,37,116,197,115,134,115,70,107,6,107,6,107,199,106,135,98,135,
+  98,70,90,135,98,115,181,26,255,255,134,122,231,169,157,196,99,199,99,135,
+  99,135,99,4,135,91,130,135,99,135,91,4,135,99,6,199,99,131,135,99,
+  199,99,199,99,4,198,99,129,199,99,4,198,99,6,199,99,130,133,91,237,
+  140,18,255,255,134,124,231,40,116,38,108,199,99,136,99,199,107,3,199,99,
+  131,136,99,73,91,200,99,3,39,108,129,199,107,3,39,108,4,199,107,132,
+  200,99,200,99,199,99,136,99,3,200,99,132,136,99,200,99,200,107,200,99,
+  7,200,107,132,40,108,39,108,103,116,39,108,3,200,107,6,40,108,135,39,
+  108,103,116,165,124,164,124,162,124,160,124,179,206,18,255,255,133,112,190,224,
+  124,226,132,226,132,226,124,9,226,132,129,227,132,4,226,132,3,225,132,131,
+  224,124,102,149,57,231,21,255,255,131,243,197,2,99,192,90,39,0,99,119,
+  3,16,255,255,129,105,181,8,96,148,130,228,164,122,239,3,255,255,134,188,
+  247,172,189,97,148,98,148,98,140,98,140,3,99,140,4,100,140,3,101,140,
+  130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,131,199,
+  131,12,199,123,129,198,123,5,134,115,5,133,115,132,132,115,68,115,68,107,
+  68,107,3,67,107,4,66,107,130,132,115,242,189,5,255,255,129,177,181,5,
+  0,99,131,192,98,192,98,236,156,9,255,255,255,53,206,192,98,192,98,66,
+  107,105,140,105,140,1,99,192,98,66,107,123,239,255,255,45,165,192,98,105,
+  140,255,255,255,255,59,231,192,98,192,98,58,231,123,239,192,98,192,98,249,
+  222,255,255,255,255,190,247,198,123,192,98,39,132,52,198,176,181,1,99,192,
+  98,242,189,255,255,177,181,192,98,197,123,255,255,255,255,118,214,192,98,66,
+  107,189,247,255,255,58,231,192,98,192,98,123,239,52,198,192,98,66,107,118,
+  206,249,222,236,156,192,98,192,98,53,198,255,255,53,198,192,98,0,99,236,
+  156,117,206,189,247,67,107,192,98,105,140,52,198,111,173,192,98,192,98,117,
+  206,255,255,248,222,0,99,192,98,67,107,133,123,192,98,1,99,192,98,118,
+  206,255,255,132,115,192,98,243,189,255,255,255,255,189,247,2,107,192,98,46,
+  165,250,230,52,198,1,99,192,98,105,140,255,255,46,165,192,98,192,98,105,
+  140,52,198,45,165,192,98,192,98,118,206,255,255,198,123,192,98,177,181,255,
+  255,255,255,243,197,192,98,132,115,190,247,255,255,254,255,132,115,192,98,192,
+  98,170,148,255,255,255,255,5,255,255,198,236,156,192,98,192,98,40,140,111,
+  173,237,164,67,107,192,98,67,115,189,247,124,239,66,107,192,98,105,148,52,
+  198,46,165,192,98,192,98,118,214,255,255,236,156,192,98,105,148,255,255,243,
+  197,192,98,192,98,45,165,178,181,132,115,192,98,192,98,249,222,255,255,111,
+  173,192,98,1,107,45,165,249,222,242,189,192,98,198,123,255,255,124,239,66,
+  107,192,98,170,148,52,198,46,165,192,98,192,98,183,214,255,255,170,148,192,
+  98,236,156,255,255,255,255,184,214,192,98,1,99,189,247,177,181,192,98,66,
+  107,118,206,58,231,236,156,192,98,197,123,34,255,255,133,190,247,113,190,34,
+  133,224,124,33,133,8,34,133,131,33,133,225,132,226,132,6,225,132,133,161,
+  132,161,124,162,124,98,124,98,124,5,98,116,129,98,124,4,161,124,130,162,
+  124,162,124,10,161,124,3,97,124,131,96,124,97,116,97,116,3,96,116,129,
+  33,116,3,97,116,135,33,116,32,116,96,124,160,124,224,132,224,132,225,132,
+  5,34,133,129,33,133,3,225,132,129,224,132,10,225,132,129,224,132,9,225,
+  132,132,224,132,224,132,225,132,224,132,17,225,132,137,226,132,100,124,134,115,
+  132,115,98,124,99,124,98,124,97,124,96,124,11,160,124,130,160,132,224,132,
+  4,226,132,10,225,132,129,226,132,7,225,132,4,226,132,144,162,132,163,124,
+  163,124,100,124,36,124,37,116,197,115,134,115,70,107,6,107,6,107,199,106,
+  134,98,69,90,74,123,185,214,26,255,255,135,244,206,35,133,160,116,38,108,
+  199,99,199,99,135,99,4,135,91,132,135,99,135,91,135,91,135,99,4,199,
+  99,129,135,99,6,199,99,6,198,99,131,199,99,199,99,198,99,6,199,99,
+  131,198,99,133,91,244,181,18,255,255,133,183,206,198,99,135,99,136,99,199,
+  107,3,199,99,132,136,99,136,99,200,99,199,107,6,39,108,129,199,99,3,
+  199,107,135,200,99,136,99,199,99,136,99,200,99,200,107,200,107,3,200,99,
+  8,200,107,129,40,108,3,39,108,4,200,107,6,40,108,135,103,116,165,124,
+  164,116,163,116,162,116,227,132,122,231,18,255,255,131,168,157,224,124,226,124,
+  14,226,132,3,225,132,131,224,124,169,157,188,239,21,255,255,131,111,173,192,
+  90,192,98,40,0,99,91,3,16,255,255,129,246,222,9,96,148,130,163,156,
+  247,230,4,255,255,132,247,222,40,165,98,140,98,140,3,99,140,4,100,140,
+  3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,
+  199,131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,132,132,115,68,
+  115,68,107,68,107,3,67,107,3,66,107,130,45,165,124,239,4,255,255,130,
+  190,247,44,165,6,0,99,131,192,98,192,98,243,189,10,255,255,130,53,206,
+  132,115,4,192,98,145,198,123,249,222,255,255,255,255,45,165,192,98,105,140,
+  255,255,255,255,59,231,192,98,192,98,58,231,123,239,192,98,192,98,249,222,
+  3,255,255,130,58,231,39,132,3,192,98,148,1,99,110,173,255,255,255,255,
+  177,181,192,98,197,123,255,255,255,255,118,206,192,98,66,107,189,247,255,255,
+  58,231,192,98,192,98,58,231,189,247,199,131,3,192,98,141,133,115,68,115,
+  192,98,242,189,255,255,124,239,133,123,192,98,192,98,171,156,255,255,248,222,
+  197,123,3,192,98,130,2,107,177,181,3,255,255,140,248,222,105,140,67,107,
+  133,123,51,198,198,123,192,98,118,206,255,255,132,115,192,98,243,189,3,255,
+  255,129,112,181,3,192,98,137,1,99,198,131,192,98,198,131,255,255,46,165,
+  192,98,198,123,197,123,3,192,98,146,111,173,255,255,255,255,197,123,192,98,
+  177,181,255,255,255,255,243,197,192,98,132,115,190,247,255,255,255,255,112,173,
+  192,98,192,98,117,206,7,255,255,131,190,247,236,156,1,99,4,192,98,134,
+  198,123,249,222,255,255,255,255,184,214,133,115,3,192,98,138,66,107,242,189,
+  255,255,255,255,236,156,192,98,105,148,255,255,189,247,198,131,3,192,98,145,
+  170,148,67,107,192,98,249,222,255,255,249,222,67,107,192,98,192,98,242,189,
+  243,189,192,98,197,123,255,255,255,255,183,214,133,115,3,192,98,143,66,107,
+  242,189,255,255,255,255,170,148,192,98,236,156,255,255,255,255,184,214,192,98,
+  1,99,123,239,254,255,171,148,4,192,98,130,132,115,183,214,33,255,255,132,
+  55,223,167,149,224,124,225,132,11,34,133,129,33,133,7,225,132,133,161,132,
+  162,124,162,124,98,124,98,124,5,98,116,129,98,124,4,161,124,129,162,124,
+  11,161,124,132,97,124,96,124,97,124,96,124,5,96,116,139,33,116,96,116,
+  97,116,33,116,33,116,96,116,160,124,160,132,224,132,225,132,33,133,4,34,
+  133,16,225,132,129,224,132,10,225,132,129,224,132,6,225,132,129,224,132,3,
+  225,132,129,224,132,9,225,132,137,163,124,197,115,132,115,35,124,99,124,99,
+  124,98,124,96,124,96,124,11,160,124,130,224,132,225,132,3,226,132,17,225,
+  132,3,226,132,145,225,132,226,132,162,132,163,124,163,124,100,124,100,124,37,
+  116,197,115,133,115,70,107,70,107,6,107,198,98,134,98,176,156,189,247,25,
+  255,255,136,189,247,46,182,224,124,224,132,226,124,38,108,199,99,199,99,3,
+  135,99,135,135,91,135,91,135,99,135,91,135,91,135,99,199,99,4,135,99,
+  5,199,99,4,198,99,133,134,99,198,99,199,99,135,99,199,99,3,198,99,
+  5,199,99,131,198,99,198,99,249,214,18,255,255,131,178,173,70,91,136,99,
+  4,199,99,132,136,99,199,99,199,99,199,107,3,39,108,129,199,107,3,39,
+  108,3,199,107,135,200,99,200,99,199,99,200,99,199,107,39,108,199,107,3,
+  200,99,8,200,107,131,40,108,39,108,39,108,5,200,107,6,40,108,136,102,
+  116,164,124,163,124,162,124,162,124,160,116,104,149,190,247,17,255,255,131,122,
+  231,228,132,225,124,6,226,132,129,227,124,6,226,132,134,33,133,33,133,225,
+  132,224,124,237,173,254,247,20,255,255,132,189,247,172,156,128,90,192,98,40,
+  0,99,1,64,99,38,3,17,255,255,129,38,173,9,96,148,130,97,148,114,
+  214,5,255,255,130,180,214,231,164,3,99,140,4,100,140,3,101,140,130,37,
+  140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,
+  199,123,129,198,123,5,134,115,5,133,115,132,132,115,68,115,68,107,68,107,
+  4,67,107,130,236,156,249,222,5,255,255,130,59,231,39,132,7,0,99,131,
+  192,98,1,99,59,231,11,255,255,133,190,247,182,214,242,189,242,189,183,214,
+  4,255,255,141,123,239,248,222,59,231,255,255,255,255,254,255,249,222,249,222,
+  190,247,254,255,249,222,249,222,190,247,5,255,255,132,183,214,243,189,52,198,
+  59,231,3,255,255,164,124,239,248,222,58,231,255,255,255,255,189,247,249,222,
+  249,222,255,255,255,255,190,247,249,222,249,222,190,247,255,255,190,247,118,206,
+  243,189,118,214,254,255,59,231,248,222,123,239,255,255,255,255,190,247,248,222,
+  182,214,59,231,255,255,255,255,190,247,183,214,243,189,53,198,123,239,3,255,
+  255,131,184,214,52,198,183,214,3,255,255,135,67,107,192,98,183,214,255,255,
+  58,231,248,222,125,239,4,255,255,143,249,222,243,197,52,198,123,239,190,247,
+  249,222,249,222,255,255,46,165,192,98,170,148,190,247,117,206,243,197,249,222,
+  3,255,255,136,58,231,248,222,124,239,255,255,255,255,125,239,248,222,250,230,
+  3,255,255,132,177,181,192,98,67,107,190,247,9,255,255,133,58,231,52,198,
+  177,181,242,189,184,214,5,255,255,133,190,247,182,214,243,189,117,206,124,239,
+  3,255,255,150,123,239,248,222,59,231,255,255,255,255,190,247,118,206,243,189,
+  248,222,255,255,250,230,249,222,190,247,255,255,255,255,124,239,183,214,182,214,
+  124,239,125,239,248,222,58,231,3,255,255,133,190,247,118,206,243,189,117,206,
+  124,239,3,255,255,144,59,231,248,222,123,239,255,255,255,255,190,247,249,222,
+  249,222,254,255,255,255,255,255,249,222,52,198,243,189,118,206,189,247,32,255,
+  255,132,188,239,44,174,225,124,224,124,13,34,133,129,33,133,7,225,132,133,
+  161,124,162,124,162,124,98,124,98,124,5,98,116,130,98,124,162,124,15,161,
+  124,133,96,124,96,124,97,124,96,124,96,124,3,96,116,130,97,116,33,116,
+  3,97,116,135,33,116,96,124,160,124,224,132,224,132,225,132,33,133,4,34,
+  133,18,225,132,129,224,132,9,225,132,129,224,132,5,225,132,129,224,132,13,
+  225,132,137,226,132,37,116,197,115,35,116,99,124,99,124,98,124,98,124,96,
+  124,11,160,124,130,224,132,225,132,3,226,132,18,225,132,145,226,132,226,132,
+  225,132,226,132,162,132,163,124,163,124,100,124,100,124,37,116,197,115,133,115,
+  134,115,70,107,197,98,72,115,55,206,26,255,255,137,57,231,102,149,224,124,
+  226,132,226,132,226,124,38,108,199,99,199,99,8,135,99,129,199,99,4,135,
+  99,7,135,91,133,134,91,135,99,135,99,134,99,134,99,3,135,99,130,199,
+  99,198,99,6,199,99,132,198,99,198,91,105,116,189,239,18,255,255,130,109,
+  124,71,91,7,199,99,129,199,107,3,39,108,129,199,107,3,39,108,132,199,
+  99,199,107,199,107,200,99,3,199,99,130,39,108,39,108,4,200,99,8,200,
+  107,131,40,108,39,108,39,108,5,200,107,6,40,108,136,166,116,164,124,226,
+  124,226,124,225,124,226,124,160,116,238,173,18,255,255,130,179,206,224,124,12,
+  226,132,133,225,132,33,133,224,132,225,124,113,190,21,255,255,131,123,239,39,
+  132,128,90,41,0,99,130,64,99,128,99,21,2,17,255,255,129,246,222,11,
+  96,148,130,172,189,189,247,4,255,255,132,254,255,116,214,232,164,99,140,4,
+  100,140,3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,
+  132,130,199,131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,136,132,
+  115,68,115,68,107,68,107,67,107,132,115,237,156,249,222,6,255,255,130,52,
+  198,131,115,8,0,99,130,192,98,40,140,85,255,255,137,242,189,192,98,192,
+  98,242,189,183,214,171,148,192,98,132,115,190,247,16,255,255,131,45,165,192,
+  98,105,140,16,255,255,133,176,181,197,123,1,99,192,98,46,165,108,255,255,
+  132,179,206,35,141,224,124,225,132,14,34,133,129,33,133,7,225,132,133,161,
+  124,162,124,162,124,98,124,98,124,5,98,116,130,98,124,98,124,15,161,124,
+  129,160,124,4,96,124,3,96,116,131,97,116,97,116,33,116,3,96,116,139,
+  160,124,160,124,224,132,225,132,33,133,33,133,34,133,34,133,33,133,34,133,
+  33,133,17,225,132,132,224,132,225,132,225,132,224,132,20,225,132,143,224,132,
+  224,132,225,132,224,132,224,132,225,132,226,132,100,124,197,115,196,115,35,124,
+  99,124,98,124,98,124,33,124,11,160,124,132,224,132,224,132,225,132,226,132,
+  19,225,132,4,226,132,140,162,132,163,124,163,124,100,124,100,124,37,124,197,
+  115,197,115,69,107,5,99,108,148,124,239,26,255,255,138,179,198,226,132,225,
+  124,226,132,226,132,225,132,226,124,38,108,199,99,199,99,3,135,99,4,199,
+  99,3,135,99,137,135,91,135,91,135,99,135,91,135,91,71,91,71,91,71,
+  83,71,91,6,135,91,133,134,91,134,91,135,99,199,99,199,99,3,135,99,
+  4,199,99,131,198,99,133,91,47,149,18,255,255,130,60,231,201,107,6,199,
+  99,133,200,99,199,99,39,108,39,108,199,107,3,39,108,133,199,99,199,99,
+  199,107,199,99,200,99,3,199,99,129,39,108,4,200,99,4,200,107,130,39,
+  108,40,108,3,200,107,131,40,108,39,108,199,107,5,200,107,5,40,108,133,
+  39,108,165,116,164,124,163,124,163,124,3,226,124,130,161,124,246,214,18,255,
+  255,132,236,173,224,124,226,132,225,132,8,226,132,133,33,133,33,133,224,124,
+  35,133,246,214,21,255,255,131,249,222,132,115,128,90,41,0,99,131,64,99,
+  128,107,128,99,20,2,18,255,255,129,106,181,11,96,148,130,229,164,247,230,
+  5,255,255,131,254,255,181,214,42,165,3,100,140,3,101,140,130,37,140,37,
+  140,4,38,140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,199,123,
+  129,198,123,5,134,115,5,133,115,134,132,115,68,115,68,107,198,123,111,173,
+  58,231,6,255,255,132,124,239,236,156,1,107,1,107,8,0,99,130,192,98,
+  117,206,86,255,255,130,46,165,1,99,3,192,98,130,39,132,249,222,17,255,
+  255,131,46,165,1,99,170,148,16,255,255,133,46,165,192,98,2,107,170,148,
+  189,247,106,255,255,132,121,231,169,157,224,124,225,132,16,34,133,129,33,133,
+  6,225,132,129,161,132,3,162,124,130,98,124,99,124,4,98,116,131,98,124,
+  97,124,162,124,13,161,124,131,160,124,161,124,160,124,3,96,124,4,96,116,
+  3,97,116,135,96,116,96,124,96,124,160,124,224,132,225,132,33,133,6,34,
+  133,129,33,133,20,225,132,133,224,132,224,132,225,132,224,132,224,132,6,225,
+  132,134,224,132,224,132,225,132,225,132,224,132,224,132,6,225,132,129,224,132,
+  3,225,132,138,226,132,100,124,197,115,196,115,35,124,99,124,99,124,98,124,
+  33,124,96,124,10,160,124,132,160,132,224,132,225,132,226,132,18,225,132,5,
+  226,132,138,162,132,163,124,163,124,100,124,100,124,37,124,197,115,132,107,134,
+  115,179,181,26,255,255,132,189,247,236,165,160,116,225,124,3,226,132,131,225,
+  132,226,124,38,108,10,199,99,130,135,99,135,99,4,135,91,137,71,91,71,
+  83,7,83,7,75,199,74,7,75,7,83,7,83,71,83,3,71,91,3,135,
+  91,129,135,99,4,135,91,5,199,99,130,133,91,53,190,18,255,255,129,183,
+  206,3,199,99,136,200,99,199,99,200,99,200,99,199,107,39,108,199,107,199,
+  99,3,39,108,133,199,99,199,99,199,107,199,99,200,99,4,199,99,132,200,
+  99,200,107,200,99,200,99,9,200,107,131,40,108,39,108,200,99,5,200,107,
+  144,40,108,40,108,200,107,200,107,40,108,102,116,101,116,37,108,100,116,100,
+  116,163,116,163,124,163,124,161,124,228,132,188,239,17,255,255,131,188,239,37,
+  141,224,124,8,226,132,133,33,133,33,133,224,124,101,141,57,231,21,255,255,
+  131,118,206,2,107,192,90,40,0,99,129,64,99,4,128,99,5,2,18,255,
+  255,130,123,247,162,156,11,96,148,131,97,148,238,189,189,247,6,255,255,131,
+  57,231,175,181,167,148,3,101,140,130,37,140,37,140,4,38,140,130,38,132,
+  38,132,11,39,132,130,199,131,199,131,12,199,123,129,198,123,5,134,115,6,
+  133,115,131,171,148,53,198,189,247,7,255,255,133,52,198,132,115,65,107,1,
+  107,1,107,8,0,99,129,198,131,88,255,255,132,124,239,182,214,118,206,249,
+  222,19,255,255,131,189,247,123,239,124,239,16,255,255,131,189,247,123,239,124,
+  239,106,255,255,132,189,247,47,182,34,133,224,124,18,34,133,129,33,133,6,
+  225,132,129,161,132,3,162,124,137,98,124,98,124,98,116,99,116,98,116,98,
+  116,98,124,97,124,162,124,7,161,124,4,160,124,134,161,124,160,124,160,124,
+  161,124,161,124,160,124,3,96,124,3,96,116,3,97,116,133,96,116,96,124,
+  160,124,224,132,224,132,3,33,133,5,34,133,129,33,133,7,225,132,129,226,
+  132,5,225,132,129,224,132,6,225,132,5,224,132,23,225,132,137,164,124,197,
+  115,196,115,35,124,99,124,99,124,98,124,34,124,32,124,9,160,124,131,160,
+  132,160,124,224,132,20,225,132,4,226,132,138,162,132,162,124,163,124,163,124,
+  100,124,100,124,36,116,131,107,106,140,250,222,26,255,255,133,247,214,37,141,
+  160,116,226,124,226,124,4,226,132,130,226,124,38,108,10,199,99,130,135,99,
+  135,91,5,199,99,145,135,91,71,91,71,91,7,83,199,74,71,66,71,58,
+  7,50,6,58,71,66,71,66,135,66,199,74,7,75,7,83,71,83,71,91,
+  5,135,91,133,135,99,135,99,134,91,199,99,250,222,18,255,255,130,178,165,
+  134,91,5,199,99,140,199,107,199,99,199,107,199,99,199,107,39,108,199,107,
+  199,99,199,99,199,107,199,99,200,99,3,199,99,133,200,99,200,99,200,107,
+  200,99,200,99,5,200,107,129,39,108,4,200,107,132,39,108,199,99,136,99,
+  136,99,5,200,107,136,40,108,39,108,103,108,103,116,102,116,164,124,163,124,
+  99,116,4,100,116,130,98,108,106,149,18,255,255,131,55,223,225,124,226,124,
+  6,226,132,133,225,132,225,132,224,124,169,157,188,239,21,255,255,131,177,181,
+  192,98,192,90,41,0,99,4,128,99,1,64,99,251,1,19,255,255,129,245,
+  222,11,96,148,132,97,148,97,148,229,156,180,214,7,255,255,134,189,247,181,
+  214,108,173,102,148,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,
+  130,199,131,199,131,12,199,123,129,198,123,5,134,115,134,133,115,133,115,134,
+  115,171,148,243,189,59,231,8,255,255,130,248,222,169,148,3,65,107,130,1,
+  107,1,107,8,0,99,129,184,222,127,255,255,111,255,255,132,245,214,101,149,
+  224,124,225,132,19,34,133,7,225,132,140,161,132,162,124,162,124,98,124,98,
+  124,99,116,98,116,98,116,98,124,98,116,98,124,97,124,7,161,124,130,160,
+  124,161,124,9,160,124,4,96,124,6,96,116,136,160,124,224,132,224,132,225,
+  132,225,132,33,133,225,132,33,133,3,34,133,131,33,133,225,132,226,132,13,
+  225,132,129,224,132,5,225,132,6,224,132,8,225,132,129,224,132,3,225,132,
+  131,226,132,225,132,33,133,7,225,132,138,163,124,197,115,196,115,36,116,35,
+  124,99,124,98,124,98,124,33,124,96,124,8,160,124,132,160,132,160,124,224,
+  132,224,132,19,225,132,4,226,132,137,162,132,162,124,163,124,99,124,100,124,
+  35,116,35,116,176,173,190,247,26,255,255,131,112,190,225,124,160,124,4,226,
+  124,3,226,132,130,226,124,38,108,7,199,99,133,135,99,199,99,199,99,135,
+  99,135,99,5,199,99,143,135,99,135,99,71,91,7,83,7,83,199,74,135,
+  66,71,58,199,49,198,49,6,50,7,58,71,58,71,58,135,66,3,71,58,
+  129,135,66,3,199,74,134,7,83,71,83,135,91,134,91,171,124,190,247,17,
+  255,255,133,254,247,173,132,134,91,199,99,200,99,7,199,99,129,199,107,5,
+  199,99,129,200,99,3,199,99,135,200,99,200,99,200,107,200,99,200,99,200,
+  107,200,99,3,200,107,129,39,108,5,200,107,151,199,107,136,91,72,91,136,
+  91,136,99,200,99,200,99,199,107,39,108,39,108,103,116,103,116,102,116,228,
+  124,33,133,34,133,226,132,226,132,226,124,226,124,162,124,161,116,113,190,18,
+  255,255,130,48,182,160,124,5,226,132,133,225,132,225,132,224,124,237,173,254,
+  255,21,255,255,131,237,156,192,90,192,98,41,0,99,5,128,99,1,64,99,
+  234,1,20,255,255,129,47,198,10,96,148,134,97,148,97,148,98,148,98,140,
+  41,173,247,222,8,255,255,132,124,239,117,214,109,173,168,148,3,38,140,130,
+  38,132,38,132,11,39,132,130,199,131,199,131,12,199,123,129,198,123,4,134,
+  115,132,41,132,46,165,117,206,124,239,9,255,255,132,58,231,237,156,66,107,
+  66,107,3,65,107,130,1,107,1,107,7,0,99,129,46,165,127,255,255,110,
+  255,255,132,123,239,235,165,225,124,225,124,20,34,133,129,33,133,6,225,132,
+  141,161,132,161,124,162,124,162,124,98,124,99,124,98,124,98,116,98,116,98,
+  124,98,116,98,124,97,124,6,161,124,12,160,124,4,96,124,5,96,116,143,
+  160,124,160,124,224,132,224,132,225,132,225,132,33,133,225,132,225,132,33,133,
+  34,133,33,133,33,133,225,132,226,132,6,225,132,129,226,132,6,225,132,129,
+  224,132,3,225,132,8,224,132,8,225,132,129,224,132,4,225,132,129,33,133,
+  5,225,132,141,224,132,224,132,225,132,163,132,37,116,196,115,35,116,35,124,
+  35,124,99,124,98,124,34,116,96,124,10,160,124,130,160,132,224,132,18,225,
+  132,4,226,132,136,225,132,162,132,162,124,163,124,99,124,34,116,102,132,182,
+  206,26,255,255,132,124,239,169,157,160,116,225,124,4,226,124,4,226,132,130,
+  163,124,38,108,15,199,99,135,199,107,39,108,199,99,199,99,135,91,135,91,
+  71,91,5,71,83,3,71,91,136,71,83,71,83,7,83,199,74,135,66,135,
+  66,71,66,71,58,3,7,58,132,71,58,135,66,134,66,241,148,18,255,255,
+  135,124,231,137,99,7,83,8,83,72,91,135,91,135,99,10,199,99,131,200,
+  99,200,99,199,99,3,200,99,3,199,99,131,200,107,200,99,200,99,5,200,
+  107,131,200,99,200,107,200,107,5,200,99,137,199,99,199,107,39,108,39,108,
+  39,116,39,116,103,116,103,116,228,124,7,226,132,131,225,132,226,132,121,231,
+  17,255,255,138,190,247,39,149,224,124,226,132,226,132,225,132,33,133,224,132,
+  225,124,113,190,21,255,255,132,189,247,105,140,128,90,192,98,40,0,99,129,
+  64,99,5,128,99,130,64,99,64,99,216,1,21,255,255,129,172,189,9,96,
+  148,136,97,148,97,148,98,148,98,140,98,140,99,140,106,173,247,222,9,255,
+  255,134,189,247,248,222,242,189,44,165,104,148,38,132,11,39,132,130,199,131,
+  199,131,12,199,123,134,200,131,171,148,111,173,53,198,58,231,190,247,10,255,
+  255,131,249,222,45,165,67,107,3,66,107,3,65,107,130,1,107,1,107,6,
+  0,99,130,104,140,254,255,127,255,255,108,255,255,133,254,255,113,190,35,141,
+  224,124,33,133,21,34,133,129,33,133,6,225,132,137,161,132,161,124,162,124,
+  162,124,98,124,99,124,98,124,99,116,99,124,3,98,124,129,97,124,5,161,
+  124,14,160,124,5,96,124,130,96,116,96,116,3,160,124,129,224,132,5,225,
+  132,4,33,133,130,225,132,226,132,18,225,132,11,224,132,5,225,132,129,224,
+  132,5,225,132,132,226,132,226,132,225,132,225,132,3,224,132,141,225,132,226,
+  132,36,124,132,115,196,115,35,124,99,124,99,124,98,124,98,124,33,116,96,
+  124,96,124,8,160,124,130,160,132,224,132,18,225,132,4,226,132,135,225,132,
+  226,132,162,124,162,124,97,116,109,165,124,239,26,255,255,131,245,206,36,133,
+  160,116,7,226,124,138,226,132,225,132,225,132,163,124,38,108,39,108,199,107,
+  199,99,199,99,199,107,8,199,99,129,199,107,3,39,108,132,199,107,199,107,
+  39,108,39,108,11,199,99,3,135,91,139,71,91,71,91,71,83,7,83,7,
+  75,199,74,199,74,135,66,135,66,70,58,181,181,18,255,255,140,56,190,71,
+  58,72,66,136,66,136,66,136,74,200,74,200,74,8,83,71,91,135,91,135,
+  99,6,199,99,4,200,99,3,199,99,3,200,99,132,199,99,199,107,199,107,
+  200,107,6,200,99,132,199,99,199,99,199,107,38,108,5,39,108,131,39,116,
+  103,116,164,124,8,226,132,131,225,124,102,149,189,247,17,255,255,136,57,231,
+  226,132,225,124,226,132,225,132,224,124,35,133,246,214,21,255,255,131,249,222,
+  198,123,128,90,41,0,99,129,64,99,4,128,99,132,64,99,64,99,65,99,
+  65,91,242,1,22,255,255,129,105,181,8,96,148,133,97,148,97,148,98,148,
+  98,140,98,140,3,99,140,131,41,165,116,206,189,247,10,255,255,135,189,247,
+  57,231,117,206,176,181,237,164,170,148,40,132,6,39,132,130,199,131,199,131,
+  5,199,123,136,40,132,106,140,172,148,47,165,178,181,118,206,249,222,125,239,
+  12,255,255,133,254,255,183,214,171,148,67,107,67,107,4,66,107,3,65,107,
+  130,1,107,1,107,5,0,99,130,197,123,124,239,127,255,255,108,255,255,132,
+  55,223,167,149,224,124,225,132,23,34,133,130,33,133,226,132,5,225,132,129,
+  161,132,3,162,124,132,98,124,99,124,98,124,99,124,5,98,124,5,161,124,
+  16,160,124,137,96,124,160,124,224,132,160,124,96,116,160,124,160,124,224,132,
+  224,132,5,225,132,129,33,133,23,225,132,5,224,132,129,225,132,5,224,132,
+  6,225,132,129,224,132,3,225,132,3,226,132,3,225,132,143,224,132,224,132,
+  225,132,226,132,100,124,132,115,196,115,35,124,98,124,99,124,98,124,98,124,
+  34,116,32,116,96,124,9,160,124,130,224,132,224,132,18,225,132,136,226,132,
+  225,132,226,132,225,132,162,132,161,124,163,132,115,198,26,255,255,132,190,247,
+  46,174,160,124,161,124,8,226,124,3,226,132,141,163,124,39,108,39,108,199,
+  107,199,107,39,108,199,107,199,107,199,99,199,99,200,99,200,99,136,99,4,
+  199,99,133,199,107,199,107,39,108,199,107,199,107,4,39,108,130,199,107,199,
+  107,6,39,108,5,199,99,138,135,99,135,99,135,91,135,91,71,91,71,91,
+  71,83,6,75,8,83,250,222,18,255,255,133,115,165,134,66,8,83,8,83,
+  8,75,7,200,74,3,8,83,130,72,91,136,91,4,136,99,136,200,99,200,
+  99,199,99,200,99,200,99,199,99,200,99,200,99,3,136,99,138,136,91,136,
+  99,136,99,135,99,135,99,199,99,199,107,199,107,38,108,38,108,4,39,108,
+  131,39,116,103,116,164,124,9,226,132,130,224,124,45,182,18,255,255,134,114,
+  198,224,124,225,132,224,124,102,149,57,231,21,255,255,131,118,206,67,107,192,
+  90,41,0,99,130,64,99,128,107,3,128,99,3,64,99,130,64,91,1,91,
+  235,1,22,255,255,130,254,255,105,181,7,96,148,133,97,148,97,148,98,148,
+  98,140,98,140,3,99,140,134,100,140,100,140,167,148,175,189,248,222,254,255,
+  12,255,255,145,190,247,124,239,58,231,183,214,118,206,52,198,243,189,242,189,
+  242,189,243,189,52,198,53,206,183,214,249,222,59,231,124,239,190,247,16,255,
+  255,132,58,231,177,181,40,132,68,107,3,67,107,4,66,107,3,65,107,130,
+  1,107,1,107,4,0,99,130,197,123,123,239,127,255,255,107,255,255,132,123,
+  239,45,174,225,132,224,124,25,34,133,130,225,132,226,132,5,225,132,129,161,
+  124,3,162,124,5,99,124,3,98,124,129,97,124,6,161,124,3,160,124,129,
+  160,132,12,160,124,135,160,132,224,132,160,124,96,116,96,124,160,124,224,132,
+  19,225,132,130,226,132,226,132,12,225,132,132,224,132,224,132,225,132,225,132,
+  7,224,132,3,225,132,130,224,132,224,132,3,225,132,130,226,132,226,132,3,
+  225,132,142,224,132,224,132,225,132,225,132,163,124,196,115,196,115,35,124,98,
+  124,99,124,99,124,98,124,34,116,33,116,10,160,124,130,160,132,224,132,17,
+  225,132,4,226,132,132,225,124,160,124,105,157,57,231,26,255,255,132,57,223,
+  103,149,160,116,225,124,9,226,124,135,226,132,226,124,226,132,164,116,39,108,
+  39,108,199,99,3,199,107,134,39,108,199,107,200,99,199,99,200,99,200,99,
+  5,199,99,129,200,99,5,199,99,129,199,107,15,39,108,138,199,107,199,107,
+  199,99,199,99,135,99,135,91,135,91,6,83,43,116,190,247,17,255,255,136,
+  254,255,174,140,6,83,72,91,72,91,72,83,71,83,71,91,3,71,83,134,
+  7,83,8,83,7,83,8,83,200,74,200,82,3,8,83,129,200,74,3,8,
+  83,129,72,83,6,72,91,132,136,91,72,91,136,99,200,99,4,199,99,138,
+  199,107,38,108,38,108,39,108,199,107,39,108,39,108,39,116,103,116,228,124,
+  10,226,132,130,224,124,246,214,18,255,255,132,168,157,160,116,234,165,188,239,
+  21,255,255,131,178,189,1,99,192,90,41,0,99,130,64,99,128,107,3,128,
+  99,3,64,99,131,64,91,1,91,1,91,144,1,23,255,255,130,254,255,170,
+  181,6,96,148,133,97,148,97,148,98,148,98,140,98,140,3,99,140,4,100,
+  140,133,101,140,233,156,240,189,248,222,190,247,39,255,255,135,250,222,242,189,
+  170,148,132,115,68,115,68,107,68,107,3,67,107,4,66,107,3,65,107,130,
+  1,107,1,107,3,0,99,130,39,132,124,239,127,255,255,107,255,255,132,178,
+  198,35,141,224,124,225,132,25,34,133,130,226,132,226,132,5,225,132,130,161,
+  132,161,124,3,162,124,5,99,124,3,98,124,7,161,124,16,160,124,133,224,
+  132,160,124,96,116,96,116,160,124,4,224,132,129,225,132,3,224,132,20,225,
+  132,130,224,132,224,132,6,225,132,9,224,132,5,225,132,130,224,132,224,132,
+  8,225,132,136,224,132,224,132,225,132,162,124,196,115,132,115,35,116,34,124,
+  3,98,124,130,34,124,33,116,11,160,124,129,224,132,19,225,132,132,226,132,
+  160,124,161,124,47,190,27,255,255,131,114,198,226,124,160,116,14,226,124,131,
+  101,116,39,108,39,108,3,199,107,3,39,108,6,200,99,132,199,99,199,99,
+  136,99,200,99,5,199,99,19,39,108,4,199,99,131,135,99,69,83,48,149,
+  18,255,255,133,125,239,106,116,134,91,135,99,135,99,6,135,91,4,71,91,
+  146,72,83,8,83,71,91,71,91,71,83,72,91,71,91,72,91,71,91,135,
+  91,71,91,135,91,136,91,72,91,136,99,136,99,136,91,136,99,3,199,99,
+  130,199,107,199,107,3,39,108,3,199,107,132,39,108,39,108,103,116,227,124,
+  10,226,132,131,225,124,36,141,124,239,17,255,255,130,122,231,47,182,21,255,
+  255,132,254,255,237,164,128,90,192,98,41,0,99,129,64,99,4,128,99,3,
+  64,99,132,65,91,1,91,1,91,193,82,174,1,25,255,255,129,172,189,5,
+  96,148,133,97,148,97,148,98,148,98,140,98,140,3,99,140,4,100,140,3,
+  101,140,134,37,140,168,148,109,173,116,206,58,231,189,247,30,255,255,133,254,
+  255,59,231,118,206,111,173,105,140,3,133,115,132,132,115,68,115,68,107,68,
+  107,3,67,107,4,66,107,3,65,107,134,1,107,1,107,0,99,0,99,170,
+  148,189,247,127,255,255,106,255,255,132,56,223,169,157,224,124,225,132,27,34,
+  133,136,226,132,226,132,225,132,225,132,226,132,225,132,225,132,161,132,3,162,
+  124,4,99,124,5,98,124,3,161,124,129,160,124,3,161,124,18,160,124,134,
+  96,116,160,124,160,132,224,132,224,132,225,132,3,224,132,130,160,132,224,132,
+  8,225,132,130,224,132,224,132,17,225,132,11,224,132,5,225,132,130,224,132,
+  224,132,4,225,132,139,224,132,225,132,225,132,224,132,225,132,225,132,162,132,
+  36,124,196,115,195,115,34,124,4,98,124,129,33,124,11,160,124,129,224,132,
+  17,225,132,133,226,132,225,132,160,124,37,149,247,222,26,255,255,132,188,239,
+  235,165,160,116,225,124,12,226,124,132,225,124,225,124,226,124,102,116,8,39,
+  108,132,200,107,200,107,200,99,200,99,4,199,99,132,136,99,136,99,199,99,
+  200,99,3,199,99,131,39,108,199,99,199,107,6,39,108,130,199,107,199,107,
+  8,39,108,130,199,99,199,107,3,199,99,131,198,99,134,91,118,190,18,255,
+  255,131,249,222,198,99,198,99,6,199,99,4,135,99,132,135,91,71,91,72,
+  83,71,91,3,135,91,130,135,99,135,91,5,135,99,5,136,99,4,199,99,
+  131,199,107,39,108,39,108,5,199,107,130,39,108,165,116,9,226,132,3,226,
+  124,130,161,124,171,165,39,255,255,131,125,247,105,140,128,90,42,0,99,129,
+  64,99,3,128,99,3,64,99,134,64,91,65,91,1,91,1,91,1,83,193,
+  82,190,1,26,255,255,129,47,198,4,96,148,133,97,148,97,148,98,148,98,
+  140,98,140,3,99,140,4,100,140,3,101,140,130,37,140,37,140,3,38,140,
+  135,168,148,45,165,177,189,118,206,249,222,124,239,190,247,19,255,255,136,189,
+  247,59,231,183,214,243,189,238,164,105,140,134,115,134,115,5,133,115,132,132,
+  115,68,115,68,107,68,107,3,67,107,4,66,107,3,65,107,132,1,107,1,
+  107,65,107,177,181,127,255,255,106,255,255,132,188,239,47,182,225,132,224,124,
+  29,34,133,140,225,132,226,132,225,132,225,132,226,132,225,132,225,132,161,132,
+  161,124,162,124,162,124,98,124,3,99,124,4,98,124,129,97,124,3,161,124,
+  131,160,124,161,124,161,124,21,160,124,4,224,132,133,160,132,160,124,161,124,
+  160,132,224,132,8,225,132,129,224,132,18,225,132,6,224,132,130,225,132,225,
+  132,4,224,132,5,225,132,129,224,132,11,225,132,133,99,124,196,115,35,116,
+  34,124,97,124,3,98,124,130,33,124,96,124,10,160,124,129,160,132,17,225,
+  132,132,224,124,225,124,236,173,188,247,26,255,255,131,246,214,37,141,160,116,
+  15,226,124,130,225,124,163,124,12,39,108,135,199,99,199,99,39,108,39,108,
+  199,99,199,99,199,107,5,199,99,132,199,107,199,99,199,107,199,107,4,39,
+  108,141,199,107,199,99,39,108,199,107,199,107,199,99,199,107,39,108,39,108,
+  199,107,199,99,199,99,199,107,4,199,99,131,134,99,199,107,59,231,18,255,
+  255,130,52,190,197,99,3,199,107,130,39,108,199,107,6,199,99,131,135,99,
+  135,91,135,99,7,199,99,4,135,99,132,199,99,199,99,136,99,200,99,5,
+  199,99,130,199,107,39,108,5,199,107,130,102,116,227,124,5,226,132,129,227,
+  124,6,226,124,131,226,132,224,124,178,198,37,255,255,131,58,231,198,123,128,
+  90,42,0,99,129,64,99,4,128,99,131,64,99,64,99,64,91,3,1,91,
+  131,1,83,193,82,193,82,213,1,27,255,255,137,180,214,162,148,96,148,96,
+  148,97,148,97,148,98,148,98,140,98,140,3,99,140,4,100,140,3,101,140,
+  130,37,140,37,140,4,38,140,141,38,132,38,132,39,132,39,132,104,140,170,
+  148,236,156,111,173,178,181,52,198,118,206,248,222,249,222,4,58,231,139,249,
+  222,184,214,118,206,53,198,242,189,112,173,237,156,107,148,41,132,199,123,198,
+  123,5,134,115,5,133,115,132,132,115,68,115,68,107,68,107,3,67,107,4,
+  66,107,3,65,107,131,1,107,38,132,248,222,127,255,255,106,255,255,132,244,
+  206,36,141,224,124,225,132,29,34,133,137,225,132,226,132,225,132,225,132,226,
+  132,226,132,225,132,225,132,161,132,3,162,124,129,163,124,4,99,124,4,98,
+  124,4,161,124,130,160,124,161,124,21,160,124,134,224,132,224,132,161,132,162,
+  124,97,124,160,132,11,225,132,133,224,132,224,132,225,132,225,132,226,132,7,
+  225,132,130,224,132,224,132,6,225,132,4,224,132,4,225,132,5,224,132,15,
+  225,132,132,99,124,35,124,34,124,34,124,5,97,124,130,32,124,96,124,9,
+  160,124,130,160,132,224,132,15,225,132,131,224,124,36,141,245,214,26,255,255,
+  132,254,247,47,182,225,124,225,124,16,226,124,130,226,132,164,116,5,39,108,
+  137,200,107,200,107,200,99,200,107,199,107,200,107,200,99,136,99,200,99,13,
+  199,99,3,39,108,129,199,107,10,199,99,129,199,107,3,199,99,129,199,107,
+  4,199,99,131,134,91,171,124,190,247,18,255,255,130,112,157,198,99,4,39,
+  108,129,199,107,4,39,108,130,38,108,199,107,4,199,99,130,199,107,199,107,
+  16,199,99,143,199,107,199,107,199,99,135,99,199,99,199,107,38,108,164,124,
+  226,132,227,132,227,132,226,132,227,124,163,124,227,124,3,226,124,135,227,124,
+  226,124,226,132,226,132,225,132,226,132,57,231,35,255,255,131,182,214,66,107,
+  192,90,39,0,99,132,0,107,0,99,64,99,64,99,4,128,99,131,64,99,
+  64,91,64,91,3,1,91,132,1,83,193,82,193,82,194,82,161,1,28,255,
+  255,136,57,239,38,165,96,148,97,148,97,148,98,148,98,140,98,140,3,99,
+  140,4,100,140,3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,
+  11,39,132,130,199,131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,
+  132,132,115,68,115,68,107,68,107,3,67,107,4,66,107,133,65,107,65,107,
+  67,115,176,181,190,247,127,255,255,105,255,255,135,121,231,169,165,224,124,225,
+  132,225,132,33,133,33,133,28,34,133,142,225,132,226,132,225,132,225,132,226,
+  132,226,132,225,132,225,132,161,132,161,124,162,124,162,124,163,124,99,124,7,
+  98,124,4,161,124,7,160,124,130,160,132,160,132,13,160,124,129,224,132,3,
+  225,132,132,161,124,224,132,225,132,33,133,9,225,132,129,224,132,11,225,132,
+  3,224,132,6,225,132,4,224,132,4,225,132,5,224,132,15,225,132,133,163,
+  124,98,124,34,124,34,124,33,124,4,97,124,130,194,115,32,124,10,160,124,
+  129,224,132,13,225,132,132,224,132,224,124,169,165,123,239,26,255,255,131,122,
+  231,168,157,160,124,18,226,124,130,226,132,101,116,4,39,108,129,200,107,3,
+  200,99,130,200,107,200,107,4,200,99,4,199,107,8,199,99,5,39,108,129,
+  199,107,19,199,99,130,133,91,112,157,18,255,255,135,190,247,171,132,198,99,
+  199,107,199,107,39,108,199,107,5,39,108,129,38,108,6,39,108,3,199,107,
+  4,199,99,129,199,107,8,199,99,135,199,107,199,107,199,99,135,99,199,99,
+  38,108,228,124,3,227,132,136,227,124,227,124,163,124,163,124,226,132,226,124,
+  227,124,227,124,5,226,132,131,224,124,168,157,254,255,33,255,255,131,242,189,
+  192,98,192,98,42,0,99,129,64,99,3,128,99,3,64,99,132,1,91,1,
+  91,1,83,1,83,3,193,82,130,129,74,65,74,176,1,29,255,255,135,254,
+  255,239,197,97,148,97,148,98,148,98,140,98,140,3,99,140,4,100,140,3,
+  101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,
+  131,199,131,12,199,123,129,198,123,5,134,115,5,133,115,132,132,115,68,115,
+  68,107,68,107,3,67,107,5,66,107,130,236,156,59,231,127,255,255,105,255,
+  255,132,189,247,46,182,225,132,224,124,3,225,132,130,33,133,33,133,27,34,
+  133,134,226,132,225,132,226,132,225,132,225,132,226,132,3,225,132,129,161,132,
+  4,162,124,8,98,124,4,161,124,5,160,124,132,160,132,160,132,160,124,160,
+  132,13,160,124,4,225,132,130,224,132,224,132,11,225,132,129,224,132,3,225,
+  132,129,226,132,8,225,132,129,224,132,8,225,132,130,224,132,224,132,5,225,
+  132,4,224,132,11,225,132,129,224,132,4,225,132,133,162,132,99,124,35,116,
+  34,124,34,124,4,97,124,130,34,116,32,116,10,160,124,130,224,132,224,132,
+  11,225,132,131,224,124,226,132,179,206,27,255,255,131,179,198,226,132,224,124,
+  9,226,124,129,162,124,8,226,124,131,225,124,226,124,102,116,4,39,108,129,
+  200,107,3,200,99,3,200,107,129,200,99,4,200,107,131,199,107,39,108,199,
+  107,4,199,99,129,135,99,16,199,99,129,135,99,10,199,99,131,198,107,133,
+  91,118,198,18,255,255,134,59,231,201,107,135,99,136,99,199,107,199,107,9,
+  39,108,129,38,108,5,39,108,129,199,107,3,199,99,132,199,107,199,107,199,
+  99,199,107,5,199,99,3,199,107,131,199,99,38,108,228,124,5,227,124,131,
+  163,124,227,124,226,124,3,227,124,7,226,132,130,224,124,47,182,32,255,255,
+  131,45,165,192,90,192,98,38,0,99,135,64,99,0,107,0,99,0,99,64,
+  99,64,99,128,99,4,64,99,131,0,91,1,83,1,83,4,193,82,131,129,
+  74,66,66,1,58,215,1,31,255,255,133,56,231,40,173,98,148,98,140,98,
+  140,3,99,140,4,100,140,3,101,140,130,37,140,37,140,4,38,140,130,38,
+  132,38,132,11,39,132,130,199,131,199,131,12,199,123,129,198,123,5,134,115,
+  5,133,115,132,132,115,68,115,68,107,68,107,3,67,107,3,66,107,130,235,
+  156,249,222,127,255,255,106,255,255,138,244,206,36,141,160,124,224,132,224,132,
+  225,132,225,132,226,132,225,132,33,133,27,34,133,143,225,132,226,132,226,132,
+  225,132,225,132,226,132,226,132,225,132,225,132,161,132,161,124,162,124,162,124,
+  99,124,99,124,7,98,124,132,161,124,160,124,161,124,161,124,6,160,124,130,
+  160,132,160,132,13,160,124,130,224,132,224,132,3,225,132,129,224,132,13,225,
+  132,129,224,132,7,225,132,3,224,132,10,225,132,3,224,132,3,225,132,133,
+  224,132,225,132,225,132,224,132,224,132,6,225,132,129,224,132,4,225,132,129,
+  224,132,5,225,132,139,99,124,35,116,34,116,34,124,33,124,96,124,97,124,
+  96,124,34,124,194,115,96,124,8,160,124,131,96,124,160,132,224,132,9,225,
+  132,132,224,132,224,124,167,157,122,231,26,255,255,132,189,247,235,165,224,124,
+  225,124,7,226,124,129,163,124,3,162,124,129,163,124,8,226,124,129,163,124,
+  5,39,108,3,200,99,3,200,107,130,199,107,199,107,5,200,107,4,199,107,
+  14,199,99,135,135,99,199,99,199,99,135,99,199,99,136,91,135,99,10,199,
+  99,131,135,91,200,99,58,223,18,255,255,131,183,206,198,99,199,99,11,39,
+  108,129,38,108,6,39,108,136,199,107,199,99,39,108,39,108,199,107,199,99,
+  199,107,200,99,3,199,99,135,199,107,199,107,199,99,198,107,101,116,228,124,
+  228,124,3,164,124,135,163,124,163,116,227,124,226,124,227,124,227,124,226,124,
+  9,226,132,130,226,124,247,214,29,255,255,131,124,239,105,140,192,90,40,0,
+  99,131,0,107,0,107,0,99,5,64,99,132,64,91,64,91,0,91,1,91,
+  3,193,82,134,193,74,129,74,129,74,66,66,1,66,1,58,236,1,33,255,
+  255,131,180,214,230,156,98,140,3,99,140,4,100,140,3,101,140,130,37,140,
+  37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,199,
+  123,129,198,123,5,134,115,5,133,115,132,132,115,68,115,68,107,68,107,3,
+  67,107,131,132,115,46,165,58,231,127,255,255,106,255,255,132,122,231,169,165,
+  160,124,224,124,5,225,132,131,226,132,225,132,33,133,27,34,133,146,225,132,
+  226,132,226,132,225,132,225,132,226,132,226,132,225,132,226,132,161,132,162,124,
+  162,124,163,124,162,124,99,124,98,124,98,124,99,124,4,98,124,132,161,124,
+  161,124,160,124,161,124,6,160,124,3,160,132,10,160,124,131,96,124,160,124,
+  224,132,3,225,132,129,224,132,4,225,132,3,224,132,15,225,132,3,224,132,
+  6,225,132,129,224,132,3,225,132,4,224,132,133,225,132,224,132,224,132,225,
+  132,225,132,5,224,132,14,225,132,139,162,124,35,116,195,115,35,116,33,124,
+  96,124,97,124,96,124,97,124,195,115,32,116,10,160,124,129,224,132,8,225,
+  132,132,224,124,224,124,111,190,254,255,26,255,255,132,247,222,101,141,224,124,
+  225,132,7,226,124,6,162,124,7,226,124,130,226,132,163,124,4,39,108,131,
+  200,107,136,99,136,99,4,200,99,131,200,107,199,107,199,107,4,200,107,131,
+  200,99,199,99,199,107,6,199,99,4,135,99,143,199,99,199,99,135,99,199,
+  99,135,99,135,99,135,91,199,99,135,91,135,99,135,91,135,99,199,99,199,
+  99,135,99,8,199,99,131,134,91,107,124,189,247,18,255,255,130,242,173,197,
+  99,11,39,108,130,102,108,102,108,5,39,108,135,199,107,199,107,39,108,39,
+  108,199,107,200,99,200,107,3,200,99,3,199,99,133,38,108,164,124,228,124,
+  164,124,165,124,3,164,124,129,163,116,4,227,124,129,226,124,9,226,132,132,
+  227,132,225,124,102,149,190,247,27,255,255,131,249,230,133,123,192,90,39,0,
+  99,151,0,107,64,99,0,107,64,107,64,99,64,99,64,91,64,99,64,99,
+  64,91,64,91,1,91,1,83,193,82,193,82,193,74,129,74,129,74,65,74,
+  66,66,1,66,1,58,1,58,215,1,34,255,255,133,190,247,114,206,231,156,
+  99,140,99,140,4,100,140,3,101,140,130,37,140,37,140,4,38,140,130,38,
+  132,38,132,11,39,132,130,199,131,199,131,12,199,123,129,198,123,5,134,115,
+  5,133,115,136,132,115,68,115,68,107,68,107,67,107,104,140,242,189,124,239,
+  127,255,255,106,255,255,134,189,247,46,182,226,132,160,124,224,132,224,132,5,
+  225,132,131,226,132,225,132,33,133,26,34,133,131,226,132,225,132,226,132,3,
+  225,132,133,226,132,226,132,225,132,226,132,161,132,3,162,124,131,163,124,99,
+  124,99,124,5,98,124,133,97,124,161,124,161,124,160,124,161,124,7,160,124,
+  130,160,132,160,132,10,160,124,135,96,124,160,124,224,132,224,132,225,132,225,
+  132,224,132,5,225,132,130,224,132,224,132,17,225,132,3,224,132,6,225,132,
+  130,224,132,225,132,6,224,132,132,225,132,224,132,225,132,225,132,4,224,132,
+  14,225,132,139,161,132,99,124,35,116,34,124,34,124,97,124,97,124,96,124,
+  96,124,35,116,194,115,10,160,124,129,224,132,7,225,132,131,160,124,102,149,
+  55,223,26,255,255,133,254,255,46,182,225,132,224,124,226,132,6,226,124,8,
+  162,124,7,226,124,130,226,132,164,124,4,39,108,129,200,99,6,136,99,4,
+  200,99,134,200,107,200,99,200,107,200,99,200,99,199,107,10,199,99,129,135,
+  99,3,199,99,129,135,99,4,135,91,134,199,99,135,99,135,91,135,99,199,
+  99,135,99,9,199,99,130,69,91,239,148,19,255,255,130,46,149,197,99,9,
+  39,108,3,102,108,129,103,108,4,39,108,129,199,99,3,199,107,5,200,99,
+  140,199,99,199,99,198,99,101,116,164,124,228,124,165,124,102,116,101,116,164,
+  124,164,124,100,116,5,227,124,9,226,132,133,227,132,226,132,226,132,224,124,
+  237,173,26,255,255,131,117,206,67,107,192,90,38,0,99,133,0,107,0,99,
+  0,107,64,107,0,107,3,64,99,134,1,91,65,91,65,91,1,91,1,91,
+  1,83,3,193,82,133,129,74,129,74,66,74,66,66,1,66,3,1,58,192,
+  1,36,255,255,131,190,247,116,214,41,165,4,100,140,3,101,140,130,37,140,
+  37,140,4,38,140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,199,
+  123,129,198,123,5,134,115,5,133,115,133,132,115,68,115,39,132,111,173,248,
+  222,127,255,255,108,255,255,132,180,206,37,149,160,124,160,124,3,224,132,137,
+  225,132,225,132,224,132,225,132,225,132,226,132,226,132,33,133,33,133,25,34,
+  133,133,226,132,225,132,226,132,225,132,225,132,3,226,132,131,225,132,226,132,
+  161,132,4,162,124,130,99,124,99,124,6,98,124,4,161,124,20,160,124,129,
+  160,132,3,224,132,133,225,132,224,132,224,132,225,132,225,132,4,224,132,7,
+  225,132,129,224,132,9,225,132,130,224,132,224,132,9,225,132,9,224,132,130,
+  225,132,225,132,4,224,132,7,225,132,129,224,132,6,225,132,133,99,124,195,
+  115,34,116,34,124,32,124,3,96,124,131,33,124,195,115,96,124,9,160,124,
+  129,224,132,5,225,132,132,224,124,224,124,45,182,189,247,26,255,255,133,57,
+  231,168,157,160,124,225,124,226,132,6,226,124,9,162,124,7,226,124,135,226,
+  132,164,116,39,108,199,107,39,108,39,108,200,99,7,136,99,7,200,99,130,
+  199,99,200,99,14,199,99,129,135,99,4,135,91,129,135,99,4,135,91,141,
+  135,99,199,99,135,99,199,99,199,99,135,99,199,99,135,99,135,99,199,99,
+  135,99,70,83,244,181,18,255,255,131,125,239,170,124,198,99,16,39,108,132,
+  199,99,199,99,199,107,200,107,3,200,99,3,199,99,135,135,99,38,116,228,
+  124,164,124,101,116,38,108,38,108,3,164,124,129,163,124,4,227,124,8,226,
+  132,130,227,132,227,124,3,226,132,131,225,132,225,124,245,214,24,255,255,131,
+  176,181,192,98,192,98,39,0,99,130,64,107,0,99,3,64,107,131,0,99,
+  64,91,64,91,4,1,91,129,1,83,3,193,82,133,129,74,129,74,65,74,
+  66,66,1,66,4,1,58,173,1,39,255,255,132,248,222,173,181,166,148,100,
+  140,3,101,140,130,37,140,37,140,4,38,140,130,38,132,38,132,11,39,132,
+  130,199,131,199,131,12,199,123,129,198,123,5,134,115,4,133,115,132,41,140,
+  112,173,184,214,190,247,127,255,255,108,255,255,133,122,231,170,165,160,124,160,
+  124,160,132,4,224,132,6,225,132,131,226,132,225,132,33,133,25,34,133,131,
+  225,132,225,132,226,132,3,225,132,133,226,132,226,132,225,132,225,132,161,132,
+  4,162,124,129,99,124,7,98,124,4,161,124,5,160,124,3,160,132,12,160,
+  124,4,224,132,132,225,132,224,132,224,132,225,132,3,224,132,130,225,132,224,
+  132,15,225,132,4,224,132,13,225,132,11,224,132,8,225,132,129,224,132,5,
+  225,132,133,163,124,196,115,195,115,34,124,34,124,3,96,124,131,33,124,195,
+  115,96,116,9,160,124,130,160,132,224,132,3,225,132,131,160,124,36,141,245,
+  214,27,255,255,133,178,198,227,132,161,124,226,132,226,132,7,226,124,9,162,
+  124,5,226,124,133,226,132,226,132,226,124,100,116,39,108,3,199,99,129,200,
+  99,4,136,99,129,200,99,4,136,99,130,200,99,200,99,3,136,99,129,200,
+  99,14,199,99,130,198,99,199,99,10,135,91,3,199,99,131,135,99,135,99,
+  199,99,4,135,99,131,71,91,199,99,249,214,18,255,255,135,250,222,40,108,
+  198,107,39,108,39,108,199,107,199,107,10,39,108,130,199,107,199,99,4,200,
+  99,139,199,99,199,99,135,99,135,99,71,91,71,91,101,116,165,124,102,116,
+  198,107,38,108,3,164,124,130,163,124,163,124,3,227,124,15,226,132,131,160,
+  124,101,141,190,247,21,255,255,131,254,255,237,164,192,90,42,0,99,4,64,
+  107,129,0,99,5,1,91,142,194,82,193,82,193,82,193,74,129,74,129,74,
+  65,74,65,66,2,66,2,58,1,58,1,58,1,50,1,50,192,1,41,255,
+  255,135,188,247,117,206,108,173,102,148,101,140,37,140,37,140,4,38,140,130,
+  38,132,38,132,11,39,132,130,199,131,199,131,12,199,123,129,198,123,5,134,
+  115,132,40,132,237,156,243,189,58,231,127,255,255,110,255,255,135,189,247,48,
+  190,226,132,160,124,160,124,224,132,160,132,4,224,132,5,225,132,132,226,132,
+  225,132,225,132,33,133,25,34,133,131,225,132,225,132,226,132,3,225,132,133,
+  226,132,225,132,225,132,162,132,161,132,4,162,124,130,99,124,99,124,6,98,
+  124,130,161,124,161,124,22,160,124,129,160,132,9,224,132,132,225,132,225,132,
+  224,132,224,132,15,225,132,3,224,132,9,225,132,132,224,132,224,132,225,132,
+  225,132,11,224,132,14,225,132,134,163,124,196,115,195,115,34,116,34,116,33,
+  124,3,96,124,130,194,115,193,115,8,160,124,136,160,132,224,132,224,132,225,
+  132,224,124,224,124,235,173,123,239,26,255,255,132,123,239,235,165,161,124,225,
+  124,4,226,124,129,225,124,3,226,124,10,162,124,129,163,124,5,226,124,133,
+  226,132,226,124,160,116,35,108,39,108,3,199,99,129,135,99,4,136,91,130,
+  136,99,136,99,3,136,91,133,136,99,136,99,199,99,136,99,136,99,12,199,
+  99,130,198,99,135,99,3,198,99,131,134,99,135,91,135,99,6,135,91,130,
+  135,99,135,99,5,199,99,3,135,99,133,199,99,135,91,134,91,42,116,124,
+  239,18,255,255,131,118,198,198,99,199,107,12,39,108,146,199,107,199,107,199,
+  99,199,99,200,99,200,99,199,99,135,99,135,91,71,91,7,83,7,83,71,
+  83,38,116,38,108,198,99,198,107,165,124,3,164,124,129,163,124,3,227,124,
+  15,226,132,131,224,124,101,141,246,214,21,255,255,131,59,239,104,140,192,90,
+  41,0,99,129,0,107,5,64,107,129,64,99,4,1,91,138,1,83,194,82,
+  193,82,193,74,129,74,129,74,65,74,65,66,65,66,2,58,3,1,58,130,
+  1,50,193,49,216,1,44,255,255,132,124,247,182,214,175,181,169,156,4,38,
+  140,130,38,132,38,132,11,39,132,130,199,131,199,131,12,199,123,135,198,123,
+  199,123,106,140,46,165,243,189,249,222,189,247,127,255,255,112,255,255,133,245,
+  214,37,149,160,116,160,124,160,124,3,160,132,4,224,132,6,225,132,131,226,
+  132,225,132,33,133,24,34,133,145,33,133,225,132,226,132,226,132,225,132,225,
+  132,226,132,226,132,225,132,225,132,162,132,161,132,162,124,162,124,163,124,162,
+  124,99,124,7,98,124,129,161,124,25,160,124,134,224,132,224,132,160,132,224,
+  132,160,132,224,132,5,225,132,129,224,132,10,225,132,136,224,132,225,132,225,
+  132,224,132,225,132,225,132,224,132,224,132,14,225,132,11,224,132,13,225,132,
+  140,226,132,36,124,132,115,194,115,34,116,34,116,32,124,96,124,32,124,33,
+  124,131,115,96,124,8,160,124,133,160,132,224,132,160,124,35,141,179,206,27,
+  255,255,131,246,214,36,141,160,116,9,226,124,11,162,124,129,163,124,4,226,
+  124,139,227,124,226,124,160,116,32,108,196,99,38,108,199,99,199,99,135,99,
+  136,99,72,91,3,136,91,134,135,99,135,99,136,91,72,91,72,91,136,91,
+  3,136,99,129,135,99,11,199,99,132,198,99,198,99,135,99,134,99,5,198,
+  99,131,134,99,134,99,135,91,3,135,99,143,199,99,135,99,199,99,198,99,
+  135,99,199,99,199,99,135,99,135,99,199,99,199,99,135,99,199,99,134,91,
+  237,140,19,255,255,130,177,165,134,91,10,39,108,150,199,107,199,107,199,99,
+  199,107,199,99,200,99,199,99,135,99,135,91,71,91,71,91,7,83,7,83,
+  199,74,7,83,198,99,134,99,198,107,164,124,100,116,100,116,164,124,3,227,
+  124,129,226,124,8,226,132,131,227,132,226,132,163,124,4,226,132,131,224,124,
+  168,157,188,239,21,255,255,131,248,222,132,115,192,90,41,0,99,129,0,107,
+  6,64,107,132,0,91,1,91,1,91,193,82,3,194,82,134,194,74,129,74,
+  129,74,65,74,65,66,65,66,5,1,58,130,193,49,193,49,156,1,47,255,
+  255,135,254,255,58,231,117,206,176,181,235,156,104,140,38,132,11,39,132,130,
+  199,131,199,131,8,199,123,134,41,132,171,148,47,165,243,189,184,214,123,239,
+  127,255,255,115,255,255,133,122,231,171,165,160,124,160,124,160,132,4,160,124,
+  129,160,132,4,224,132,6,225,132,131,226,132,225,132,33,133,24,34,133,145,
+  33,133,225,132,226,132,226,132,225,132,225,132,226,132,226,132,225,132,225,132,
+  161,132,161,132,162,124,163,124,163,124,99,124,99,124,7,98,124,129,161,124,
+  22,160,124,129,160,132,28,224,132,15,225,132,131,224,132,224,132,225,132,11,
+  224,132,14,225,132,134,99,124,132,115,131,115,195,115,195,115,33,124,3,96,
+  124,130,194,115,33,116,3,160,124,129,224,124,6,160,124,130,169,165,123,231,
+  26,255,255,132,189,247,46,182,161,124,225,124,9,226,124,12,162,124,6,226,
+  124,146,225,124,96,108,194,99,131,99,198,107,199,107,135,99,135,99,135,91,
+  72,91,72,91,136,91,135,91,135,99,135,99,136,91,135,91,135,91,7,135,
+  99,8,199,99,11,198,99,130,134,99,134,91,3,198,99,133,134,99,198,99,
+  199,99,199,99,135,99,6,199,99,133,135,99,199,99,199,99,134,91,242,173,
+  18,255,255,131,190,247,237,140,197,99,6,39,108,130,199,107,39,108,3,199,
+  99,3,135,99,130,135,91,135,91,4,71,91,142,7,83,199,74,71,66,7,
+  83,134,91,197,107,164,124,100,116,100,116,164,124,227,124,226,124,227,124,227,
+  124,8,226,132,129,227,124,5,226,132,132,225,124,225,124,237,173,190,247,22,
+  255,255,130,52,198,192,90,40,0,99,9,64,107,140,0,91,1,91,193,82,
+  193,82,130,82,194,82,130,74,129,74,129,74,65,74,65,66,65,66,5,1,
+  58,131,1,50,193,49,193,49,155,1,52,255,255,137,189,247,58,231,183,214,
+  51,198,176,181,46,165,236,156,170,148,106,148,5,105,140,138,106,140,106,140,
+  171,148,237,156,47,173,178,181,53,198,184,214,59,231,189,247,127,255,255,118,
+  255,255,134,189,247,47,190,225,132,160,124,161,132,160,132,6,160,124,133,160,
+  132,224,132,225,132,224,132,224,132,5,225,132,132,226,132,225,132,33,133,33,
+  133,22,34,133,146,33,133,33,133,225,132,226,132,226,132,225,132,225,132,226,
+  132,226,132,225,132,225,132,161,132,162,132,162,124,163,124,163,124,99,124,99,
+  124,7,98,124,129,161,124,23,160,124,130,224,132,160,132,26,224,132,4,225,
+  132,129,224,132,12,225,132,10,224,132,16,225,132,139,163,124,196,115,68,107,
+  195,115,195,115,34,116,33,124,96,124,96,124,33,124,193,115,3,160,124,130,
+  224,132,224,132,3,160,124,130,225,132,114,198,27,255,255,132,56,223,38,141,
+  160,116,225,124,9,226,124,13,162,124,6,226,124,139,161,124,32,108,195,99,
+  195,99,196,99,198,107,135,99,135,91,135,99,135,91,72,91,3,135,91,13,
+  135,99,3,199,99,14,198,99,130,134,99,135,91,5,198,99,130,135,99,198,
+  99,6,199,99,130,198,99,135,99,3,199,99,130,198,99,119,198,18,255,255,
+  133,125,239,105,116,198,99,39,108,199,107,3,199,99,129,135,99,11,135,91,
+  143,71,91,71,83,199,74,7,58,70,66,70,91,197,107,101,116,37,116,100,
+  116,164,124,227,124,226,124,227,124,227,124,8,226,132,129,227,132,5,226,132,
+  131,225,124,225,132,178,198,25,255,255,130,170,148,192,90,37,0,99,132,0,
+  107,0,99,64,107,0,107,7,64,107,139,0,91,193,82,193,82,194,82,130,
+  74,130,74,129,74,129,74,65,74,65,66,65,66,5,1,58,4,193,49,156,
+  1,127,255,255,127,255,255,66,255,255,146,246,214,37,149,160,124,160,124,161,
+  132,160,132,160,132,160,124,160,124,161,124,161,124,160,124,160,124,160,132,160,
+  132,225,132,224,132,224,132,5,225,132,132,226,132,226,132,33,133,33,133,11,
+  34,133,129,226,132,9,34,133,129,226,132,3,225,132,133,226,132,226,132,225,
+  132,225,132,226,132,3,225,132,129,161,132,4,162,124,3,99,124,6,98,124,
+  129,161,124,25,160,124,11,224,132,12,225,132,3,224,132,136,225,132,225,132,
+  224,132,224,132,225,132,225,132,224,132,224,132,9,225,132,10,224,132,3,225,
+  132,129,224,132,12,225,132,148,163,124,36,116,132,115,132,115,195,115,195,115,
+  33,124,96,124,96,124,32,124,194,115,96,124,160,124,160,124,224,132,224,132,
+  160,124,96,116,103,149,57,231,27,255,255,131,113,190,226,124,160,124,10,226,
+  124,12,162,124,130,163,124,163,124,6,226,124,135,161,124,32,108,194,99,195,
+  99,131,99,197,99,199,99,3,135,99,3,135,91,7,135,99,129,135,91,3,
+  135,99,6,135,91,133,135,99,134,99,198,99,134,99,134,99,21,198,99,134,
+  199,99,199,99,198,99,38,100,199,99,135,99,3,199,99,130,40,108,59,231,
+  18,255,255,131,250,222,135,99,71,91,4,72,91,136,71,91,71,91,135,91,
+  135,99,135,99,199,99,135,99,135,99,3,135,91,139,71,91,71,91,7,83,
+  7,58,198,49,6,83,37,108,101,116,37,108,100,116,164,124,3,227,124,129,
+  227,132,11,226,132,134,225,132,226,132,226,132,161,124,36,141,247,214,26,255,
+  255,131,124,239,67,107,192,98,33,0,99,132,0,107,0,99,0,99,0,107,
+  10,64,107,132,1,91,194,82,194,82,130,74,3,129,74,131,65,66,65,66,
+  1,66,6,1,58,3,193,49,1,192,49,171,1,127,255,255,127,255,255,64,
+  255,255,145,122,231,170,165,160,124,160,124,225,132,161,132,161,132,160,132,160,
+  132,160,124,160,124,161,124,161,124,160,124,160,124,160,132,160,132,3,224,132,
+  5,225,132,132,226,132,226,132,225,132,33,133,21,34,133,133,226,132,34,133,
+  225,132,225,132,226,132,3,225,132,129,226,132,3,225,132,129,161,132,4,162,
+  124,130,99,124,99,124,7,98,124,129,161,124,23,160,124,129,160,132,9,224,
+  132,15,225,132,3,224,132,3,225,132,131,224,132,225,132,225,132,4,224,132,
+  8,225,132,10,224,132,132,225,132,225,132,224,132,224,132,6,225,132,130,224,
+  132,224,132,3,225,132,147,162,124,99,124,98,124,35,124,196,115,195,115,33,
+  124,32,124,96,124,96,124,194,115,193,115,160,124,160,124,224,132,160,124,161,
+  124,46,182,254,255,26,255,255,132,123,239,170,157,160,116,225,124,10,226,124,
+  13,162,124,130,163,124,163,124,6,226,124,130,161,124,33,108,4,195,99,130,
+  198,99,199,99,3,135,99,131,199,99,135,91,135,91,7,135,99,137,135,91,
+  135,99,135,91,135,91,135,99,135,99,135,91,135,91,135,99,3,134,99,131,
+  198,99,198,99,134,99,17,198,99,130,38,108,38,100,5,198,99,130,199,99,
+  135,99,3,199,99,131,134,99,171,124,190,247,18,255,255,133,54,190,7,83,
+  72,91,72,91,135,91,5,135,99,3,199,99,142,135,99,135,91,135,91,71,
+  91,71,91,7,83,71,66,197,49,6,83,198,107,37,116,101,116,164,124,163,
+  124,3,227,124,129,226,124,8,226,132,137,227,132,226,132,227,132,226,132,226,
+  132,225,132,160,124,167,149,123,239,28,255,255,130,243,197,192,90,32,0,99,
+  131,0,107,0,107,0,99,12,64,107,133,0,99,194,82,129,74,129,74,65,
+  74,3,65,66,7,1,58,133,1,50,193,49,193,49,192,49,192,41,150,1,
+  127,255,255,127,255,255,62,255,255,142,190,247,47,182,226,132,160,124,224,132,
+  225,132,225,132,161,132,161,132,160,132,160,132,160,124,160,124,161,124,4,160,
+  124,129,160,132,3,224,132,6,225,132,132,226,132,225,132,225,132,33,133,8,
+  34,133,129,226,132,10,34,133,130,225,132,33,133,3,225,132,131,226,132,225,
+  132,225,132,3,226,132,131,225,132,226,132,162,132,4,162,124,130,99,124,99,
+  124,7,98,124,129,161,124,23,160,124,129,160,132,9,224,132,5,225,132,129,
+  224,132,3,225,132,129,224,132,5,225,132,3,224,132,3,225,132,129,224,132,
+  5,225,132,129,224,132,8,225,132,14,224,132,6,225,132,140,224,132,224,132,
+  225,132,225,132,224,132,161,132,162,124,97,124,98,124,196,115,195,115,34,116,
+  3,32,124,130,32,116,193,115,3,160,124,130,102,149,56,223,27,255,255,131,
+  179,206,227,132,160,124,12,226,124,14,162,124,129,163,124,6,226,124,130,97,
+  116,194,99,5,195,99,129,198,107,5,199,99,7,135,99,7,135,91,131,135,
+  99,135,91,135,99,13,198,99,129,38,108,6,198,99,132,38,108,198,99,198,
+  99,38,108,6,198,99,6,199,99,130,134,91,48,149,19,255,255,132,178,165,
+  70,83,136,99,136,99,3,135,99,4,199,99,142,135,99,135,91,135,91,71,
+  91,71,91,71,83,135,66,197,49,6,83,198,107,37,108,101,116,164,124,163,
+  124,3,227,124,9,226,132,129,227,132,4,226,132,132,225,124,161,124,45,174,
+  190,247,30,255,255,130,170,148,192,90,28,0,99,135,0,107,0,107,64,107,
+  0,107,0,107,64,107,64,99,11,64,107,135,64,99,129,82,129,74,66,74,
+  65,66,65,66,1,66,5,1,58,130,193,57,1,58,3,193,49,131,192,49,
+  192,49,192,41,165,1,127,255,255,127,255,255,61,255,255,142,245,214,101,149,
+  160,124,225,132,225,132,224,132,225,132,225,132,161,132,161,132,160,132,160,132,
+  160,124,160,124,3,161,124,131,160,124,160,124,160,132,3,224,132,6,225,132,
+  132,226,132,225,132,225,132,33,133,10,34,133,129,226,132,7,34,133,130,226,
+  132,226,132,3,225,132,132,226,132,226,132,225,132,225,132,3,226,132,131,225,
+  132,226,132,162,132,4,162,124,3,99,124,6,98,124,129,161,124,8,160,124,
+  129,160,132,16,160,124,3,160,132,5,224,132,4,225,132,130,224,132,224,132,
+  9,225,132,5,224,132,4,225,132,133,224,132,224,132,225,132,224,132,224,132,
+  7,225,132,14,224,132,10,225,132,132,224,132,225,132,162,124,99,124,4,195,
+  115,129,33,124,4,32,124,132,96,116,96,124,46,182,190,247,26,255,255,132,
+  189,247,236,173,224,124,225,124,13,226,124,13,162,124,129,163,124,4,226,124,
+  133,227,124,226,124,161,116,33,108,194,99,3,195,99,142,194,99,194,107,35,
+  108,37,108,199,99,199,99,135,99,135,99,199,99,198,99,199,99,135,99,135,
+  91,135,99,3,135,91,129,135,99,6,135,91,131,134,99,134,91,134,91,7,
+  198,99,131,38,100,38,100,38,108,7,198,99,3,38,108,9,198,99,6,199,
+  99,130,70,91,244,181,19,255,255,136,173,140,70,91,136,99,135,99,199,99,
+  135,99,199,99,199,99,3,135,99,129,135,91,3,71,91,136,199,74,197,49,
+  6,83,198,107,37,108,101,116,164,124,163,124,3,227,124,14,226,132,131,225,
+  124,225,124,178,198,32,255,255,130,124,239,66,107,26,0,99,134,0,107,0,
+  99,0,99,0,107,64,107,0,107,15,64,107,129,193,82,3,66,66,130,1,
+  58,193,57,3,1,58,131,193,57,1,58,1,58,3,193,49,132,192,49,192,
+  49,192,41,192,41,161,1,127,255,255,127,255,255,59,255,255,139,57,231,169,
+  165,224,124,224,124,226,132,225,132,225,132,224,132,225,132,225,132,161,132,3,
+  160,132,129,160,124,3,161,124,3,160,124,129,160,132,4,224,132,5,225,132,
+  129,226,132,3,225,132,129,33,133,16,34,133,129,226,132,3,225,132,140,33,
+  133,225,132,226,132,226,132,225,132,225,132,226,132,226,132,225,132,225,132,226,
+  132,162,132,4,162,124,130,98,124,99,124,7,98,124,129,96,124,8,160,124,
+  132,160,132,160,124,160,124,160,132,10,160,124,11,224,132,4,225,132,130,224,
+  132,224,132,9,225,132,10,224,132,11,225,132,15,224,132,11,225,132,141,162,
+  124,36,124,196,115,196,115,195,115,195,115,35,116,34,124,32,124,32,124,192,
+  107,165,140,246,214,27,255,255,131,245,214,37,141,160,124,14,226,124,11,162,
+  124,132,163,124,162,124,162,124,163,124,5,226,124,131,161,124,97,108,194,99,
+  3,195,99,135,194,99,194,99,194,107,34,108,34,108,36,108,198,99,6,135,
+  99,130,135,91,135,99,10,135,91,129,134,91,3,134,99,131,134,91,134,99,
+  134,99,6,198,99,129,38,100,3,38,108,133,198,107,38,108,198,107,38,108,
+  38,100,3,198,99,5,38,108,132,198,107,38,108,38,108,39,108,4,199,99,
+  131,135,99,135,99,248,214,18,255,255,131,125,239,43,116,134,91,5,199,99,
+  141,135,99,135,99,135,91,135,91,71,91,71,91,199,74,5,58,6,83,198,
+  107,37,108,101,116,164,124,4,227,124,8,226,132,129,227,132,5,226,132,131,
+  224,124,36,141,246,222,34,255,255,130,242,189,192,90,24,0,99,3,0,107,
+  19,64,107,147,1,91,66,66,66,66,1,66,1,58,193,49,193,57,1,58,
+  193,57,193,49,1,58,193,49,192,49,192,49,192,41,192,41,192,49,192,41,
+  192,41,162,1,127,255,255,127,255,255,57,255,255,132,189,247,46,182,226,132,
+  160,124,5,225,132,132,224,132,225,132,225,132,161,132,3,160,132,129,160,124,
+  3,161,124,3,160,124,132,160,132,224,132,225,132,224,132,7,225,132,132,226,
+  132,225,132,33,133,33,133,14,34,133,130,226,132,34,133,6,225,132,130,226,
+  132,226,132,3,225,132,129,226,132,3,225,132,129,162,132,4,162,124,130,99,
+  124,99,124,6,98,124,129,97,124,9,160,124,132,160,132,160,124,160,124,160,
+  132,9,160,124,11,224,132,5,225,132,129,224,132,9,225,132,9,224,132,133,
+  160,132,224,132,224,132,225,132,224,132,5,225,132,129,224,132,3,225,132,16,
+  224,132,9,225,132,140,162,124,100,124,197,115,133,115,132,115,196,115,195,115,
+  35,116,32,116,192,115,173,173,189,247,26,255,255,133,190,247,46,182,225,124,
+  225,124,226,132,13,226,124,15,162,124,129,163,124,3,226,124,133,227,124,225,
+  124,97,116,34,108,194,99,4,195,99,141,194,99,195,107,34,108,34,108,98,
+  116,99,116,198,107,199,99,198,99,135,99,135,91,135,91,135,99,8,135,91,
+  4,71,91,129,134,91,3,135,91,3,70,91,139,71,83,7,83,71,83,71,
+  83,7,83,7,83,71,83,134,91,134,99,198,99,198,99,3,38,108,129,38,
+  100,7,38,108,6,39,108,134,199,99,199,99,199,107,198,99,41,116,124,231,
+  18,255,255,133,59,223,200,107,135,99,199,99,135,99,3,199,99,140,135,99,
+  135,91,135,91,71,91,199,74,5,58,5,83,38,108,37,108,101,116,164,124,
+  163,124,3,227,124,14,226,132,131,160,124,104,157,123,239,36,255,255,130,104,
+  140,192,90,24,0,99,129,0,107,19,64,107,136,128,107,1,99,193,57,1,
+  66,1,58,1,58,193,57,193,49,3,1,58,130,193,49,193,49,7,192,41,
+  191,1,127,255,255,127,255,255,56,255,255,131,180,206,101,149,160,124,4,225,
+  132,132,226,132,225,132,225,132,224,132,3,225,132,3,160,132,129,160,124,4,
+  161,124,134,160,124,160,124,160,132,160,132,224,132,224,132,7,225,132,134,226,
+  132,225,132,225,132,33,133,34,133,226,132,12,34,133,131,226,132,34,133,33,
+  133,5,225,132,138,226,132,226,132,225,132,225,132,226,132,226,132,225,132,225,
+  132,161,132,161,132,4,162,124,130,99,124,99,124,6,98,124,129,97,124,9,
+  160,124,132,160,132,160,124,160,124,160,132,9,160,124,11,224,132,5,225,132,
+  129,224,132,4,225,132,130,224,132,225,132,11,224,132,129,160,132,9,224,132,
+  133,225,132,224,132,224,132,225,132,225,132,25,224,132,138,160,132,161,124,98,
+  124,35,124,99,124,99,124,35,124,193,115,101,132,182,214,27,255,255,133,57,
+  223,103,149,160,116,226,124,226,132,14,226,124,14,162,124,130,163,124,163,124,
+  4,226,124,132,161,116,34,108,195,99,194,99,4,195,99,138,194,99,195,107,
+  35,108,34,108,98,116,98,116,99,116,198,99,134,99,198,99,3,134,99,129,
+  134,91,4,135,91,129,135,99,4,135,91,4,71,91,5,71,83,134,7,83,
+  7,83,7,75,199,74,199,74,135,74,3,135,66,131,199,74,199,74,7,75,
+  6,7,83,133,71,83,71,83,71,91,71,83,71,83,3,71,91,131,135,91,
+  135,91,71,91,3,71,83,131,198,74,45,116,190,247,18,255,255,146,118,198,
+  134,91,199,99,199,99,135,99,199,99,135,99,135,91,135,91,71,91,7,75,
+  70,58,6,83,38,108,101,116,165,116,164,124,163,124,3,227,124,129,226,124,
+  7,226,132,129,227,132,4,226,132,132,225,124,160,124,237,173,190,247,37,255,
+  255,130,58,231,66,107,21,0,99,130,64,107,0,107,20,64,107,141,128,107,
+  0,99,0,33,192,24,1,58,1,58,193,57,193,49,193,49,1,50,1,58,
+  1,50,193,49,8,192,41,194,1,127,255,255,127,255,255,54,255,255,132,56,
+  223,169,165,224,124,224,124,4,225,132,129,226,132,3,225,132,132,224,132,225,
+  132,225,132,161,132,3,160,132,132,160,124,160,124,161,124,161,124,3,160,124,
+  133,160,132,224,132,225,132,224,132,224,132,6,225,132,132,226,132,226,132,225,
+  132,225,132,7,34,133,137,226,132,34,133,226,132,34,133,226,132,226,132,225,
+  132,226,132,33,133,5,225,132,132,226,132,226,132,225,132,225,132,3,226,132,
+  132,225,132,225,132,162,132,161,132,3,162,124,131,163,124,99,124,99,124,6,
+  98,124,130,97,124,96,124,21,160,124,129,160,132,12,224,132,130,225,132,225,
+  132,7,224,132,5,160,132,3,224,132,130,160,132,160,124,5,224,132,10,161,
+  124,131,160,124,160,132,160,124,8,161,124,133,160,132,160,124,161,124,161,124,
+  160,124,3,161,124,134,160,124,160,124,161,124,161,124,160,124,97,124,9,160,
+  124,130,172,173,124,239,26,255,255,136,254,255,113,190,227,132,224,124,225,132,
+  225,132,226,132,226,132,13,226,124,15,162,124,129,163,124,4,226,124,132,97,
+  116,35,108,194,99,194,99,5,195,99,135,195,107,35,108,35,108,34,108,98,
+  116,162,116,100,116,3,198,99,131,134,99,134,91,134,91,7,135,91,129,71,
+  91,4,135,91,141,71,91,71,91,135,91,135,91,71,91,71,83,71,91,71,
+  91,71,83,7,83,7,83,7,75,7,75,14,199,74,129,7,75,11,7,83,
+  130,197,74,48,149,19,255,255,144,179,173,134,91,199,99,135,99,135,99,135,
+  91,135,91,71,91,199,74,70,66,70,91,38,108,101,116,164,116,164,124,163,
+  124,3,227,124,8,226,132,129,227,124,4,226,132,131,225,124,226,132,114,198,
+  22,255,255,129,189,247,17,255,255,130,176,181,192,90,17,0,99,3,0,107,
+  21,64,107,135,128,107,192,90,0,33,64,8,128,41,129,74,193,49,3,1,
+  58,134,193,49,193,49,64,33,193,41,193,49,193,49,6,192,41,204,1,127,
+  255,255,127,255,255,52,255,255,132,188,239,46,182,225,132,224,124,6,225,132,
+  129,226,132,3,225,132,135,224,132,225,132,225,132,161,132,161,132,160,132,160,
+  132,3,160,124,129,161,124,3,160,124,133,160,132,160,132,225,132,225,132,224,
+  132,6,225,132,132,226,132,226,132,225,132,225,132,5,34,133,129,226,132,5,
+  34,133,131,225,132,225,132,226,132,7,225,132,132,226,132,226,132,225,132,225,
+  132,3,226,132,132,225,132,225,132,162,132,161,132,3,162,124,131,163,124,99,
+  124,99,124,6,98,124,129,97,124,11,160,124,129,160,132,22,160,124,5,160,
+  132,5,160,124,5,160,132,11,224,132,5,225,132,130,224,132,224,132,3,225,
+  132,130,224,132,224,132,7,225,132,4,224,132,148,225,132,224,132,224,132,225,
+  132,225,132,224,132,224,132,225,132,224,132,160,132,160,124,160,124,160,132,160,
+  132,224,132,224,132,160,124,160,124,227,140,180,206,27,255,255,132,122,231,169,
+  157,160,116,226,124,4,226,132,12,226,124,6,162,124,132,163,124,162,124,162,
+  124,163,124,8,162,124,3,226,124,133,161,124,97,108,195,107,194,99,194,99,
+  5,195,99,129,195,107,3,34,108,133,98,116,98,116,161,116,36,108,198,99,
+  4,134,99,129,134,91,3,135,91,130,135,99,135,99,11,135,91,132,71,91,
+  71,91,71,83,7,83,6,71,83,130,7,83,71,83,7,70,83,3,71,83,
+  131,71,91,71,91,70,91,9,71,91,131,70,91,5,83,245,181,19,255,255,
+  139,47,149,69,91,135,99,135,91,135,91,71,91,199,74,69,58,134,91,37,
+  108,101,116,3,164,124,3,227,124,6,226,132,131,225,132,226,132,227,124,4,
+  226,132,131,224,124,36,141,247,214,21,255,255,131,254,255,237,164,104,140,17,
+  255,255,130,190,247,38,132,17,0,99,129,0,107,22,64,107,138,128,107,129,
+  82,128,24,64,8,192,57,128,107,64,107,65,66,1,58,1,58,3,193,49,
+  133,128,33,193,41,1,50,193,49,193,49,4,192,41,1,128,41,241,1,127,
+  255,255,127,255,255,51,255,255,132,179,206,36,141,160,124,224,132,4,225,132,
+  132,226,132,225,132,225,132,226,132,6,225,132,134,161,132,161,132,160,132,160,
+  132,160,124,161,124,5,160,124,133,160,132,161,132,225,132,224,132,224,132,6,
+  225,132,134,226,132,226,132,225,132,225,132,33,133,226,132,3,34,133,130,225,
+  132,33,133,4,34,133,131,225,132,225,132,33,133,7,225,132,132,226,132,226,
+  132,225,132,225,132,3,226,132,132,225,132,226,132,161,132,161,132,3,162,124,
+  131,163,124,99,124,99,124,6,98,124,130,97,124,96,124,9,160,124,130,160,
+  132,160,132,19,160,124,4,161,124,4,160,132,7,224,132,137,32,133,32,133,
+  33,133,224,132,224,132,32,133,33,133,32,133,32,133,4,224,132,129,32,133,
+  4,33,133,130,32,133,32,133,3,33,133,6,32,133,130,33,133,33,133,18,
+  32,133,3,224,132,132,224,124,160,124,234,165,123,239,27,255,255,133,179,198,
+  227,132,160,124,226,132,225,132,4,226,132,12,226,124,6,162,124,133,163,124,
+  163,124,162,124,163,124,163,124,6,162,124,4,226,124,132,161,124,98,108,194,
+  107,194,99,6,195,99,129,194,107,3,34,108,144,98,116,98,116,97,116,98,
+  116,37,108,198,99,134,99,134,91,134,91,134,99,134,99,135,91,135,91,135,
+  99,135,91,135,91,10,135,99,132,135,91,135,91,71,83,71,83,3,71,91,
+  3,70,91,129,71,91,3,70,91,129,71,83,4,70,91,139,71,91,71,83,
+  71,91,135,91,135,91,71,91,71,91,135,91,135,91,134,91,134,91,5,135,
+  91,131,70,91,135,91,185,214,18,255,255,140,189,239,107,124,70,83,135,99,
+  71,91,70,58,69,58,134,99,101,116,101,116,164,124,164,124,3,227,124,129,
+  227,132,6,226,132,129,225,132,6,226,132,131,160,124,168,157,123,239,21,255,
+  255,133,124,239,105,140,192,90,192,90,243,189,17,255,255,129,248,222,12,0,
+  99,132,0,107,0,99,0,99,0,107,23,64,107,138,128,107,65,66,128,16,
+  128,16,65,66,128,107,64,107,64,107,64,99,1,58,5,193,49,132,192,41,
+  193,49,1,50,193,49,3,192,41,130,128,41,128,41,217,1,127,255,255,127,
+  255,255,49,255,255,132,56,223,169,157,160,124,224,124,9,225,132,129,226,132,
+  3,225,132,135,224,132,225,132,225,132,161,132,161,132,160,132,160,132,7,160,
+  124,130,160,132,161,132,3,224,132,7,225,132,134,226,132,225,132,225,132,33,
+  133,34,133,34,133,3,226,132,133,225,132,34,133,34,133,225,132,226,132,9,
+  225,132,3,226,132,137,225,132,225,132,226,132,226,132,225,132,225,132,226,132,
+  161,132,161,124,3,162,124,131,163,124,99,124,99,124,6,98,124,129,97,124,
+  9,160,124,3,160,132,130,160,124,160,132,10,160,124,130,224,124,224,124,13,
+  224,132,11,32,133,132,224,132,224,132,32,133,32,133,5,224,132,7,32,133,
+  132,224,132,224,132,32,133,32,133,27,224,132,131,160,124,226,140,178,206,27,
+  255,255,136,123,239,171,165,160,116,225,124,226,124,226,132,226,124,225,132,3,
+  226,132,12,226,124,8,162,124,130,163,124,163,124,6,162,124,129,163,124,4,
+  226,124,132,161,116,34,108,194,99,194,99,6,195,99,129,195,107,3,34,108,
+  139,98,116,98,116,97,116,97,116,99,116,198,99,198,99,134,91,134,91,198,
+  99,135,99,7,135,91,132,199,99,198,99,199,99,198,99,3,199,99,3,135,
+  91,130,71,91,71,91,3,135,91,3,134,91,133,135,91,135,91,134,91,71,
+  91,71,83,8,71,91,135,135,91,71,91,71,91,135,91,135,91,134,91,135,
+  91,3,134,91,134,135,91,135,99,135,99,134,91,201,107,124,231,18,255,255,
+  138,59,231,201,107,6,83,197,49,5,58,197,99,101,116,101,116,164,124,164,
+  124,3,227,124,129,227,132,6,226,132,131,225,132,226,132,227,124,3,226,132,
+  132,225,124,224,124,237,173,190,247,21,255,255,135,57,223,102,124,128,82,0,
+  99,0,99,66,107,59,239,17,255,255,130,110,173,192,90,3,0,99,129,0,
+  107,4,0,99,132,0,107,0,99,0,99,0,107,25,64,107,133,192,57,64,
+  8,192,24,129,82,128,107,3,64,107,130,128,107,0,91,4,193,49,4,192,
+  41,129,192,49,5,192,41,171,1,127,255,255,127,255,255,47,255,255,132,123,
+  239,236,173,224,124,160,124,11,225,132,129,226,132,3,225,132,132,224,132,225,
+  132,225,132,161,132,3,160,132,130,160,124,161,124,5,160,124,130,160,132,161,
+  132,3,224,132,7,225,132,129,226,132,3,225,132,136,33,133,34,133,34,133,
+  33,133,225,132,226,132,33,133,33,133,8,225,132,6,226,132,132,225,132,225,
+  132,226,132,226,132,3,225,132,133,161,132,162,132,162,124,162,124,163,124,4,
+  99,124,5,98,124,129,97,124,9,160,124,133,160,132,160,132,224,132,224,132,
+  160,132,9,160,124,130,224,124,224,124,70,224,132,132,160,132,160,124,105,165,
+  123,239,27,255,255,131,245,206,228,132,160,116,6,226,124,3,226,132,11,226,
+  124,9,162,124,130,163,124,163,124,7,162,124,3,226,124,133,162,124,98,116,
+  35,108,194,99,130,99,5,195,99,130,194,99,195,107,3,34,108,134,98,116,
+  97,116,97,116,161,116,98,116,196,99,4,198,99,130,135,99,135,99,7,135,
+  91,129,199,99,4,135,99,130,199,99,135,99,6,135,91,132,135,99,134,99,
+  134,99,135,99,4,135,91,131,71,91,135,91,134,91,5,135,91,4,71,91,
+  130,135,91,135,91,3,134,99,137,135,91,135,91,198,99,198,99,199,99,199,
+  99,69,83,172,124,254,247,18,255,255,136,185,206,196,41,68,66,38,108,101,
+  116,101,116,164,124,164,124,3,227,124,9,226,132,135,227,124,226,132,227,124,
+  226,132,225,124,226,132,179,198,22,255,255,136,51,198,2,99,32,108,64,99,
+  0,99,0,99,192,90,105,140,17,255,255,130,189,247,197,123,4,0,99,129,
+  0,107,3,0,99,130,0,107,0,99,24,64,107,145,128,107,64,99,128,49,
+  64,8,0,33,0,91,128,107,64,107,0,99,0,99,1,99,64,107,128,107,
+  0,91,193,49,193,41,193,49,9,192,41,1,128,41,167,1,127,255,255,127,
+  255,255,45,255,255,133,254,247,115,198,227,132,160,124,224,132,15,225,132,129,
+  224,132,3,225,132,132,161,132,160,132,160,132,160,124,5,161,124,132,160,124,
+  160,124,160,132,160,132,3,224,132,7,225,132,136,226,132,226,132,225,132,225,
+  132,33,133,225,132,34,133,33,133,4,225,132,129,33,133,6,225,132,7,226,
+  132,131,225,132,225,132,226,132,4,225,132,130,162,132,162,132,3,162,124,130,
+  99,124,99,124,7,98,124,130,97,124,96,124,7,160,124,130,160,132,160,132,
+  3,224,132,129,160,132,13,160,124,129,160,132,65,224,132,132,160,132,96,124,
+  162,132,114,198,27,255,255,132,189,247,237,173,161,116,161,124,6,226,124,4,
+  226,132,12,226,124,16,162,124,4,226,124,133,161,116,34,108,35,108,194,99,
+  131,99,6,195,99,142,195,107,35,108,34,108,34,108,98,116,97,116,161,116,
+  161,116,162,116,196,99,5,75,134,91,198,99,198,99,3,199,99,131,135,91,
+  135,99,135,99,3,135,91,131,135,99,135,99,135,91,5,135,99,130,135,91,
+  135,91,3,199,99,5,135,99,9,135,91,132,71,91,135,91,135,91,71,91,
+  3,135,91,3,135,99,132,198,99,135,99,135,99,199,99,3,198,99,131,135,
+  91,69,83,48,157,19,255,255,137,245,181,196,99,101,116,101,116,164,124,164,
+  124,227,124,227,124,227,132,9,226,132,135,227,124,226,132,226,132,225,132,160,
+  124,36,141,56,223,22,255,255,138,111,173,192,98,192,90,130,107,33,108,192,
+  98,0,99,0,99,192,98,53,198,17,255,255,129,118,206,3,0,99,130,64,
+  107,0,99,28,64,107,148,128,107,1,99,1,41,64,8,64,41,64,99,128,
+  107,64,107,64,107,0,99,64,107,64,107,0,99,64,107,128,107,64,99,1,
+  58,193,41,193,49,193,49,5,192,41,131,128,41,128,41,128,33,152,1,127,
+  255,255,127,255,255,44,255,255,133,246,214,38,149,160,116,160,124,224,132,12,
+  225,132,136,226,132,225,132,225,132,224,132,225,132,225,132,161,132,161,132,3,
+  160,132,3,160,124,130,161,124,161,124,3,160,124,133,160,132,224,132,225,132,
+  224,132,224,132,7,225,132,133,226,132,226,132,225,132,225,132,33,133,6,225,
+  132,130,33,133,33,133,5,225,132,7,226,132,3,225,132,3,226,132,132,225,
+  132,162,132,161,132,161,132,3,162,124,3,99,124,5,98,124,131,97,124,97,
+  124,96,124,6,160,124,130,160,132,160,132,5,224,132,13,160,124,130,160,132,
+  160,132,5,224,132,26,160,132,30,224,132,3,160,132,131,96,124,104,165,122,
+  239,27,255,255,131,246,214,37,141,161,116,10,226,124,130,226,132,226,132,12,
+  226,124,15,162,124,3,226,124,134,227,124,161,124,97,108,35,108,194,107,194,
+  99,7,195,99,129,195,107,3,34,108,138,98,116,97,116,97,116,161,116,162,
+  116,34,108,4,75,5,75,199,99,38,108,6,199,99,10,135,99,130,135,91,
+  135,91,7,135,99,130,135,91,135,91,3,135,99,15,135,91,130,135,99,135,
+  99,3,199,99,3,198,99,132,135,99,135,91,134,91,244,181,19,255,255,132,
+  241,181,99,108,164,124,163,124,3,227,124,8,226,132,129,227,132,3,226,132,
+  132,225,132,160,124,169,165,188,239,21,255,255,136,124,247,105,148,192,90,0,
+  99,0,99,2,99,98,116,64,99,3,0,99,130,66,107,124,239,17,255,255,
+  130,235,156,192,90,3,64,107,131,0,107,64,99,0,107,24,64,107,133,128,
+  107,193,90,193,32,64,8,192,49,5,64,107,139,193,90,64,107,128,107,64,
+  99,64,107,64,107,128,107,128,107,129,82,193,49,129,41,5,192,41,131,128,
+  41,128,33,64,33,154,1,127,255,255,127,255,255,42,255,255,135,123,231,107,
+  165,97,116,160,124,160,124,224,132,224,132,12,225,132,129,226,132,3,225,132,
+  9,224,132,4,160,124,7,224,132,7,225,132,132,226,132,226,132,225,132,33,
+  133,14,225,132,7,226,132,4,225,132,134,226,132,225,132,225,132,226,132,161,
+  132,161,124,3,162,124,129,163,124,7,98,124,131,97,124,97,124,96,124,6,
+  160,124,129,160,132,5,224,132,3,160,132,8,160,124,130,160,132,160,132,7,
+  224,132,14,160,132,38,224,132,6,160,132,131,160,124,161,132,113,198,27,255,
+  255,133,190,247,238,173,161,116,161,116,163,124,20,226,124,129,225,124,3,226,
+  124,15,162,124,4,226,124,133,161,124,34,108,36,108,194,99,194,99,7,195,
+  99,129,194,107,3,34,108,138,98,116,98,116,97,116,97,116,161,116,98,116,
+  67,91,2,50,134,91,39,108,4,199,99,129,39,108,3,199,99,130,135,99,
+  135,99,4,199,99,130,135,99,135,99,5,135,91,3,135,99,129,199,99,7,
+  135,99,4,135,91,137,135,99,135,99,135,91,135,99,135,99,135,91,135,91,
+  71,91,71,91,3,135,99,138,198,99,199,99,199,99,198,99,199,99,135,99,
+  135,91,198,99,134,99,249,214,19,255,255,130,173,165,162,116,3,227,124,12,
+  226,132,132,225,124,161,124,46,182,254,255,21,255,255,131,249,222,132,123,192,
+  90,3,0,99,136,192,98,130,107,33,108,192,98,0,99,0,99,192,90,171,
+  148,17,255,255,134,124,239,66,107,0,99,64,107,64,107,64,99,25,64,107,
+  134,128,107,65,74,192,16,64,8,0,58,128,107,5,64,107,147,1,99,2,
+  91,64,99,64,107,64,99,128,107,64,107,64,107,128,107,64,99,129,74,192,
+  49,192,41,193,49,192,41,192,41,128,41,128,33,64,33,29,0,129,133,82,
+  127,192,98,127,192,98,127,192,98,127,192,98,127,192,98,127,192,98,36,192,
+  98,1,133,82,147,0,32,243,148,44,243,156,129,51,157,3,51,165,35,52,
+  165,15,52,173,9,116,173,10,117,173,73,117,181,12,116,181,9,116,173,31,
+  52,173,16,51,173,8,51,165,22,243,164,21,242,164,8,242,156,20,178,156,
+  20,177,156,14,177,148,7,113,148,30,112,148,9,112,140,129,48,140,34,47,
+  140,5,47,132,4,46,132,33,206,131,129,206,123,9,205,123,32,141,123,129,
+  141,115,15,140,115,129,141,115,37,141,123,13,205,123,130,205,131,205,131,35,
+  206,131,12,46,132,129,46,140,37,47,140,10,111,140,130,112,140,112,140,38,
+  112,148,7,176,148,12,177,148,9,177,156,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+};
+const GuiConst_INT8U GuiBitmap_1[1157] =
+{
+  32,3,224,1,23,0,127,255,255,127,255,255,127,255,255,127,255,255,127,255,
+  255,127,255,255,38,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,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,29,0,129,133,82,127,192,
+  98,127,192,98,127,192,98,127,192,98,127,192,98,127,192,98,36,192,98,1,
+  133,82,147,0,32,243,148,44,243,156,129,51,157,3,51,165,35,52,165,15,
+  52,173,9,116,173,10,117,173,73,117,181,12,116,181,9,116,173,31,52,173,
+  16,51,173,8,51,165,22,243,164,21,242,164,8,242,156,20,178,156,20,177,
+  156,14,177,148,7,113,148,30,112,148,9,112,140,129,48,140,34,47,140,5,
+  47,132,4,46,132,33,206,131,129,206,123,9,205,123,32,141,123,129,141,115,
+  15,140,115,129,141,115,37,141,123,13,205,123,130,205,131,205,131,35,206,131,
+  12,46,132,129,46,140,37,47,140,10,111,140,130,112,140,112,140,38,112,148,
+  7,176,148,12,177,148,9,177,156,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+};
+const GuiConst_INT8U GuiBitmap_2[17674] =
+{
+  174,0,168,0,14,0,127,60,231,36,60,231,129,251,222,10,60,231,8,0,
+  127,60,231,47,60,231,0,0,16,0,127,60,231,33,60,231,130,251,222,251,
+  222,12,60,231,14,0,14,60,231,127,251,222,21,251,222,12,60,231,28,0,
+  17,60,231,3,251,222,127,186,214,14,186,214,133,251,222,251,222,186,214,251,
+  222,251,222,8,60,231,41,0,15,60,231,132,251,222,56,198,243,156,207,123,
+  127,12,99,11,12,99,135,77,107,142,115,113,140,117,173,56,198,121,206,121,
+  206,3,251,222,7,60,231,74,0,14,60,231,141,251,222,178,148,77,107,48,
+  132,52,165,121,206,186,214,60,231,190,247,190,247,125,239,190,247,190,247,127,
+  125,239,141,125,239,125,239,121,206,121,206,52,165,207,123,77,107,48,132,247,
+  189,247,189,121,206,186,214,251,222,3,60,231,132,251,222,125,239,60,231,60,
+  231,68,0,13,60,231,138,247,189,48,132,142,115,117,173,60,231,190,247,190,
+  247,60,231,125,239,190,247,3,125,239,129,190,247,127,125,239,4,125,239,141,
+  190,247,60,231,182,181,142,115,12,99,52,165,182,181,56,198,121,206,251,222,
+  251,222,60,231,251,222,3,60,231,64,0,9,60,231,135,251,222,60,231,60,
+  231,251,222,48,132,142,115,56,198,3,190,247,131,125,239,190,247,190,247,127,
+  125,239,7,125,239,130,190,247,125,239,3,190,247,136,56,198,142,115,142,115,
+  178,148,182,181,247,189,121,206,251,222,5,60,231,69,0,9,60,231,135,251,
+  222,60,231,251,222,178,148,142,115,56,198,255,255,4,125,239,131,190,247,125,
+  239,125,239,3,190,247,127,125,239,4,125,239,141,190,247,125,239,60,231,190,
+  247,255,255,121,206,142,115,142,115,178,148,117,173,56,198,186,214,251,222,4,
+  60,231,77,0,9,60,231,139,251,222,60,231,56,198,77,107,117,173,190,247,
+  125,239,125,239,190,247,125,239,190,247,3,125,239,133,190,247,190,247,125,239,
+  125,239,190,247,127,125,239,133,125,239,190,247,190,247,125,239,255,255,3,125,
+  239,135,182,181,12,99,207,123,178,148,182,181,121,206,186,214,4,60,231,77,
+  0,9,60,231,136,251,222,251,222,243,156,48,132,60,231,190,247,125,239,190,
+  247,3,125,239,132,190,247,125,239,125,239,190,247,3,125,239,129,190,247,127,
+  125,239,134,125,239,125,239,60,231,125,239,190,247,190,247,3,125,239,135,207,
+  123,77,107,48,132,52,165,247,189,121,206,251,222,3,60,231,73,0,9,60,
+  231,134,251,222,251,222,207,123,52,165,190,247,190,247,3,125,239,132,255,255,
+  125,239,190,247,190,247,5,125,239,129,190,247,127,125,239,129,125,239,3,190,
+  247,140,125,239,125,239,190,247,125,239,190,247,52,165,12,99,142,115,178,148,
+  182,181,56,198,186,214,3,60,231,60,0,9,60,231,136,251,222,251,222,12,
+  99,121,206,190,247,125,239,125,239,190,247,7,125,239,4,190,247,127,125,239,
+  4,125,239,130,190,247,190,247,3,125,239,135,121,206,77,107,77,107,113,140,
+  117,173,56,198,186,214,3,60,231,122,0,9,60,231,138,251,222,186,214,12,
+  99,186,214,60,231,190,247,190,247,125,239,190,247,190,247,25,125,239,152,190,
+  247,125,239,125,239,190,247,125,239,190,247,190,247,125,239,126,239,190,247,126,
+  247,125,239,190,255,190,247,124,231,189,239,188,239,189,239,125,239,190,247,124,
+  239,189,247,190,239,126,239,8,125,239,136,189,247,125,239,126,239,126,239,125,
+  239,190,239,189,239,190,239,80,125,239,138,186,214,12,99,77,107,48,132,52,
+  165,56,198,186,214,251,222,60,231,60,231,108,0,9,60,231,134,251,222,186,
+  214,12,99,60,231,125,239,190,247,3,125,239,129,190,247,27,125,239,130,190,
+  247,190,247,4,125,239,144,191,239,61,223,190,239,191,247,61,239,61,239,191,
+  247,127,239,125,239,126,239,62,239,191,247,189,247,188,239,189,239,190,247,9,
+  125,239,129,126,247,3,126,239,131,125,239,189,239,189,239,80,125,239,138,60,
+  231,77,107,12,99,207,123,52,165,56,198,186,214,251,222,60,231,60,231,108,
+  0,9,60,231,133,251,222,186,214,12,99,190,247,190,247,31,125,239,151,190,
+  247,190,247,125,239,125,239,190,247,190,247,125,239,125,223,255,239,190,239,125,
+  239,189,247,190,255,189,247,125,239,125,247,191,255,63,247,126,239,189,247,189,
+  247,189,239,124,231,8,125,239,136,127,247,126,247,190,247,125,239,190,247,126,
+  239,190,247,190,247,81,125,239,137,77,107,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,107,0,9,60,231,134,251,222,186,214,12,99,190,
+  247,125,239,125,239,3,190,247,26,125,239,132,190,247,190,247,125,239,125,239,
+  4,190,247,144,190,239,124,239,188,247,186,247,115,206,46,173,111,173,111,173,
+  246,222,249,230,190,255,190,247,125,239,188,239,190,247,189,247,8,125,239,134,
+  191,255,58,231,252,255,251,255,253,255,190,239,83,125,239,137,77,107,203,90,
+  207,123,52,165,56,198,186,214,251,222,60,231,60,231,112,0,9,60,231,131,
+  251,222,186,214,12,99,3,125,239,133,190,247,190,247,125,239,125,239,190,247,
+  27,125,239,130,190,247,190,247,3,125,239,144,253,255,56,239,237,164,3,99,
+  1,99,65,107,0,99,64,99,1,83,4,91,243,181,124,239,189,247,125,239,
+  190,247,126,247,8,125,239,136,123,239,6,99,194,90,195,90,48,165,125,239,
+  191,247,190,247,81,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,119,0,9,60,231,135,251,222,186,214,12,99,190,247,
+  125,239,125,239,190,247,3,125,239,129,190,247,24,125,239,152,190,247,125,239,
+  190,247,190,247,125,239,125,239,190,247,190,247,246,238,135,123,64,82,65,107,
+  64,107,64,99,64,99,0,99,64,91,1,83,180,206,253,247,189,239,125,239,
+  126,239,126,247,8,125,239,136,251,247,194,90,64,107,65,99,111,165,189,239,
+  126,239,125,247,80,125,239,135,190,247,77,107,12,99,207,123,52,165,247,189,
+  186,214,3,60,231,118,0,9,60,231,133,251,222,186,214,12,99,190,247,190,
+  247,5,125,239,129,190,247,24,125,239,152,190,247,125,239,190,247,190,247,125,
+  239,190,247,190,247,60,231,38,132,1,99,65,107,65,107,0,99,2,99,195,
+  90,5,99,1,99,68,99,122,239,255,255,126,231,190,239,125,247,190,255,8,
+  125,239,136,252,247,194,90,64,115,64,107,111,173,189,239,126,239,190,247,80,
+  125,239,138,190,247,77,107,12,99,207,123,243,156,247,189,186,214,251,222,60,
+  231,60,231,104,0,9,60,231,131,251,222,186,214,12,99,4,125,239,4,190,
+  247,27,125,239,149,190,247,125,239,190,247,60,231,182,181,64,99,0,91,65,
+  107,1,99,169,148,55,239,188,255,125,247,179,230,239,172,190,255,127,239,127,
+  239,254,247,124,239,188,247,9,125,239,135,196,98,64,115,0,107,175,173,125,
+  239,126,239,190,255,81,125,239,137,12,99,203,90,207,123,52,165,56,198,186,
+  214,251,222,60,231,60,231,212,0,9,60,231,131,251,222,186,214,12,99,32,
+  125,239,152,190,239,126,239,190,247,189,239,125,239,190,247,250,255,133,123,0,
+  107,64,107,192,82,239,156,189,247,190,247,189,247,125,247,126,255,125,247,190,
+  239,191,239,126,247,126,247,125,247,189,239,3,126,247,189,125,239,191,247,125,
+  239,189,239,189,239,125,247,65,91,64,99,1,107,110,173,125,247,190,239,125,
+  239,63,239,62,247,127,247,127,247,126,231,126,231,126,247,189,255,62,239,126,
+  255,188,247,190,231,189,231,127,247,189,247,190,247,62,239,126,231,126,239,190,
+  247,126,247,126,247,191,247,125,223,190,239,125,239,190,255,125,247,126,247,190,
+  255,125,239,190,239,126,239,126,247,125,247,191,255,61,231,191,239,190,239,125,
+  247,189,239,190,247,62,247,126,247,125,231,190,239,125,239,125,247,33,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,214,
+  0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,190,239,126,239,190,
+  247,125,239,125,231,125,239,246,222,2,99,0,107,0,99,197,107,247,214,190,
+  247,190,247,189,247,189,247,190,255,126,247,126,231,125,231,190,255,189,255,57,
+  239,51,190,111,165,111,165,116,206,121,239,123,239,254,255,60,231,127,247,125,
+  247,65,91,64,99,1,107,110,173,125,247,190,239,125,239,252,255,251,255,122,
+  247,188,247,190,239,126,231,190,247,123,247,189,255,189,255,121,239,127,239,190,
+  239,127,255,187,247,123,239,126,247,254,255,187,239,182,214,182,214,58,239,124,
+  239,191,239,189,247,123,239,248,222,181,214,57,239,123,247,190,247,62,239,189,
+  239,252,255,186,255,122,247,191,255,126,239,60,239,58,239,181,206,247,222,123,
+  247,254,255,190,239,125,231,126,239,126,247,33,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,214,0,9,60,231,131,251,
+  222,186,214,12,99,32,125,239,216,190,239,126,239,190,247,125,239,190,239,125,
+  239,242,189,1,99,0,107,0,99,170,148,252,255,126,239,190,239,125,239,126,
+  247,189,247,190,247,190,239,190,247,187,255,111,181,134,115,194,82,129,99,0,
+  91,66,99,68,107,241,189,252,255,126,247,127,247,125,247,65,91,64,99,1,
+  107,110,173,125,247,190,239,125,239,193,82,193,90,196,98,112,173,124,239,190,
+  247,124,239,114,173,194,90,194,90,132,107,187,239,251,239,48,173,2,99,2,
+  91,53,206,246,222,105,132,1,91,1,99,194,98,109,148,189,255,246,222,136,
+  115,129,82,65,99,1,99,41,132,123,239,127,247,189,239,111,165,67,99,194,
+  90,177,181,58,239,43,132,3,91,1,83,194,90,40,132,52,206,254,255,126,
+  239,126,239,126,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,212,0,9,60,231,131,251,222,186,214,12,99,33,
+  125,239,215,126,247,190,247,125,239,191,247,189,247,47,165,1,107,0,99,66,
+  99,110,173,124,247,62,239,190,247,125,239,126,247,189,247,125,231,126,239,124,
+  247,176,189,68,115,192,90,65,99,64,99,64,99,0,91,66,107,67,107,115,
+  206,190,255,254,230,125,247,65,91,64,99,1,107,110,173,125,247,190,239,125,
+  239,128,107,64,107,192,90,111,173,188,239,190,239,188,247,48,165,65,107,0,
+  99,194,90,189,247,253,255,48,181,65,107,64,99,42,165,3,99,192,82,64,
+  99,64,99,128,115,2,107,110,173,67,107,193,90,64,99,128,99,64,99,64,
+  99,177,181,189,247,125,239,46,165,1,99,0,99,40,157,66,99,64,99,64,
+  99,129,99,0,99,192,90,200,131,122,239,125,239,126,239,190,247,33,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,214,
+  0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,189,239,190,247,190,
+  247,125,239,190,239,125,239,107,140,0,99,0,99,66,99,115,206,125,239,127,
+  247,190,239,189,239,126,239,189,239,125,231,255,255,248,230,68,115,0,99,0,
+  99,1,99,199,123,198,123,1,99,0,99,192,90,134,115,251,255,126,247,125,
+  247,65,91,64,99,1,107,110,173,125,247,190,239,125,239,0,99,64,107,1,
+  99,112,181,189,247,125,231,188,247,111,165,0,99,64,115,193,98,126,247,125,
+  247,112,181,0,107,192,90,64,107,2,99,194,82,132,107,64,107,64,107,192,
+  98,66,107,1,99,2,91,67,99,0,91,64,107,0,99,41,132,252,247,189,
+  247,112,181,2,107,64,107,64,99,64,99,0,91,1,99,1,91,64,107,64,
+  107,2,107,181,214,189,239,190,239,124,239,33,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,214,0,9,60,231,131,251,
+  222,186,214,12,99,32,125,239,216,189,239,190,247,126,247,125,239,126,239,124,
+  247,41,132,0,99,64,107,193,90,181,214,126,247,127,247,125,231,189,247,126,
+  247,189,239,190,247,125,247,177,181,192,98,64,107,66,107,174,181,188,255,186,
+  255,201,139,66,107,64,99,131,107,116,206,190,255,125,247,65,91,64,99,1,
+  107,110,173,125,247,190,239,125,239,65,107,65,107,1,107,112,181,190,247,126,
+  239,253,247,111,165,64,107,64,107,192,90,190,247,189,247,110,181,64,107,129,
+  107,65,107,236,164,58,247,248,230,69,115,65,115,65,107,193,98,236,164,120,
+  239,56,231,135,115,1,107,1,107,196,98,188,247,188,247,112,181,194,98,65,
+  107,1,99,199,123,56,231,189,255,172,156,1,99,64,107,192,98,177,189,124,
+  239,190,247,188,239,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,214,0,9,60,231,131,251,222,186,214,12,99,32,
+  125,239,216,189,239,126,247,125,247,190,247,126,239,189,247,41,132,64,107,64,
+  107,1,91,181,214,126,247,62,231,124,231,189,239,190,247,125,239,126,239,59,
+  239,105,140,128,107,64,99,195,90,123,247,191,247,189,247,116,206,66,107,0,
+  91,192,82,177,181,125,247,125,247,65,91,64,99,1,107,110,173,125,247,190,
+  239,125,239,0,99,0,99,1,99,111,173,124,239,62,239,189,247,112,173,193,
+  98,65,115,2,91,127,239,126,239,48,181,1,99,194,98,2,99,120,239,126,
+  247,126,255,173,156,1,99,64,107,1,99,123,247,190,247,254,247,46,157,192,
+  98,0,107,4,99,123,239,125,247,112,181,66,115,64,115,2,99,121,239,190,
+  247,127,247,57,231,195,98,0,99,64,107,176,181,125,247,190,247,189,239,33,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,214,0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,189,239,125,
+  247,125,247,190,247,126,239,189,247,41,132,64,107,64,99,67,107,117,206,191,
+  247,126,239,254,247,124,231,125,239,126,239,126,239,189,255,68,107,64,99,128,
+  107,71,115,127,247,126,223,189,239,55,231,1,91,64,99,65,99,107,132,126,
+  247,125,247,65,91,64,99,1,107,110,173,125,247,190,239,125,239,65,99,0,
+  91,65,107,110,173,125,247,127,247,125,247,48,173,1,99,128,107,64,91,125,
+  231,189,231,111,173,64,99,2,99,1,91,251,255,126,239,190,247,174,173,64,
+  99,64,99,65,99,125,247,126,239,125,231,110,165,128,107,64,107,193,82,252,
+  247,127,247,46,173,64,107,0,99,2,91,252,255,125,231,125,231,125,247,4,
+  99,64,107,64,99,46,165,126,247,127,247,126,239,33,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,212,0,9,60,231,
+  131,251,222,186,214,12,99,32,125,239,215,190,247,125,239,189,247,125,239,191,
+  239,126,239,41,132,64,107,64,107,65,99,115,206,125,247,127,239,126,239,125,
+  239,190,255,189,239,125,239,252,255,1,91,65,115,1,107,39,132,126,247,125,
+  239,125,239,189,255,1,91,0,99,1,99,167,132,126,239,189,255,64,91,64,
+  107,193,98,111,173,124,239,188,239,190,239,0,107,0,107,0,99,175,173,188,
+  239,191,247,188,255,111,173,1,99,64,107,192,90,189,247,189,239,112,173,64,
+  107,0,107,65,99,125,255,126,239,188,239,111,173,64,99,0,107,0,107,125,
+  239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,239,111,173,1,
+  107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,99,1,107,110,
+  173,125,247,190,239,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,212,0,9,60,231,131,251,222,186,214,12,99,32,
+  125,239,215,126,239,125,247,189,247,189,239,127,239,126,247,46,165,128,115,0,
+  107,1,99,46,165,189,247,127,239,190,239,190,247,125,239,125,231,191,247,188,
+  247,192,90,64,107,1,107,104,140,126,247,190,247,189,247,188,255,1,91,0,
+  99,192,98,103,132,126,247,190,255,64,91,64,107,2,107,176,181,190,247,125,
+  239,125,239,0,107,65,107,1,99,111,165,189,239,127,239,188,247,112,173,1,
+  99,64,115,0,99,190,247,125,231,47,165,64,99,0,107,65,99,125,255,126,
+  239,188,239,111,173,64,99,0,107,0,107,125,239,190,239,125,247,110,173,1,
+  107,64,99,65,91,125,247,189,239,111,173,1,107,64,107,65,99,125,247,189,
+  239,126,239,125,247,65,91,64,99,1,107,110,173,125,247,190,239,34,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,212,
+  0,9,60,231,131,251,222,186,214,12,99,32,125,239,215,126,239,126,247,125,
+  247,125,239,126,231,125,239,242,189,0,91,65,107,66,107,41,132,253,255,126,
+  239,125,231,190,247,191,247,126,231,126,239,123,239,67,107,64,115,0,107,104,
+  132,126,239,126,239,125,239,251,247,1,91,64,107,66,115,40,132,126,247,62,
+  247,64,91,64,107,193,98,48,173,191,247,190,239,125,231,0,99,0,99,1,
+  99,111,173,191,247,62,231,189,239,47,165,1,91,64,107,1,99,190,247,189,
+  239,112,165,64,99,0,107,65,99,125,255,126,239,188,239,111,173,64,99,0,
+  107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,
+  239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,
+  99,1,107,110,173,125,247,190,239,34,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,210,0,9,60,231,131,251,222,186,
+  214,12,99,33,125,239,214,126,239,125,247,189,247,190,239,126,239,247,222,194,
+  90,0,107,0,99,2,91,247,222,190,247,125,239,125,231,62,231,126,239,190,
+  247,189,247,68,107,0,107,65,107,133,107,189,239,63,239,126,247,187,247,1,
+  91,64,107,0,107,106,148,189,255,127,247,0,83,64,99,67,107,47,165,61,
+  239,125,231,191,247,65,107,0,99,65,107,111,173,189,247,62,231,254,255,112,
+  165,1,99,64,107,0,99,125,247,189,239,112,173,64,107,64,107,65,99,125,
+  255,126,239,188,239,111,173,64,99,0,107,0,107,125,239,190,239,125,247,110,
+  173,1,107,64,99,65,91,125,247,189,239,111,173,1,107,64,107,65,99,125,
+  247,189,239,126,239,125,247,65,91,64,99,1,107,110,173,125,247,190,239,34,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,212,0,9,60,231,131,251,222,186,214,12,99,32,125,239,215,125,231,126,
+  247,125,247,189,247,190,239,126,239,123,239,135,115,0,107,64,99,0,83,236,
+  156,58,231,254,255,190,247,126,239,189,247,122,231,124,247,41,132,64,107,65,
+  107,194,82,186,239,126,247,189,247,50,190,2,99,128,107,0,99,176,181,188,
+  247,127,247,0,91,64,99,2,107,46,165,254,255,253,247,61,239,0,91,0,
+  99,65,107,44,165,188,247,190,247,187,247,237,156,66,99,64,107,65,99,125,
+  239,125,239,48,165,64,99,64,107,65,99,125,255,126,239,188,239,111,173,64,
+  99,0,107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,
+  247,189,239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,
+  91,64,99,1,107,110,173,125,247,190,239,34,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,212,0,9,60,231,131,251,
+  222,186,214,12,99,32,125,239,215,190,239,190,247,126,247,189,247,125,239,62,
+  231,188,247,112,173,193,98,128,107,64,99,193,82,172,148,181,214,185,247,252,
+  255,242,197,172,148,185,222,241,189,64,99,0,99,1,91,174,173,188,255,121,
+  239,105,132,2,99,0,99,0,91,183,222,188,239,125,247,65,91,0,99,1,
+  107,169,148,119,239,121,231,190,255,133,115,1,99,192,90,198,131,185,247,252,
+  255,242,189,194,90,193,90,0,99,65,107,189,247,190,239,112,173,64,99,64,
+  107,65,99,125,255,126,239,188,239,111,173,64,99,0,107,0,107,125,239,190,
+  239,125,247,110,173,1,107,64,99,65,91,125,247,189,239,111,173,1,107,64,
+  107,65,99,125,247,189,239,126,239,125,247,65,91,64,99,1,107,110,173,125,
+  247,190,239,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,212,0,9,60,231,131,251,222,186,214,12,99,32,125,239,
+  215,189,231,126,247,126,255,189,255,190,247,127,239,190,247,57,231,70,115,0,
+  91,128,107,192,90,193,90,4,107,3,99,3,99,2,107,193,90,180,189,247,
+  222,66,99,1,99,130,107,192,90,134,115,39,124,0,91,2,99,0,99,103,
+  140,61,239,190,239,189,247,66,99,193,106,1,107,0,99,67,99,200,115,125,
+  247,200,115,2,99,64,107,0,99,39,132,200,131,3,107,0,107,66,107,0,
+  107,1,99,60,239,190,239,112,173,64,107,0,107,65,99,125,255,126,239,188,
+  239,111,173,64,99,0,107,0,107,125,239,190,239,125,247,110,173,1,107,64,
+  99,65,91,125,247,189,239,111,173,1,107,64,107,65,99,125,247,189,239,126,
+  239,125,247,65,91,64,99,1,107,110,173,125,247,190,239,34,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,212,0,9,
+  60,231,131,251,222,186,214,12,99,32,125,239,215,190,239,126,239,125,247,124,
+  247,189,239,126,239,61,231,252,247,247,230,132,107,0,91,129,107,1,107,65,
+  107,0,99,0,99,0,115,65,107,240,156,251,255,171,165,1,99,0,99,64,
+  107,65,107,0,83,128,99,193,98,1,99,178,214,191,255,126,223,188,255,196,
+  115,2,115,1,107,64,99,64,99,134,107,189,255,176,181,2,99,64,107,64,
+  107,1,99,3,99,1,107,164,156,167,140,129,115,192,90,186,214,60,223,112,
+  173,64,99,0,107,65,99,125,255,126,239,188,239,111,173,64,99,0,107,0,
+  107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,239,111,
+  173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,99,1,
+  107,110,173,125,247,190,239,34,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,198,0,9,60,231,131,251,222,186,214,12,
+  99,40,125,239,208,190,255,183,214,106,132,2,91,65,99,64,99,0,99,0,
+  107,0,91,133,107,178,173,190,255,125,239,239,148,3,91,64,91,65,99,1,
+  99,194,82,201,123,117,206,124,239,125,239,190,239,126,247,183,214,198,115,192,
+  82,65,99,193,82,137,107,188,239,186,247,201,123,193,90,64,107,64,107,192,
+  90,201,123,186,247,47,198,3,99,195,90,50,198,185,255,47,173,4,99,1,
+  91,5,83,121,231,254,255,123,247,111,173,2,83,1,91,1,91,190,247,126,
+  247,189,247,47,157,3,91,193,74,69,99,186,247,188,239,113,165,196,82,2,
+  83,68,99,185,247,189,255,127,247,186,247,69,99,193,74,3,91,47,157,189,
+  247,126,247,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,198,0,9,60,231,131,251,222,186,214,12,99,40,
+  125,239,208,62,239,255,255,187,239,247,222,50,198,111,173,47,173,177,189,181,
+  222,122,247,254,255,190,247,126,239,124,247,248,230,50,198,46,173,176,189,116,
+  206,121,239,253,255,254,255,125,239,125,231,61,231,255,255,122,239,181,214,180,
+  222,56,239,123,239,189,247,190,247,123,239,181,214,110,173,110,173,117,214,58,
+  231,190,247,188,247,188,247,124,247,190,255,127,255,126,247,124,247,187,247,123,
+  231,255,255,255,238,127,247,190,255,187,247,251,255,188,255,126,239,62,239,127,
+  247,124,239,250,247,251,255,57,231,191,255,125,239,124,239,188,247,252,255,57,
+  231,254,255,61,239,127,247,191,255,57,231,251,255,250,247,124,239,127,247,62,
+  239,126,239,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,196,0,9,60,231,131,251,222,186,214,12,99,40,125,239,
+  168,62,231,191,247,190,239,190,247,190,239,125,239,125,239,126,247,126,255,126,
+  247,125,239,125,239,189,239,190,255,190,255,126,255,189,255,125,247,189,255,190,
+  255,125,239,125,239,190,247,190,247,126,239,126,239,126,255,191,255,61,247,190,
+  255,190,247,124,231,127,231,191,247,125,239,125,247,125,247,125,239,191,247,127,
+  231,3,126,239,165,62,231,62,231,63,239,191,239,190,247,253,247,125,239,62,
+  231,127,247,190,247,254,255,125,247,126,247,190,239,127,239,62,231,126,239,189,
+  247,254,255,191,255,63,247,190,247,126,239,191,255,127,247,191,255,126,247,62,
+  239,190,247,63,247,191,255,254,255,189,247,126,239,62,231,127,239,190,239,33,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,185,0,9,60,231,131,251,222,186,214,12,99,40,125,239,129,189,247,3,
+  125,239,3,126,239,131,126,231,126,247,126,239,4,189,239,154,126,247,127,247,
+  191,247,62,239,126,239,127,247,126,239,126,239,190,247,60,231,253,239,125,239,
+  125,239,126,247,62,247,125,239,189,239,188,239,125,231,126,239,61,231,191,255,
+  191,255,61,231,126,239,125,231,3,189,239,129,188,239,3,189,239,161,124,231,
+  187,231,124,231,255,247,189,247,188,239,253,247,125,239,126,247,188,239,190,239,
+  126,231,191,247,125,239,124,231,190,255,127,247,189,239,190,239,126,239,61,231,
+  191,247,125,239,189,239,124,231,127,247,190,255,124,231,125,239,191,247,126,231,
+  190,239,188,239,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,192,0,9,60,231,131,251,222,186,214,12,99,40,125,
+  239,132,188,247,189,247,190,255,190,255,3,125,239,137,189,239,125,239,189,247,
+  190,247,189,239,124,231,124,239,125,239,125,239,3,126,239,130,125,239,125,239,
+  3,190,247,184,124,231,189,247,190,247,125,239,190,255,190,247,125,239,189,239,
+  188,239,189,247,189,247,125,247,125,247,189,247,189,247,188,239,125,247,190,247,
+  190,247,125,247,124,239,125,247,190,247,126,247,190,239,126,239,127,239,61,231,
+  60,231,189,239,126,239,127,239,188,239,189,239,125,239,191,247,254,247,188,239,
+  188,239,124,239,125,231,190,247,189,239,189,239,124,231,188,239,253,247,189,247,
+  124,239,188,239,188,239,254,247,191,247,125,239,189,239,188,239,33,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,186,0,
+  9,60,231,131,251,222,186,214,12,99,40,125,239,129,190,255,4,125,247,143,
+  189,247,189,247,188,247,125,239,125,239,126,239,127,239,127,239,126,239,125,239,
+  189,247,124,239,189,239,189,247,189,239,3,125,239,139,190,247,127,239,126,239,
+  190,247,189,247,189,247,125,239,126,239,127,247,125,247,125,247,4,126,247,169,
+  125,247,125,247,189,255,125,247,61,239,190,255,253,255,124,247,124,247,126,247,
+  126,239,127,239,127,247,190,247,190,247,125,239,125,239,190,239,125,239,126,247,
+  127,247,61,231,125,239,125,239,189,239,190,247,127,247,126,239,125,231,254,247,
+  124,231,189,239,125,239,125,239,190,247,189,239,125,239,125,239,61,231,127,247,
+  126,247,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,190,0,9,60,231,131,251,222,186,214,12,99,42,125,239,143,
+  126,239,125,239,125,239,190,247,125,239,190,247,190,247,191,247,127,247,62,239,
+  62,239,191,247,190,247,125,239,125,247,3,189,247,157,125,239,189,247,190,239,
+  125,239,61,239,126,239,190,247,125,239,125,239,126,247,191,255,126,247,126,247,
+  191,247,190,247,125,239,125,239,190,247,191,247,190,247,188,239,189,247,190,247,
+  125,239,124,239,188,247,188,247,124,239,190,247,3,124,239,156,189,247,124,239,
+  189,239,189,239,126,247,126,247,190,247,125,239,190,247,191,247,190,247,125,239,
+  190,255,125,247,126,239,190,239,126,239,126,239,126,247,190,255,125,239,190,247,
+  191,247,190,247,125,239,190,247,126,247,126,247,33,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,198,0,9,60,231,131,
+  251,222,186,214,12,99,40,125,239,208,190,231,190,231,190,239,189,239,189,239,
+  190,239,125,231,126,239,125,239,125,239,125,247,189,247,189,247,125,247,125,239,
+  190,247,125,247,125,247,126,247,125,247,125,239,125,239,190,247,189,239,189,255,
+  124,247,189,247,189,247,190,247,125,239,125,247,125,247,126,231,126,239,125,231,
+  189,239,189,239,125,231,126,239,126,239,189,239,126,239,63,239,127,239,190,239,
+  189,239,126,239,127,239,189,255,124,239,190,255,126,247,126,239,126,239,190,247,
+  125,239,190,255,189,247,189,255,189,247,189,247,125,239,191,247,126,239,188,255,
+  124,247,190,247,62,231,191,247,190,247,189,247,188,247,126,239,191,247,125,239,
+  189,247,189,247,189,255,189,247,190,255,33,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,37,0,9,60,231,131,251,222,
+  186,214,12,99,127,125,239,26,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,126,0,9,60,231,131,251,222,186,214,12,99,40,125,239,133,190,
+  247,125,239,125,239,190,247,190,247,4,125,239,133,190,247,125,239,190,247,125,
+  239,190,247,20,125,239,141,190,247,125,239,125,239,190,247,125,239,190,247,190,
+  247,125,239,190,247,190,247,125,239,125,239,190,247,9,125,239,143,60,231,190,
+  247,125,239,190,247,125,239,190,247,125,239,190,247,190,247,125,239,125,239,190,
+  247,125,239,190,247,190,247,42,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,144,0,9,60,231,131,251,222,186,214,12,
+  99,40,125,239,145,190,247,125,239,190,247,190,247,125,239,125,239,190,247,190,
+  247,255,255,190,247,125,239,125,239,190,247,190,247,125,239,190,247,125,239,4,
+  190,247,131,125,239,125,239,190,247,8,125,239,133,190,247,190,247,125,239,190,
+  247,190,247,4,125,239,135,255,255,125,239,60,231,125,239,190,247,125,239,190,
+  247,8,125,239,129,190,247,3,125,239,129,190,247,4,125,239,135,190,247,125,
+  239,125,239,255,255,60,231,125,239,255,255,41,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,135,0,9,60,231,131,251,
+  222,186,214,12,99,41,125,239,130,190,247,190,247,3,125,239,3,190,247,137,
+  117,173,207,123,142,115,142,115,77,107,77,107,142,115,207,123,121,206,4,125,
+  239,129,190,247,10,125,239,132,190,247,125,239,125,239,52,165,3,142,115,136,
+  77,107,207,123,142,115,207,123,60,231,60,231,125,239,190,247,8,125,239,132,
+  190,247,125,239,190,247,125,239,3,190,247,130,52,165,77,107,4,142,115,131,
+  207,123,142,115,251,222,41,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,135,0,9,60,231,131,251,222,186,214,12,99,
+  41,125,239,132,190,247,125,239,125,239,190,247,4,125,239,129,77,107,3,73,
+  74,135,8,66,138,82,73,74,12,99,251,222,255,255,125,239,3,190,247,10,
+  125,239,142,190,247,190,247,125,239,12,99,73,74,8,66,73,74,73,74,8,
+  66,8,66,142,115,190,247,60,231,190,247,10,125,239,135,190,247,190,247,125,
+  239,125,239,255,255,251,222,138,82,4,73,74,132,8,66,138,82,142,115,190,
+  247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,128,0,9,60,231,131,251,222,186,214,12,99,41,125,239,138,190,
+  247,125,239,190,247,190,247,125,239,190,247,190,247,247,189,73,74,8,66,4,
+  73,74,137,8,66,182,181,125,239,190,247,125,239,190,247,125,239,125,239,190,
+  247,8,125,239,133,190,247,60,231,190,247,117,173,8,66,6,73,74,133,56,
+  198,190,247,125,239,125,239,190,247,10,125,239,129,190,247,3,125,239,129,243,
+  156,7,73,74,130,56,198,190,247,41,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,138,0,9,60,231,131,251,222,186,
+  214,12,99,41,125,239,136,190,247,125,239,190,247,125,239,125,239,190,247,190,
+  247,142,115,5,73,74,137,8,66,77,107,125,239,190,247,125,239,190,247,190,
+  247,125,239,190,247,9,125,239,132,190,247,125,239,125,239,12,99,4,73,74,
+  136,8,66,73,74,207,123,125,239,190,247,125,239,190,247,190,247,8,125,239,
+  135,190,247,125,239,190,247,60,231,190,247,60,231,203,90,4,73,74,132,8,
+  66,73,74,113,140,190,247,42,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,128,0,9,60,231,131,251,222,186,214,12,
+  99,41,125,239,138,190,247,125,239,190,247,125,239,125,239,190,247,186,214,73,
+  74,73,74,138,82,4,73,74,129,117,173,6,125,239,129,190,247,10,125,239,
+  130,190,247,121,206,6,73,74,134,138,82,56,198,125,239,190,247,125,239,190,
+  247,9,125,239,137,190,247,125,239,190,247,60,231,190,247,247,189,8,66,73,
+  74,138,82,3,73,74,132,138,82,251,222,125,239,190,247,41,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,116,0,9,
+  60,231,131,251,222,186,214,12,99,43,125,239,133,190,247,125,239,190,247,125,
+  239,117,173,6,73,74,129,203,90,4,190,247,131,125,239,190,247,190,247,12,
+  125,239,131,178,148,73,74,8,66,4,73,74,133,77,107,125,239,190,247,60,
+  231,255,255,10,125,239,134,190,247,125,239,125,239,190,247,125,239,207,123,6,
+  73,74,132,77,107,125,239,125,239,190,247,41,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,108,0,9,60,231,131,251,
+  222,186,214,12,99,45,125,239,138,190,247,125,239,12,99,8,66,73,74,8,
+  66,73,74,73,74,8,66,52,165,17,125,239,131,190,247,125,239,12,99,5,
+  73,74,134,199,57,56,198,125,239,190,247,125,239,190,247,15,125,239,129,138,
+  82,3,73,74,135,8,66,73,74,8,66,121,206,125,239,125,239,190,247,41,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,113,0,9,60,231,131,251,222,186,214,12,99,40,125,239,3,190,247,135,
+  125,239,125,239,190,247,251,222,138,82,73,74,8,66,3,73,74,131,138,82,
+  121,206,190,247,17,125,239,131,121,206,138,82,8,66,4,73,74,133,138,82,
+  251,222,125,239,190,247,190,247,12,125,239,133,190,247,125,239,125,239,121,206,
+  138,82,5,73,74,131,203,90,60,231,190,247,43,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,112,0,9,60,231,131,
+  251,222,186,214,12,99,45,125,239,133,190,247,247,189,73,74,73,74,8,66,
+  3,73,74,131,77,107,190,247,190,247,17,125,239,131,117,173,8,66,8,66,
+  4,73,74,135,207,123,190,247,190,247,125,239,190,247,125,239,190,247,10,125,
+  239,132,190,247,125,239,125,239,243,156,6,73,74,133,48,132,190,247,125,239,
+  125,239,190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,113,0,9,60,231,131,251,222,186,214,12,99,40,125,
+  239,4,190,247,132,125,239,125,239,243,156,8,66,3,73,74,132,8,66,73,
+  74,243,156,190,247,18,125,239,130,113,140,8,66,5,73,74,131,52,165,190,
+  247,190,247,3,125,239,130,190,247,190,247,9,125,239,132,190,247,125,239,190,
+  247,142,115,6,73,74,133,247,189,190,247,125,239,125,239,190,247,41,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,106,
+  0,9,60,231,131,251,222,186,214,12,99,40,125,239,129,190,247,5,125,239,
+  129,207,123,6,73,74,131,121,206,125,239,190,247,16,125,239,130,190,247,142,
+  115,6,73,74,129,186,214,4,125,239,131,190,247,125,239,190,247,8,125,239,
+  133,190,247,125,239,190,247,190,247,203,90,6,73,74,129,60,231,3,125,239,
+  129,190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,104,0,9,60,231,131,251,222,186,214,12,99,45,125,239,
+  130,190,247,77,107,5,73,74,132,8,66,60,231,125,239,190,247,17,125,239,
+  129,203,90,5,73,74,135,138,82,125,239,125,239,190,247,190,247,125,239,190,
+  247,10,125,239,133,190,247,125,239,190,247,125,239,138,82,5,73,74,132,138,
+  82,190,247,125,239,190,247,43,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,101,0,9,60,231,131,251,222,186,214,12,
+  99,40,125,239,134,190,247,190,247,125,239,190,247,125,239,125,239,3,73,74,
+  132,8,66,8,66,73,74,73,74,19,125,239,129,60,231,6,73,74,131,12,
+  99,190,247,125,239,4,190,247,10,125,239,132,190,247,125,239,190,247,251,222,
+  6,73,74,130,77,107,190,247,45,125,239,137,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,113,0,9,60,231,131,251,222,186,214,
+  12,99,41,125,239,134,190,247,125,239,190,247,125,239,125,239,8,66,5,73,
+  74,129,12,99,3,190,247,16,125,239,130,251,222,8,66,3,73,74,138,8,
+  66,73,74,142,115,125,239,190,247,125,239,125,239,190,247,125,239,190,247,11,
+  125,239,130,190,247,121,206,6,73,74,133,48,132,125,239,190,247,60,231,190,
+  247,42,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,103,0,9,60,231,131,251,222,186,214,12,99,40,125,239,3,190,
+  247,133,125,239,190,247,125,239,73,74,8,66,4,73,74,131,142,115,190,247,
+  190,247,17,125,239,129,56,198,5,73,74,130,8,66,142,115,19,125,239,132,
+  56,198,73,74,73,74,8,66,3,73,74,134,243,156,190,247,190,247,125,239,
+  190,247,190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,104,0,9,60,231,131,251,222,186,214,12,99,41,125,
+  239,134,190,247,125,239,190,247,190,247,251,222,138,82,5,73,74,132,142,115,
+  125,239,190,247,190,247,16,125,239,129,56,198,3,73,74,132,8,66,73,74,
+  73,74,178,148,16,125,239,132,190,247,190,247,125,239,56,198,6,73,74,129,
+  243,156,3,125,239,129,190,247,42,125,239,137,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,93,0,9,60,231,131,251,222,186,214,
+  12,99,41,125,239,133,190,247,125,239,190,247,125,239,121,206,6,73,74,132,
+  142,115,125,239,125,239,190,247,16,125,239,129,56,198,6,73,74,129,243,156,
+  16,125,239,3,190,247,129,56,198,6,73,74,132,243,156,125,239,125,239,190,
+  247,43,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,104,0,9,60,231,131,251,222,186,214,12,99,41,125,239,129,190,
+  247,3,125,239,130,121,206,8,66,5,73,74,132,142,115,190,247,125,239,190,
+  247,16,125,239,132,121,206,73,74,73,74,8,66,3,73,74,129,243,156,18,
+  125,239,130,190,247,56,198,3,73,74,135,8,66,73,74,73,74,243,156,190,
+  247,125,239,190,247,43,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,98,0,9,60,231,131,251,222,186,214,12,99,40,
+  125,239,134,190,247,125,239,190,247,125,239,190,247,60,231,6,73,74,132,142,
+  115,190,247,125,239,190,247,16,125,239,129,56,198,5,73,74,130,8,66,48,
+  132,19,125,239,129,56,198,6,73,74,134,243,156,190,247,125,239,190,247,125,
+  239,190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,100,0,9,60,231,131,251,222,186,214,12,99,40,125,239,
+  134,190,247,125,239,190,247,125,239,190,247,190,247,6,73,74,130,77,107,190,
+  247,18,125,239,129,121,206,5,73,74,130,8,66,142,115,16,125,239,133,190,
+  247,125,239,125,239,56,198,8,66,5,73,74,130,178,148,190,247,3,125,239,
+  129,190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,110,0,9,60,231,131,251,222,186,214,12,99,42,125,239,
+  134,190,247,125,239,190,247,125,239,73,74,8,66,4,73,74,131,203,90,125,
+  239,190,247,18,125,239,135,138,82,73,74,73,74,8,66,73,74,138,82,142,
+  115,16,125,239,134,190,247,125,239,190,247,121,206,73,74,8,66,4,73,74,
+  134,207,123,190,247,190,247,125,239,190,247,190,247,41,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,100,0,9,60,231,
+  131,251,222,186,214,12,99,44,125,239,131,190,247,125,239,138,82,4,73,74,
+  132,8,66,138,82,125,239,190,247,17,125,239,131,190,247,73,74,8,66,3,
+  73,74,130,8,66,203,90,18,125,239,131,190,247,186,214,138,82,4,73,74,
+  134,8,66,142,115,125,239,190,247,125,239,190,247,42,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,118,0,9,60,231,
+  131,251,222,186,214,12,99,42,125,239,140,190,247,125,239,190,247,190,247,77,
+  107,73,74,138,82,8,66,138,82,8,66,73,74,186,214,18,125,239,130,190,
+  247,203,90,3,73,74,136,8,66,73,74,73,74,60,231,255,255,60,231,125,
+  239,190,247,12,125,239,131,190,247,190,247,125,239,5,73,74,135,8,66,73,
+  74,125,239,190,247,125,239,125,239,190,247,41,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,104,0,9,60,231,131,251,
+  222,186,214,12,99,43,125,239,132,190,247,125,239,125,239,48,132,5,73,74,
+  132,138,82,117,173,125,239,190,247,17,125,239,129,142,115,6,73,74,132,56,
+  198,125,239,190,247,190,247,13,125,239,133,190,247,125,239,190,247,12,99,138,
+  82,5,73,74,133,186,214,125,239,125,239,190,247,190,247,41,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,106,0,9,
+  60,231,131,251,222,186,214,12,99,43,125,239,132,190,247,125,239,125,239,117,
+  173,6,73,74,130,48,132,190,247,18,125,239,129,243,156,6,73,74,130,178,
+  148,125,239,3,190,247,130,125,239,190,247,9,125,239,134,190,247,190,247,125,
+  239,190,247,48,132,138,82,5,73,74,133,52,165,125,239,125,239,190,247,190,
+  247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,114,0,9,60,231,131,251,222,186,214,12,99,40,125,239,135,190,
+  247,125,239,125,239,190,247,125,239,125,239,121,206,5,73,74,130,8,66,12,
+  99,19,125,239,131,56,198,73,74,8,66,4,73,74,135,77,107,190,247,125,
+  239,60,231,255,255,125,239,255,255,9,125,239,133,190,247,190,247,125,239,125,
+  239,182,181,6,73,74,129,207,123,3,125,239,129,190,247,41,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,116,0,9,
+  60,231,131,251,222,186,214,12,99,40,125,239,136,190,247,125,239,125,239,190,
+  247,125,239,125,239,60,231,138,82,6,73,74,130,56,198,190,247,16,125,239,
+  132,190,247,251,222,73,74,8,66,5,73,74,134,186,214,190,247,125,239,190,
+  247,125,239,190,247,10,125,239,133,190,247,190,247,125,239,186,214,8,66,4,
+  73,74,132,8,66,203,90,251,222,190,247,43,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,122,0,9,60,231,131,251,
+  222,186,214,12,99,40,125,239,130,190,247,190,247,3,125,239,131,190,247,190,
+  247,207,123,5,73,74,131,8,66,113,140,190,247,16,125,239,132,190,247,125,
+  239,77,107,8,66,4,73,74,134,8,66,178,148,190,247,190,247,125,239,190,
+  247,11,125,239,142,190,247,190,247,125,239,125,239,12,99,73,74,73,74,8,
+  66,73,74,8,66,8,66,117,173,190,247,190,247,42,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,114,0,9,60,231,
+  131,251,222,186,214,12,99,40,125,239,136,190,247,125,239,190,247,125,239,125,
+  239,190,247,190,247,182,181,5,73,74,131,8,66,203,90,186,214,18,125,239,
+  129,117,173,6,73,74,135,203,90,186,214,190,247,125,239,190,247,125,239,190,
+  247,9,125,239,133,190,247,125,239,190,247,125,239,243,156,5,73,74,132,8,
+  66,77,107,251,222,190,247,42,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,116,0,9,60,231,131,251,222,186,214,12,
+  99,40,125,239,129,190,247,5,125,239,138,190,247,251,222,138,82,73,74,73,
+  74,138,82,8,66,73,74,8,66,52,165,18,125,239,133,186,214,138,82,8,
+  66,138,82,8,66,3,73,74,134,52,165,125,239,190,247,125,239,190,247,190,
+  247,9,125,239,133,190,247,125,239,190,247,125,239,121,206,6,73,74,130,8,
+  66,56,198,43,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,130,0,9,60,231,131,251,222,186,214,12,99,48,125,239,
+  132,113,140,73,74,73,74,8,66,3,73,74,135,203,90,60,231,125,239,190,
+  247,190,247,125,239,190,247,10,125,239,134,190,247,125,239,190,247,207,123,73,
+  74,8,66,3,73,74,133,138,82,73,74,125,239,125,239,190,247,11,125,239,
+  134,190,247,125,239,125,239,190,247,60,231,207,123,6,73,74,136,203,90,190,
+  247,125,239,125,239,190,247,125,239,125,239,190,247,36,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,140,0,9,60,231,
+  131,251,222,186,214,12,99,48,125,239,140,186,214,73,74,73,74,138,82,73,
+  74,8,66,73,74,73,74,178,148,190,247,60,231,190,247,3,125,239,129,190,
+  247,8,125,239,141,190,247,125,239,125,239,247,189,73,74,138,82,8,66,73,
+  74,73,74,8,66,73,74,243,156,190,247,11,125,239,136,190,247,125,239,190,
+  247,190,247,125,239,190,247,117,173,8,66,5,73,74,133,138,82,52,165,190,
+  247,125,239,190,247,3,125,239,130,190,247,190,247,34,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,131,0,9,60,231,
+  131,251,222,186,214,12,99,48,125,239,131,190,247,113,140,8,66,5,73,74,
+  136,138,82,186,214,125,239,190,247,190,247,125,239,190,247,190,247,9,125,239,
+  132,190,247,125,239,190,247,207,123,4,73,74,134,8,66,138,82,203,90,60,
+  231,125,239,190,247,9,125,239,4,190,247,135,125,239,190,247,60,231,77,107,
+  73,74,73,74,8,66,3,73,74,129,12,99,4,125,239,132,190,247,125,239,
+  190,247,190,247,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,146,0,9,60,231,131,251,222,186,214,12,99,49,125,
+  239,131,251,222,138,82,8,66,4,73,74,135,8,66,48,132,190,247,125,239,
+  190,247,125,239,190,247,9,125,239,144,190,247,125,239,190,247,190,247,56,198,
+  8,66,138,82,73,74,73,74,138,82,73,74,8,66,243,156,190,247,125,239,
+  190,247,9,125,239,150,190,247,125,239,190,247,190,247,125,239,255,255,182,181,
+  73,74,138,82,8,66,73,74,73,74,8,66,73,74,182,181,190,247,190,247,
+  125,239,190,247,125,239,190,247,190,247,34,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,136,0,9,60,231,131,251,222,
+  186,214,12,99,49,125,239,133,190,247,113,140,73,74,73,74,8,66,4,73,
+  74,133,251,222,190,247,125,239,125,239,190,247,9,125,239,134,190,247,125,239,
+  190,247,125,239,125,239,207,123,6,73,74,130,203,90,251,222,11,125,239,151,
+  190,247,125,239,125,239,190,247,60,231,190,247,60,231,12,99,8,66,73,74,
+  73,74,8,66,73,74,73,74,203,90,60,231,190,247,125,239,190,247,125,239,
+  190,247,125,239,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,126,0,9,60,231,131,251,222,186,214,12,99,
+  48,125,239,132,190,247,125,239,186,214,138,82,5,73,74,135,8,66,243,156,
+  255,255,125,239,190,247,125,239,190,247,9,125,239,133,190,247,125,239,190,247,
+  125,239,121,206,7,73,74,130,182,181,190,247,11,125,239,129,190,247,3,125,
+  239,140,190,247,190,247,117,173,8,66,73,74,73,74,8,66,73,74,8,66,
+  73,74,247,189,190,247,5,125,239,129,190,247,33,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,128,0,9,60,231,131,
+  251,222,186,214,12,99,49,125,239,133,190,247,190,247,48,132,73,74,138,82,
+  4,73,74,134,12,99,60,231,125,239,190,247,125,239,190,247,11,125,239,132,
+  190,247,125,239,190,247,207,123,6,73,74,131,142,115,125,239,190,247,8,125,
+  239,134,190,247,125,239,190,247,190,247,125,239,190,247,3,125,239,131,77,107,
+  73,74,138,82,3,73,74,130,138,82,207,123,3,125,239,130,190,247,190,247,
+  35,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,133,0,9,60,231,131,251,222,186,214,12,99,48,125,239,132,190,247,
+  125,239,190,247,186,214,6,73,74,133,8,66,56,198,125,239,125,239,190,247,
+  11,125,239,142,255,255,60,231,255,255,60,231,56,198,73,74,8,66,73,74,
+  8,66,73,74,73,74,8,66,186,214,190,247,8,125,239,138,190,247,190,247,
+  125,239,190,247,125,239,190,247,125,239,190,247,190,247,117,173,5,73,74,133,
+  8,66,73,74,60,231,190,247,125,239,3,190,247,34,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,114,0,9,60,231,
+  131,251,222,186,214,12,99,49,125,239,132,190,247,125,239,125,239,207,123,5,
+  73,74,134,138,82,207,123,190,247,125,239,125,239,190,247,8,125,239,136,190,
+  247,125,239,125,239,190,247,125,239,190,247,125,239,12,99,6,73,74,130,243,
+  156,126,239,17,125,239,130,190,247,12,99,6,73,74,134,117,173,190,247,125,
+  239,190,247,125,239,190,247,34,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,116,0,9,60,231,131,251,222,186,214,12,
+  99,48,125,239,133,190,247,125,239,125,239,190,247,182,181,6,73,74,131,77,
+  107,60,231,190,247,11,125,239,136,190,247,125,239,190,247,125,239,190,247,190,
+  247,52,165,8,66,4,73,74,131,8,66,77,107,61,231,16,125,239,131,190,
+  247,125,239,178,148,6,73,74,135,48,132,125,239,125,239,190,247,125,239,190,
+  247,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,120,0,9,60,231,131,251,222,186,214,12,99,48,125,239,
+  134,190,247,125,239,125,239,190,247,60,231,203,90,4,73,74,133,8,66,138,
+  82,186,214,190,247,190,247,10,125,239,130,190,247,190,247,3,125,239,130,190,
+  247,60,231,4,73,74,132,138,82,9,74,74,74,60,231,16,125,239,131,190,
+  247,125,239,121,206,6,73,74,135,203,90,60,231,190,247,125,239,190,247,125,
+  239,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,106,0,9,60,231,131,251,222,186,214,12,99,52,125,239,
+  130,190,247,207,123,6,73,74,131,182,181,125,239,190,247,13,125,239,135,190,
+  247,125,239,125,239,190,247,77,107,8,66,9,66,4,73,74,129,57,198,16,
+  125,239,134,190,247,125,239,190,247,203,90,73,74,8,66,3,73,74,133,8,
+  66,251,222,190,247,125,239,190,247,35,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,108,0,9,60,231,131,251,222,186,
+  214,12,99,50,125,239,132,190,247,125,239,125,239,52,165,6,73,74,132,243,
+  156,125,239,190,247,190,247,8,125,239,129,190,247,3,125,239,140,190,247,190,
+  247,125,239,125,239,178,148,73,74,9,66,73,74,9,74,73,74,73,74,52,
+  165,17,125,239,131,190,247,190,247,48,132,6,73,74,129,247,189,38,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,124,
+  0,9,60,231,131,251,222,186,214,12,99,48,125,239,135,190,247,125,239,190,
+  247,190,247,60,231,121,206,8,66,5,73,74,132,48,132,125,239,125,239,190,
+  247,8,125,239,140,190,247,125,239,190,247,190,247,125,239,190,247,125,239,125,
+  239,182,181,138,82,73,74,74,74,3,73,74,129,113,140,17,125,239,131,190,
+  247,125,239,117,173,6,73,74,134,52,165,125,239,190,247,125,239,190,247,190,
+  247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,113,0,9,60,231,131,251,222,186,214,12,99,48,125,239,134,190,
+  247,125,239,125,239,190,247,125,239,60,231,6,73,74,130,12,99,190,247,10,
+  125,239,139,190,247,125,239,125,239,190,247,125,239,190,247,125,239,190,247,121,
+  206,9,74,9,74,3,73,74,130,9,74,207,123,17,125,239,131,190,247,125,
+  239,56,198,6,73,74,130,48,132,125,239,4,190,247,33,125,239,137,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,109,0,9,60,
+  231,131,251,222,186,214,12,99,48,125,239,129,190,247,5,125,239,6,73,74,
+  132,138,82,190,247,125,239,190,247,8,125,239,130,190,247,190,247,3,125,239,
+  133,190,247,125,239,125,239,126,247,8,66,5,73,74,129,78,115,17,125,239,
+  131,190,247,190,247,186,214,6,73,74,134,142,115,125,239,190,247,125,239,125,
+  239,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,91,0,9,60,231,131,251,222,186,214,12,99,49,125,239,
+  134,190,247,190,247,125,239,190,247,125,239,203,90,6,73,74,19,125,239,131,
+  190,247,73,74,8,66,4,73,74,129,138,82,17,125,239,131,190,247,125,239,
+  125,239,6,73,74,132,142,115,125,239,125,239,190,247,35,125,239,137,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,78,0,9,60,
+  231,131,251,222,186,214,12,99,52,125,239,131,190,247,190,247,77,107,6,73,
+  74,19,125,239,130,61,231,138,82,4,73,74,130,9,66,73,74,20,125,239,
+  6,73,74,132,142,115,125,239,125,239,190,247,35,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,93,0,9,60,231,131,
+  251,222,186,214,12,99,48,125,239,135,190,247,190,247,125,239,190,247,125,239,
+  190,247,142,115,6,73,74,130,125,239,190,247,17,125,239,132,126,239,13,107,
+  138,82,9,66,4,73,74,19,125,239,129,190,247,6,73,74,132,142,115,125,
+  239,125,239,190,247,35,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,93,0,9,60,231,131,251,222,186,214,12,99,48,
+  125,239,135,190,247,190,247,125,239,190,247,125,239,190,247,142,115,6,73,74,
+  19,125,239,133,190,247,77,107,138,82,9,74,9,74,3,73,74,16,125,239,
+  129,190,247,3,125,239,6,73,74,132,142,115,125,239,125,239,190,247,35,125,
+  239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  85,0,9,60,231,131,251,222,186,214,12,99,51,125,239,132,190,247,125,239,
+  190,247,142,115,6,73,74,20,125,239,129,138,82,5,73,74,129,9,66,16,
+  125,239,132,190,247,125,239,190,247,125,239,6,73,74,132,142,115,125,239,125,
+  239,190,247,35,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,93,0,9,60,231,131,251,222,186,214,12,99,48,125,239,
+  129,190,247,3,125,239,131,190,247,190,247,12,99,6,73,74,19,125,239,132,
+  126,239,73,74,73,74,74,74,3,73,74,129,74,74,18,125,239,131,190,247,
+  125,239,138,82,5,73,74,132,142,115,125,239,125,239,190,247,35,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,97,0,
+  9,60,231,131,251,222,186,214,12,99,48,125,239,3,190,247,132,125,239,190,
+  247,125,239,138,82,6,73,74,130,125,239,190,247,17,125,239,129,126,247,3,
+  73,74,132,9,74,73,74,73,74,12,99,17,125,239,131,190,247,125,239,251,
+  222,6,73,74,132,142,115,125,239,125,239,190,247,35,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,100,0,9,60,231,
+  131,251,222,186,214,12,99,50,125,239,132,190,247,125,239,190,247,125,239,5,
+  73,74,132,138,82,138,82,190,247,190,247,17,125,239,130,251,222,8,66,3,
+  73,74,131,74,74,73,74,142,115,17,125,239,132,190,247,125,239,186,214,8,
+  66,5,73,74,132,142,115,125,239,125,239,190,247,35,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,110,0,9,60,231,
+  131,251,222,186,214,12,99,48,125,239,135,190,247,125,239,190,247,125,239,190,
+  247,186,214,8,66,3,73,74,133,138,82,8,66,207,123,190,247,190,247,10,
+  125,239,136,190,247,125,239,190,247,190,247,125,239,190,247,125,239,56,198,6,
+  73,74,129,48,132,19,125,239,130,56,198,8,66,5,73,74,131,243,156,125,
+  239,190,247,36,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,109,0,9,60,231,131,251,222,186,214,12,99,48,125,239,
+  134,190,247,125,239,125,239,190,247,60,231,247,189,6,73,74,131,48,132,125,
+  239,190,247,9,125,239,3,190,247,134,125,239,125,239,190,247,190,247,125,239,
+  117,173,6,73,74,129,178,148,17,125,239,131,190,247,125,239,243,156,6,73,
+  74,133,117,173,125,239,190,247,125,239,190,247,34,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,99,0,9,60,231,131,
+  251,222,186,214,12,99,51,125,239,131,190,247,125,239,178,148,4,73,74,131,
+  8,66,73,74,243,156,11,125,239,133,190,247,125,239,190,247,125,239,125,239,
+  3,190,247,129,207,123,5,73,74,130,8,66,247,189,16,125,239,3,190,247,
+  129,142,115,5,73,74,130,8,66,56,198,38,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,110,0,9,60,231,131,251,
+  222,186,214,12,99,50,125,239,132,190,247,125,239,190,247,203,90,6,73,74,
+  131,121,206,125,239,190,247,10,125,239,132,190,247,125,239,125,239,190,247,3,
+  125,239,131,203,90,73,74,8,66,3,73,74,130,8,66,251,222,16,125,239,
+  135,190,247,60,231,60,231,138,82,8,66,138,82,8,66,3,73,74,129,60,
+  231,38,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,108,0,9,60,231,131,251,222,186,214,12,99,50,125,239,132,190,
+  247,125,239,251,222,8,66,5,73,74,132,138,82,125,239,125,239,190,247,10,
+  125,239,131,190,247,125,239,190,247,3,125,239,132,56,198,73,74,73,74,8,
+  66,3,73,74,129,203,90,19,125,239,137,117,173,73,74,8,66,138,82,73,
+  74,73,74,8,66,77,107,190,247,38,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,121,0,9,60,231,131,251,222,186,
+  214,12,99,48,125,239,134,190,247,125,239,125,239,190,247,243,156,8,66,5,
+  73,74,132,77,107,190,247,125,239,190,247,9,125,239,136,190,247,190,247,125,
+  239,190,247,125,239,190,247,190,247,48,132,3,73,74,133,138,82,73,74,8,
+  66,48,132,190,247,16,125,239,131,190,247,190,247,142,115,5,73,74,132,8,
+  66,243,156,190,247,125,239,4,190,247,33,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,112,0,9,60,231,131,251,222,
+  186,214,12,99,48,125,239,133,190,247,125,239,125,239,251,222,203,90,6,73,
+  74,133,117,173,190,247,125,239,190,247,190,247,11,125,239,133,190,247,125,239,
+  190,247,186,214,138,82,6,73,74,129,247,189,17,125,239,134,190,247,121,206,
+  138,82,73,74,73,74,8,66,3,73,74,129,121,206,3,125,239,130,190,247,
+  190,247,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,113,0,9,60,231,131,251,222,186,214,12,99,49,125,239,132,
+  190,247,190,247,247,189,8,66,6,73,74,133,60,231,125,239,190,247,125,239,
+  190,247,9,125,239,4,190,247,131,125,239,117,173,8,66,5,73,74,129,138,
+  82,18,125,239,143,190,247,113,140,8,66,73,74,8,66,138,82,73,74,73,
+  74,203,90,190,247,125,239,190,247,125,239,125,239,190,247,34,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,153,0,9,
+  60,231,131,251,222,186,214,12,99,44,125,239,3,190,247,145,125,239,125,239,
+  190,247,125,239,203,90,73,74,138,82,8,66,73,74,73,74,8,66,48,132,
+  125,239,190,247,190,247,125,239,190,247,8,125,239,130,190,247,125,239,3,190,
+  247,138,60,231,138,82,73,74,73,74,8,66,138,82,73,74,138,82,48,132,
+  190,247,10,125,239,138,190,247,125,239,190,247,125,239,125,239,190,247,125,239,
+  251,222,138,82,8,66,3,73,74,137,8,66,73,74,52,165,60,231,190,247,
+  125,239,190,247,125,239,190,247,34,125,239,137,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,128,0,9,60,231,131,251,222,186,214,
+  12,99,46,125,239,134,190,247,190,247,125,239,255,255,117,173,138,82,6,73,
+  74,132,247,189,190,247,125,239,190,247,12,125,239,132,190,247,125,239,190,247,
+  243,156,6,73,74,131,8,66,121,206,190,247,9,125,239,139,190,247,125,239,
+  190,247,125,239,190,247,190,247,125,239,190,247,113,140,8,66,138,82,5,73,
+  74,135,251,222,255,255,190,247,125,239,190,247,125,239,190,247,34,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,144,0,
+  9,60,231,131,251,222,186,214,12,99,47,125,239,143,190,247,125,239,251,222,
+  12,99,8,66,73,74,8,66,73,74,73,74,8,66,142,115,125,239,190,247,
+  125,239,190,247,11,125,239,134,190,247,125,239,125,239,251,222,203,90,8,66,
+  3,73,74,132,8,66,73,74,142,115,255,255,10,125,239,139,190,247,125,239,
+  190,247,125,239,125,239,190,247,190,247,186,214,138,82,8,66,138,82,3,73,
+  74,137,8,66,113,140,190,247,255,255,125,239,125,239,190,247,125,239,190,247,
+  34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,142,0,9,60,231,131,251,222,186,214,12,99,43,125,239,130,190,247,
+  190,247,3,125,239,133,190,247,243,156,8,66,8,66,138,82,4,73,74,134,
+  182,181,190,247,125,239,190,247,125,239,190,247,9,125,239,133,190,247,190,247,
+  125,239,255,255,243,156,4,73,74,135,8,66,73,74,73,74,56,198,190,247,
+  125,239,190,247,10,125,239,129,190,247,3,125,239,133,190,247,113,140,73,74,
+  73,74,8,66,4,73,74,129,251,222,3,125,239,132,190,247,190,247,125,239,
+  190,247,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,142,0,9,60,231,131,251,222,186,214,12,99,40,125,239,133,
+  190,247,125,239,125,239,190,247,190,247,4,125,239,129,12,99,6,73,74,129,
+  207,123,3,125,239,132,190,247,125,239,190,247,190,247,8,125,239,133,190,247,
+  125,239,190,247,251,222,203,90,6,73,74,132,142,115,125,239,125,239,190,247,
+  10,125,239,137,190,247,190,247,125,239,125,239,190,247,186,214,73,74,73,74,
+  138,82,4,73,74,129,113,140,3,190,247,134,125,239,190,247,125,239,125,239,
+  190,247,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,131,0,9,60,231,131,251,222,186,214,12,99,40,125,
+  239,129,190,247,4,125,239,3,190,247,129,182,181,6,73,74,137,8,66,247,
+  189,190,247,125,239,190,247,125,239,190,247,125,239,190,247,8,125,239,132,190,
+  247,125,239,255,255,243,156,7,73,74,132,56,198,125,239,125,239,190,247,11,
+  125,239,134,190,247,60,231,190,247,125,239,113,140,8,66,6,73,74,132,186,
+  214,125,239,190,247,190,247,3,125,239,130,190,247,190,247,34,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,144,0,9,
+  60,231,131,251,222,186,214,12,99,40,125,239,130,190,247,190,247,3,125,239,
+  133,190,247,125,239,125,239,77,107,8,66,5,73,74,130,142,115,125,239,3,
+  190,247,130,125,239,190,247,10,125,239,132,190,247,125,239,125,239,12,99,6,
+  73,74,134,48,132,190,247,125,239,190,247,125,239,190,247,8,125,239,144,190,
+  247,125,239,190,247,125,239,190,247,186,214,203,90,73,74,73,74,8,66,73,
+  74,73,74,138,82,113,140,190,247,190,247,4,125,239,130,190,247,190,247,35,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,134,0,9,60,231,131,251,222,186,214,12,99,41,125,239,135,190,247,190,
+  247,125,239,125,239,190,247,125,239,251,222,7,73,74,130,56,198,190,247,3,
+  125,239,131,255,255,60,231,190,247,9,125,239,132,190,247,125,239,56,198,8,
+  66,6,73,74,133,251,222,125,239,190,247,125,239,190,247,12,125,239,132,190,
+  247,125,239,247,189,8,66,6,73,74,139,251,222,125,239,125,239,190,247,190,
+  247,125,239,125,239,190,247,125,239,125,239,190,247,33,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,110,0,9,60,231,
+  131,251,222,186,214,12,99,41,125,239,135,190,247,125,239,190,247,125,239,125,
+  239,190,247,178,148,3,73,74,133,8,66,73,74,8,66,77,107,60,231,17,
+  125,239,132,190,247,48,132,138,82,8,66,4,73,74,134,207,123,125,239,190,
+  247,60,231,125,239,190,247,13,125,239,131,255,255,77,107,138,82,5,73,74,
+  129,113,140,44,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,109,0,9,60,231,131,251,222,186,214,12,99,41,125,239,
+  130,190,247,60,231,3,190,247,130,60,231,12,99,6,73,74,130,117,173,255,
+  255,16,125,239,132,190,247,125,239,12,99,8,66,5,73,74,133,182,181,190,
+  247,125,239,125,239,190,247,10,125,239,4,190,247,132,251,222,138,82,73,74,
+  8,66,4,73,74,131,56,198,125,239,190,247,42,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,114,0,9,60,231,131,
+  251,222,186,214,12,99,40,125,239,135,190,247,190,247,125,239,190,247,125,239,
+  190,247,251,222,7,73,74,129,251,222,17,125,239,133,190,247,121,206,73,74,
+  8,66,138,82,3,73,74,134,203,90,60,231,190,247,60,231,190,247,190,247,
+  11,125,239,132,60,231,125,239,190,247,247,189,6,73,74,133,12,99,125,239,
+  125,239,190,247,190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,112,0,9,60,231,131,251,222,186,214,12,99,
+  40,125,239,4,190,247,132,125,239,125,239,247,189,8,66,4,73,74,131,8,
+  66,142,115,255,255,17,125,239,141,190,247,117,173,8,66,73,74,73,74,8,
+  66,73,74,73,74,48,132,190,247,190,247,125,239,190,247,11,125,239,4,190,
+  247,129,243,156,4,73,74,133,8,66,8,66,243,156,125,239,190,247,43,125,
+  239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  104,0,9,60,231,131,251,222,186,214,12,99,42,125,239,133,190,247,125,239,
+  190,247,125,239,243,156,6,73,74,129,243,156,18,125,239,131,60,231,113,140,
+  8,66,5,73,74,132,182,181,125,239,125,239,190,247,13,125,239,133,190,247,
+  190,247,60,231,48,132,8,66,4,73,74,133,138,82,56,198,125,239,190,247,
+  190,247,42,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,117,0,9,60,231,131,251,222,186,214,12,99,42,125,239,136,
+  190,247,125,239,190,247,125,239,247,189,243,156,243,156,52,165,3,243,156,131,
+  251,222,125,239,190,247,16,125,239,137,190,247,182,181,243,156,52,165,243,156,
+  243,156,52,165,52,165,251,222,5,190,247,11,125,239,134,190,247,190,247,125,
+  239,117,173,243,156,52,165,4,243,156,129,60,231,3,125,239,129,190,247,41,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,107,0,9,60,231,131,251,222,186,214,12,99,40,125,239,3,190,247,131,
+  125,239,125,239,190,247,7,125,239,129,190,247,18,125,239,129,255,255,8,125,
+  239,133,190,247,190,247,125,239,190,247,190,247,11,125,239,143,190,247,125,239,
+  190,247,125,239,125,239,190,247,125,239,190,247,190,247,125,239,190,247,190,247,
+  125,239,125,239,190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,126,0,9,60,231,131,251,222,186,214,12,99,
+  41,125,239,133,190,247,125,239,190,247,125,239,125,239,3,190,247,134,125,239,
+  190,247,125,239,190,247,125,239,190,247,18,125,239,131,190,247,190,247,125,239,
+  3,190,247,137,125,239,190,247,125,239,190,247,125,239,190,247,125,239,190,247,
+  190,247,9,125,239,129,190,247,3,125,239,129,190,247,3,125,239,135,190,247,
+  125,239,190,247,125,239,190,247,125,239,190,247,41,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,60,0,9,60,231,131,
+  251,222,186,214,12,99,33,125,239,134,190,247,125,239,190,247,125,239,190,247,
+  190,247,78,125,239,131,190,247,60,231,190,247,33,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,48,0,9,60,231,131,
+  251,222,186,214,12,99,32,125,239,130,190,247,121,206,84,243,156,129,52,165,
+  34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,50,0,9,60,231,131,251,222,186,214,12,99,33,125,239,129,243,156,
+  83,73,74,131,8,66,138,82,60,231,33,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,62,0,9,60,231,131,251,222,
+  186,214,12,99,32,125,239,130,190,247,243,156,4,73,74,129,8,66,76,73,
+  74,133,8,66,73,74,8,66,73,74,190,247,33,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,43,0,9,60,231,131,
+  251,222,186,214,12,99,33,125,239,129,243,156,85,73,74,34,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,51,0,9,
+  60,231,131,251,222,186,214,12,99,32,125,239,130,190,247,243,156,80,73,74,
+  129,138,82,4,73,74,34,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,55,0,9,60,231,131,251,222,186,214,12,99,
+  32,125,239,132,190,247,243,156,73,74,8,66,76,73,74,129,8,66,6,73,
+  74,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,49,0,9,60,231,131,251,222,186,214,12,99,33,125,239,129,243,
+  156,80,73,74,129,8,66,4,73,74,34,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,52,0,9,60,231,131,251,222,
+  186,214,12,99,33,125,239,131,243,156,73,74,138,82,81,73,74,130,8,66,
+  73,74,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,63,0,9,60,231,131,251,222,186,214,12,99,32,125,239,132,
+  190,247,243,156,73,74,138,82,76,73,74,132,8,66,73,74,73,74,8,66,
+  3,73,74,33,125,239,138,190,247,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,62,0,9,60,231,131,251,222,186,214,12,99,32,
+  125,239,131,190,247,243,156,8,66,79,73,74,134,138,82,73,74,73,74,8,
+  66,73,74,190,247,32,125,239,138,190,247,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,58,0,9,60,231,131,251,222,186,214,12,
+  99,33,125,239,130,52,165,138,82,77,73,74,129,138,82,5,73,74,130,203,
+  90,60,231,32,125,239,138,190,247,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,66,0,9,60,231,131,251,222,186,214,12,99,32,
+  125,239,131,190,247,125,239,60,231,77,190,247,136,125,239,190,247,190,247,125,
+  239,190,247,125,239,60,231,255,255,32,125,239,138,190,247,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,60,0,9,60,231,131,251,
+  222,186,214,12,99,33,125,239,3,190,247,3,125,239,129,190,247,73,125,239,
+  129,190,247,3,125,239,130,190,247,190,247,34,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,60,0,9,60,231,131,251,
+  222,186,214,12,99,37,125,239,131,190,247,125,239,125,239,73,190,247,129,125,
+  239,3,190,247,131,125,239,190,247,190,247,33,125,239,137,12,99,203,90,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,62,0,9,60,231,131,251,
+  222,186,214,12,99,32,125,239,129,190,247,3,125,239,130,190,247,190,247,76,
+  125,239,133,190,247,125,239,125,239,190,247,190,247,34,125,239,137,12,99,203,
+  90,207,123,52,165,247,189,186,214,251,222,60,231,60,231,69,0,9,60,231,
+  138,251,222,186,214,12,99,121,206,125,239,190,247,125,239,190,247,125,239,190,
+  247,127,125,239,10,125,239,146,60,231,255,255,125,239,125,239,190,247,125,239,
+  125,239,190,247,121,206,77,107,138,82,142,115,178,148,247,189,121,206,251,222,
+  60,231,60,231,69,0,9,60,231,138,251,222,186,214,77,107,121,206,125,239,
+  125,239,190,247,190,247,60,231,190,247,127,125,239,10,125,239,146,255,255,125,
+  239,125,239,190,247,125,239,125,239,190,247,125,239,121,206,77,107,203,90,142,
+  115,178,148,182,181,121,206,251,222,60,231,60,231,59,0,9,60,231,134,251,
+  222,186,214,142,115,52,165,190,247,190,247,3,125,239,129,190,247,127,125,239,
+  13,125,239,130,190,247,190,247,3,125,239,138,52,165,12,99,203,90,142,115,
+  178,148,182,181,121,206,251,222,60,231,60,231,54,0,9,60,231,137,251,222,
+  186,214,113,140,207,123,60,231,190,247,60,231,255,255,190,247,127,125,239,12,
+  125,239,7,190,247,138,207,123,138,82,138,82,142,115,178,148,182,181,121,206,
+  186,214,60,231,60,231,71,0,8,60,231,136,251,222,251,222,186,214,117,173,
+  77,107,182,181,190,247,190,247,3,125,239,129,190,247,127,125,239,9,125,239,
+  146,190,247,125,239,190,247,190,247,60,231,190,247,190,247,247,189,12,99,138,
+  82,12,99,207,123,243,156,247,189,121,206,251,222,60,231,60,231,59,0,8,
+  60,231,3,251,222,136,56,198,48,132,142,115,56,198,255,255,125,239,125,239,
+  190,247,127,125,239,13,125,239,3,190,247,140,56,198,142,115,138,82,138,82,
+  12,99,48,132,52,165,247,189,186,214,251,222,60,231,60,231,56,0,10,60,
+  231,134,251,222,121,206,247,189,12,99,142,115,121,206,127,125,239,14,125,239,
+  142,190,247,125,239,190,247,190,247,56,198,48,132,203,90,73,74,203,90,142,
+  115,113,140,182,181,56,198,186,214,3,60,231,73,0,5,60,231,129,251,222,
+  4,60,231,137,186,214,121,206,247,189,52,165,77,107,142,115,182,181,125,239,
+  190,247,127,125,239,10,125,239,146,190,247,125,239,125,239,190,247,247,189,142,
+  115,203,90,73,74,138,82,77,107,48,132,52,165,56,198,121,206,186,214,251,
+  222,60,231,60,231,78,0,10,60,231,144,251,222,251,222,121,206,182,181,178,
+  148,142,115,12,99,207,123,52,165,121,206,186,214,60,231,190,247,125,239,125,
+  239,190,247,127,125,239,3,125,239,143,121,206,56,198,52,165,207,123,12,99,
+  138,82,73,74,138,82,77,107,207,123,243,156,182,181,56,198,186,214,251,222,
+  3,60,231,72,0,10,60,231,142,251,222,251,222,186,214,56,198,182,181,178,
+  148,207,123,77,107,12,99,77,107,12,99,77,107,77,107,12,99,4,77,107,
+  127,12,99,132,12,99,12,99,77,107,12,99,3,138,82,136,203,90,77,107,
+  207,123,178,148,117,173,56,198,186,214,251,222,4,60,231,60,0,11,60,231,
+  141,251,222,251,222,121,206,247,189,117,173,178,148,48,132,142,115,77,107,12,
+  99,12,99,203,90,203,90,127,12,99,9,12,99,137,77,107,77,107,142,115,
+  48,132,243,156,117,173,56,198,186,214,251,222,5,60,231,50,0,13,60,231,
+  136,251,222,121,206,56,198,182,181,52,165,178,148,113,140,48,132,127,207,123,
+  12,207,123,137,48,132,48,132,178,148,243,156,182,181,56,198,186,214,251,222,
+  251,222,5,60,231,43,0,13,60,231,135,251,222,251,222,186,214,121,206,247,
+  189,182,181,117,173,127,52,165,14,52,165,133,117,173,182,181,247,189,56,198,
+  186,214,3,251,222,5,60,231,49,0,15,60,231,131,251,222,186,214,121,206,
+  3,56,198,131,247,189,247,189,56,198,3,247,189,129,56,198,127,247,189,4,
+  247,189,3,56,198,132,121,206,121,206,186,214,251,222,8,60,231,34,0,12,
+  60,231,130,251,222,251,222,3,60,231,132,251,222,186,214,186,214,251,222,127,
+  186,214,16,186,214,129,251,222,9,60,231,28,0,12,60,231,129,125,239,7,
+  60,231,5,251,222,130,60,231,60,231,127,251,222,7,251,222,13,60,231,15,
+  0,131,60,231,60,231,251,222,127,60,231,44,60,231
+};
+const GuiConst_INT8U GuiBitmap_3[19493] =
+{
+  174,0,168,0,21,0,24,60,231,129,251,222,127,60,231,131,60,231,125,239,
+  125,239,19,60,231,8,0,127,60,231,47,60,231,20,0,20,60,231,129,251,
+  222,127,60,231,7,60,231,129,125,239,18,60,231,14,0,127,60,231,27,60,
+  231,3,251,222,17,60,231,37,0,17,60,231,3,251,222,130,60,231,60,231,
+  127,251,222,4,251,222,129,60,231,3,251,222,132,60,231,60,231,251,222,251,
+  222,13,60,231,38,0,15,60,231,132,251,222,251,222,60,231,251,222,127,186,
+  214,12,186,214,135,121,206,186,214,251,222,186,214,186,214,251,222,251,222,9,
+  60,231,55,0,14,60,231,137,251,222,186,214,186,214,178,148,207,123,77,107,
+  12,99,12,99,77,107,127,12,99,5,12,99,3,77,107,137,142,115,178,148,
+  182,181,56,198,121,206,186,214,186,214,251,222,251,222,7,60,231,66,0,10,
+  60,231,142,251,222,60,231,186,214,125,239,251,222,243,156,12,99,207,123,52,
+  165,56,198,186,214,60,231,190,247,190,247,127,125,239,5,125,239,139,186,214,
+  56,198,52,165,48,132,12,99,48,132,182,181,56,198,56,198,251,222,186,214,
+  7,60,231,73,0,9,60,231,142,251,222,125,239,251,222,60,231,121,206,142,
+  115,77,107,182,181,125,239,190,247,190,247,125,239,125,239,190,247,127,125,239,
+  3,125,239,3,190,247,141,125,239,190,247,125,239,251,222,56,198,142,115,77,
+  107,178,148,182,181,56,198,186,214,186,214,251,222,5,60,231,70,0,10,60,
+  231,141,251,222,60,231,251,222,207,123,142,115,56,198,125,239,125,239,190,247,
+  125,239,60,231,125,239,190,247,127,125,239,5,125,239,130,190,247,125,239,3,
+  190,247,138,125,239,56,198,48,132,77,107,178,148,52,165,121,206,121,206,251,
+  222,251,222,4,60,231,55,0,12,60,231,133,113,140,142,115,121,206,255,255,
+  125,239,6,190,247,127,125,239,3,125,239,3,190,247,4,125,239,138,190,247,
+  255,255,56,198,142,115,142,115,113,140,117,173,56,198,186,214,251,222,4,60,
+  231,60,0,9,60,231,135,251,222,60,231,247,189,77,107,182,181,190,247,60,
+  231,127,125,239,10,125,239,129,190,247,4,125,239,129,190,247,3,125,239,137,
+  190,247,182,181,77,107,207,123,178,148,182,181,121,206,186,214,251,222,3,60,
+  231,77,0,10,60,231,138,251,222,178,148,48,132,60,231,190,247,125,239,190,
+  247,190,247,125,239,190,247,3,125,239,130,190,247,190,247,127,125,239,132,125,
+  239,190,247,190,247,125,239,3,190,247,140,125,239,190,247,125,239,190,247,125,
+  239,207,123,77,107,48,132,52,165,247,189,186,214,251,222,3,60,231,74,0,
+  9,60,231,133,251,222,251,222,142,115,243,156,190,247,3,125,239,4,190,247,
+  131,125,239,125,239,190,247,127,125,239,134,125,239,125,239,60,231,125,239,125,
+  239,190,247,3,125,239,139,190,247,190,247,125,239,190,247,243,156,12,99,142,
+  115,178,148,117,173,121,206,251,222,3,60,231,71,0,10,60,231,134,121,206,
+  77,107,121,206,190,247,125,239,190,247,6,125,239,130,190,247,190,247,127,125,
+  239,138,125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,247,125,239,
+  125,239,3,190,247,135,121,206,77,107,12,99,113,140,117,173,56,198,186,214,
+  3,60,231,115,0,10,60,231,134,121,206,12,99,251,222,125,239,125,239,190,
+  247,25,125,239,136,190,247,125,239,190,247,126,239,126,239,125,239,191,247,125,
+  239,3,125,247,134,189,255,189,255,125,247,189,239,189,239,125,239,3,190,247,
+  12,125,239,3,125,247,133,189,247,254,247,125,239,126,247,127,247,24,125,239,
+  3,125,247,133,189,247,254,247,125,239,126,247,127,247,51,125,239,138,186,214,
+  12,99,12,99,48,132,52,165,247,189,186,214,251,222,60,231,60,231,119,0,
+  9,60,231,132,251,222,121,206,12,99,60,231,3,190,247,26,125,239,145,190,
+  247,190,247,126,239,190,247,126,239,126,239,190,247,127,239,127,239,126,239,126,
+  239,125,239,125,239,190,239,125,239,190,247,190,247,14,125,239,135,190,255,125,
+  247,189,247,124,239,125,239,190,247,190,247,25,125,239,135,190,255,125,247,189,
+  247,124,239,125,239,190,247,190,247,50,125,239,140,190,247,125,239,251,222,77,
+  107,12,99,48,132,52,165,247,189,186,214,251,222,60,231,60,231,122,0,9,
+  60,231,132,251,222,121,206,77,107,125,239,3,190,247,25,125,239,145,190,247,
+  190,247,61,239,125,239,190,255,189,255,124,239,189,247,126,231,126,231,190,239,
+  190,247,125,247,190,247,127,247,62,231,190,247,15,125,239,136,190,247,60,231,
+  189,247,190,247,126,239,190,239,125,239,189,239,24,125,239,136,190,247,60,231,
+  189,247,190,247,126,239,190,239,125,239,189,239,48,125,239,3,190,247,138,60,
+  231,77,107,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,130,
+  0,9,60,231,135,251,222,186,214,77,107,125,239,125,239,190,247,190,247,25,
+  125,239,144,61,239,126,239,190,247,254,255,186,239,55,231,181,214,181,214,181,
+  206,116,198,246,222,186,247,252,255,124,247,125,239,191,247,3,125,239,130,190,
+  247,190,247,12,125,239,135,190,247,190,247,126,247,62,239,191,247,189,239,188,
+  231,25,125,239,135,190,247,190,247,126,247,62,239,191,247,189,239,188,231,48,
+  125,239,141,190,247,125,239,190,247,125,239,77,107,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,136,0,9,60,231,131,251,222,186,214,77,
+  107,3,125,239,130,190,247,190,247,24,125,239,144,126,239,190,247,125,247,117,
+  198,4,91,193,82,193,82,2,91,0,99,65,107,1,99,2,99,106,148,182,
+  214,188,247,190,247,3,125,239,133,190,247,190,247,125,239,125,239,190,247,8,
+  125,239,136,127,239,190,247,125,239,190,255,127,247,127,247,126,239,254,247,24,
+  125,239,136,127,239,190,247,125,239,190,255,127,247,127,247,126,239,254,247,50,
+  125,239,139,190,247,125,239,77,107,203,90,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,121,0,9,60,231,135,251,222,186,214,12,99,190,247,125,
+  239,125,239,190,247,26,125,239,143,190,247,254,255,181,206,1,83,64,91,64,
+  99,0,99,64,115,0,107,64,107,64,107,193,98,4,99,237,156,251,255,3,
+  190,247,4,125,239,129,190,247,8,125,239,135,62,239,189,247,187,247,252,255,
+  60,247,127,247,61,231,25,125,239,135,62,239,189,247,187,247,252,255,60,247,
+  127,247,61,231,53,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,130,0,9,60,231,135,251,222,186,214,12,99,190,247,
+  125,239,190,247,190,247,25,125,239,138,126,239,126,247,124,247,181,214,66,91,
+  64,99,0,99,2,107,3,99,2,99,3,65,107,134,0,99,67,107,44,165,
+  125,239,125,239,190,247,3,125,239,130,190,247,190,247,8,125,239,136,255,255,
+  121,239,114,198,235,156,173,148,124,247,190,255,190,239,24,125,239,136,255,255,
+  121,239,114,198,235,156,173,148,124,247,190,255,190,239,52,125,239,137,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,138,0,9,60,
+  231,135,251,222,251,222,12,99,190,247,125,239,190,247,190,247,26,125,239,150,
+  190,247,124,239,182,214,3,99,192,90,1,107,170,164,118,198,246,214,239,181,
+  132,115,0,99,64,107,0,91,65,107,251,222,125,239,190,247,125,239,125,239,
+  190,247,190,247,9,125,239,136,124,239,107,132,1,91,0,91,40,132,187,255,
+  124,247,189,239,24,125,239,136,124,239,107,132,1,91,0,91,40,132,187,255,
+  124,247,189,239,48,125,239,141,190,247,125,239,190,247,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,238,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,27,125,239,176,189,247,126,239,189,247,
+  118,214,64,99,0,107,1,99,110,173,126,247,189,247,189,247,58,223,42,124,
+  0,83,64,107,1,107,234,140,254,255,60,239,127,247,126,239,124,231,191,255,
+  124,239,252,255,60,239,127,247,126,239,190,239,127,239,61,239,188,247,126,247,
+  40,132,0,107,64,107,40,132,125,247,190,247,62,231,253,239,125,231,127,239,
+  127,239,127,247,191,255,125,239,126,247,3,126,239,173,190,239,125,239,189,247,
+  190,247,126,239,127,231,190,239,190,247,189,247,189,247,190,247,126,239,125,231,
+  126,247,40,132,0,107,64,107,40,132,125,247,190,247,62,231,252,239,125,231,
+  191,247,62,239,126,247,125,247,126,255,126,255,189,247,126,239,127,239,125,247,
+  189,247,125,239,61,239,254,247,127,247,61,231,126,239,191,247,62,239,191,247,
+  125,239,189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,
+  64,99,0,107,1,99,110,173,126,247,125,239,190,247,253,247,51,198,66,99,
+  64,99,0,107,67,99,188,255,190,255,127,239,125,239,253,255,124,239,117,206,
+  109,165,176,181,51,190,56,223,188,247,126,247,191,255,189,247,123,247,169,148,
+  193,106,0,107,105,148,123,239,188,247,190,255,61,231,190,247,190,255,124,247,
+  57,231,242,181,111,173,176,173,117,206,187,247,254,255,124,239,190,247,125,239,
+  125,239,190,247,253,255,183,222,113,181,47,173,112,181,52,206,122,239,252,255,
+  123,247,169,148,193,106,0,107,105,148,123,239,188,247,190,255,189,239,125,239,
+  126,247,254,255,121,239,241,189,176,181,46,165,116,198,58,239,125,247,189,247,
+  125,247,191,255,254,255,122,239,187,247,252,255,253,255,122,239,117,206,247,214,
+  188,247,190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,
+  64,99,0,107,1,99,110,173,190,247,125,239,126,239,190,247,187,247,133,115,
+  0,99,0,107,1,91,184,222,191,247,126,239,253,255,180,214,71,115,3,99,
+  130,107,192,82,192,82,132,107,176,173,189,255,125,239,50,165,3,91,0,91,
+  0,107,64,107,0,91,69,107,2,91,40,132,63,239,255,255,122,247,45,165,
+  67,99,193,82,65,99,64,91,2,91,40,132,55,231,189,255,126,239,126,239,
+  254,255,57,231,37,132,66,107,65,107,0,99,64,107,65,107,68,107,170,148,
+  3,91,0,91,0,107,64,107,0,91,69,107,2,91,40,132,62,231,255,255,
+  187,247,111,181,133,115,0,91,0,91,130,107,193,82,135,115,113,181,252,255,
+  189,247,60,239,54,198,5,91,194,82,175,181,244,222,69,107,66,99,128,74,
+  182,214,126,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,
+  64,99,0,107,1,99,110,173,190,247,189,247,126,239,61,231,254,255,105,140,
+  1,99,64,107,65,99,117,206,253,230,125,239,246,222,132,115,1,99,0,99,
+  192,90,0,99,64,99,0,91,68,107,244,197,252,255,49,157,1,91,64,99,
+  1,107,64,107,0,91,2,91,0,91,103,148,127,239,188,247,236,156,66,107,
+  0,91,65,99,0,99,64,107,64,99,0,99,41,140,187,255,127,247,61,231,
+  252,255,136,115,65,115,1,107,193,106,1,107,66,107,128,90,69,115,110,181,
+  1,91,64,99,1,107,64,107,0,91,2,91,0,91,103,148,63,239,189,247,
+  112,181,66,107,192,90,64,107,0,99,0,99,128,107,192,90,134,115,51,198,
+  189,247,125,239,181,214,192,82,66,99,132,115,196,123,0,107,64,107,2,99,
+  186,255,125,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,
+  64,99,0,107,1,99,110,173,126,239,189,247,190,247,62,239,190,255,46,165,
+  1,99,64,107,0,99,47,165,191,255,123,239,40,132,0,99,0,99,131,115,
+  238,172,45,173,1,99,64,99,0,99,200,123,251,255,112,157,65,91,64,99,
+  0,107,64,107,0,83,66,99,64,99,166,148,190,247,51,198,192,98,64,107,
+  192,90,105,140,109,181,198,131,128,115,192,98,3,107,52,206,125,247,254,255,
+  176,173,1,91,64,107,64,99,2,99,38,124,103,132,132,107,170,148,175,173,
+  65,91,64,99,0,107,64,107,0,83,66,99,64,99,166,148,191,255,248,222,
+  3,99,0,99,64,107,194,98,40,140,135,123,64,107,64,107,192,98,135,115,
+  188,239,190,247,180,206,64,99,192,98,66,107,0,107,65,107,193,90,197,90,
+  188,255,190,255,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,
+  64,99,0,107,1,99,110,173,126,247,125,239,190,239,191,247,125,247,112,181,
+  1,99,64,107,0,99,176,181,61,239,247,222,0,91,0,107,65,107,240,189,
+  126,247,188,255,237,172,65,115,64,107,194,90,185,239,56,215,117,206,39,132,
+  131,98,2,107,40,132,117,206,181,214,248,230,188,231,236,156,0,107,0,107,
+  199,123,121,239,189,255,123,247,192,98,129,115,193,98,238,164,189,239,188,239,
+  40,132,128,107,192,90,195,90,243,189,123,239,188,247,187,247,59,231,251,230,
+  117,206,39,132,131,98,2,107,40,132,117,206,181,214,248,230,125,247,176,181,
+  64,99,64,107,66,107,47,181,123,255,188,247,102,140,64,107,64,107,2,99,
+  248,222,190,247,117,214,64,107,66,115,192,98,67,115,109,173,55,231,115,181,
+  125,247,125,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,
+  64,99,0,107,1,99,110,173,191,247,124,239,188,239,126,239,125,247,47,173,
+  1,99,64,107,0,99,110,173,126,247,176,181,0,99,65,115,193,90,253,255,
+  127,231,126,247,117,222,1,99,0,99,193,90,182,206,190,247,189,255,40,132,
+  1,99,0,99,105,140,188,247,188,239,125,239,253,239,130,82,0,107,65,115,
+  110,173,255,247,126,239,126,247,168,148,0,107,0,107,200,123,188,239,253,247,
+  4,99,0,107,64,99,133,107,123,247,126,247,124,239,254,255,59,231,125,239,
+  189,255,40,132,1,99,0,99,105,140,188,247,188,239,125,239,254,255,41,132,
+  128,99,192,90,3,107,122,247,191,255,61,231,115,198,193,90,64,107,64,99,
+  112,173,125,239,182,214,0,99,0,99,2,99,176,181,252,255,123,231,189,239,
+  255,255,126,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,
+  64,99,0,107,1,99,110,173,191,247,189,239,188,239,125,239,189,255,46,165,
+  66,107,0,99,1,99,111,173,125,247,171,148,64,107,1,115,41,132,126,231,
+  190,223,125,231,182,214,1,99,128,107,1,91,119,206,63,239,126,247,39,124,
+  65,107,64,99,40,124,189,239,125,231,127,231,249,214,69,107,0,107,0,107,
+  181,214,126,231,127,231,126,239,103,132,0,99,64,107,40,124,253,247,119,198,
+  196,98,64,123,0,91,236,156,125,255,127,247,127,239,125,239,190,247,127,247,
+  126,247,39,124,65,107,64,99,40,124,189,239,125,231,127,231,124,247,5,99,
+  64,99,128,107,133,115,123,247,125,231,190,231,58,223,195,90,64,107,64,107,
+  107,140,126,247,118,214,1,107,128,115,193,90,183,214,126,239,190,231,189,231,
+  125,231,62,231,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,238,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,28,125,239,223,127,239,188,239,182,214,0,99,
+  0,107,1,99,46,173,189,247,125,239,127,247,127,247,189,247,235,148,0,91,
+  64,99,65,99,113,173,189,247,40,124,64,91,0,107,1,107,64,107,65,107,
+  64,107,64,107,64,115,0,99,194,90,182,214,190,247,124,247,103,132,64,107,
+  128,107,41,140,126,247,125,239,190,247,116,206,3,91,64,107,65,107,192,90,
+  64,107,64,107,0,115,64,115,0,115,192,98,104,140,188,255,182,214,193,82,
+  0,107,0,107,47,173,191,247,125,231,188,239,191,255,126,247,124,239,124,247,
+  103,132,64,107,128,107,41,140,126,247,125,239,190,247,125,247,64,91,65,107,
+  1,107,103,140,126,255,62,239,188,247,126,239,64,91,0,107,1,107,103,132,
+  126,255,118,214,64,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,190,247,127,247,188,239,118,214,0,99,
+  0,107,1,99,111,181,189,239,189,247,253,230,191,255,123,239,105,140,0,99,
+  64,107,1,91,118,214,125,247,105,132,64,99,64,107,193,98,2,107,1,91,
+  2,99,1,99,0,91,66,99,3,91,251,255,124,239,190,255,40,132,192,98,
+  64,107,41,132,126,247,189,239,126,239,181,214,194,90,64,99,0,99,3,99,
+  194,82,2,91,2,107,1,99,130,98,4,107,111,173,124,247,117,206,66,99,
+  0,107,64,107,111,181,190,247,190,239,190,247,61,239,190,247,189,239,190,255,
+  40,132,192,98,64,107,41,132,126,247,189,239,126,239,125,247,64,99,192,98,
+  192,98,103,132,190,255,127,247,188,239,189,247,64,91,65,115,192,98,104,132,
+  125,247,118,214,64,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,189,247,62,239,188,239,118,206,64,99,
+  65,107,1,99,175,181,125,239,190,247,191,247,61,239,122,247,3,99,64,107,
+  0,107,2,91,187,247,125,255,41,140,128,107,64,107,39,132,115,206,118,206,
+  119,214,119,214,118,214,118,206,53,190,125,247,191,247,125,247,170,148,1,107,
+  0,99,40,124,190,247,190,247,126,239,118,214,2,99,128,107,1,99,176,181,
+  182,214,182,214,116,206,246,222,118,214,117,206,58,231,126,239,118,198,66,99,
+  64,115,128,107,109,165,125,239,61,231,191,247,125,239,125,239,124,231,125,247,
+  170,148,1,107,0,99,40,124,190,247,190,247,126,239,125,247,66,99,64,107,
+  130,115,102,132,189,247,62,231,189,239,188,247,0,91,64,107,192,98,104,132,
+  125,247,118,214,1,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,64,99,
+  0,99,0,91,109,173,126,239,60,231,125,247,189,255,50,198,1,99,64,107,
+  64,107,199,115,253,255,126,255,107,148,128,107,0,91,200,123,253,255,189,247,
+  190,247,126,239,125,239,188,239,253,247,124,239,190,247,124,239,40,132,1,99,
+  65,107,106,140,125,239,60,231,191,239,183,222,193,90,64,99,66,99,117,206,
+  191,247,125,231,189,239,125,231,190,247,125,239,126,239,126,239,249,222,193,90,
+  64,107,64,99,169,140,254,255,127,239,126,247,191,255,125,239,190,239,124,239,
+  40,132,1,99,65,107,106,140,125,239,60,231,191,239,189,247,67,99,64,99,
+  0,99,132,107,252,247,63,231,190,239,121,239,1,99,0,99,65,107,170,140,
+  189,247,118,206,1,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,206,1,99,
+  64,107,64,107,173,181,126,247,189,247,253,255,182,222,4,107,0,99,128,107,
+  0,107,176,181,124,247,61,247,112,181,0,99,64,107,70,107,123,239,190,247,
+  125,239,126,239,190,247,189,239,124,231,255,255,61,239,189,247,104,132,1,107,
+  0,99,199,123,189,247,253,247,126,239,123,247,68,107,64,99,66,107,48,165,
+  190,247,125,231,190,239,190,239,125,239,190,247,62,231,126,231,188,239,131,90,
+  64,115,0,99,69,107,249,230,126,247,126,255,190,255,60,239,191,239,189,247,
+  104,132,1,107,0,99,199,123,189,247,253,247,126,239,188,247,105,140,128,107,
+  0,99,66,99,121,231,191,247,125,231,114,198,67,107,64,107,193,98,176,173,
+  189,247,119,214,1,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,124,239,126,239,189,247,118,206,1,99,
+  64,107,64,107,233,148,118,214,51,198,111,181,70,115,193,90,129,107,192,90,
+  68,115,187,247,190,247,126,247,248,222,193,82,65,107,2,99,111,173,123,247,
+  189,255,189,255,59,239,119,206,188,247,191,255,63,239,188,239,104,132,66,107,
+  64,107,66,107,247,222,186,247,58,239,126,247,106,140,64,99,1,107,135,115,
+  56,231,252,247,188,247,253,255,246,222,58,231,191,255,126,239,189,247,136,115,
+  64,107,0,107,193,90,46,165,58,239,252,255,121,247,249,222,126,239,188,239,
+  104,132,66,107,64,107,66,107,247,222,186,247,58,239,189,239,177,181,64,99,
+  0,99,2,91,174,173,123,247,187,247,103,132,2,99,64,107,129,90,247,214,
+  188,239,183,214,1,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,189,247,127,239,190,247,118,214,1,99,
+  0,107,0,91,67,99,195,90,67,107,192,90,66,107,1,99,0,99,3,99,
+  117,222,125,247,125,239,126,239,188,247,200,123,0,99,192,90,67,107,104,132,
+  173,173,43,165,197,123,2,91,118,231,123,239,190,247,190,247,236,148,193,90,
+  128,115,192,90,4,99,68,107,41,140,127,239,242,189,65,107,0,107,128,82,
+  133,115,235,148,111,173,41,140,68,107,107,140,124,247,188,239,189,247,113,181,
+  66,107,64,107,0,99,1,91,199,123,39,132,133,115,42,124,60,231,190,247,
+  236,148,193,90,128,115,192,90,4,99,68,107,41,140,126,239,120,214,131,115,
+  0,107,1,99,1,91,199,123,133,115,0,91,193,98,0,107,41,140,124,239,
+  124,231,182,214,0,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,189,247,126,239,125,239,54,206,65,99,
+  65,107,64,99,193,90,0,91,64,99,64,107,0,99,0,99,131,115,50,206,
+  126,255,126,247,126,239,190,239,189,247,51,198,1,99,129,115,0,107,2,99,
+  1,99,1,107,65,107,192,90,175,189,188,247,63,239,62,231,50,190,2,99,
+  64,107,64,107,1,99,0,99,38,140,63,231,251,255,38,140,64,115,128,115,
+  0,91,66,107,3,107,65,115,0,99,69,115,123,247,188,239,189,247,58,239,
+  198,123,0,107,128,115,64,91,0,91,64,107,64,91,194,82,187,239,62,231,
+  50,190,2,99,64,107,64,107,1,99,0,99,38,140,127,239,191,255,43,173,
+  1,107,65,107,64,99,1,99,64,99,64,99,2,107,0,107,179,222,189,247,
+  189,239,118,206,64,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,190,239,189,239,188,247,116,198,5,91,
+  193,82,1,91,65,99,64,99,1,99,2,91,135,107,47,165,249,222,189,247,
+  125,239,189,231,190,247,125,239,126,247,189,255,243,197,135,115,194,90,64,99,
+  65,99,1,91,195,90,107,132,182,206,188,247,189,247,124,247,187,255,237,156,
+  194,82,66,99,193,90,2,99,169,148,125,239,253,247,56,223,172,148,195,90,
+  1,91,0,99,64,99,2,91,69,107,112,173,123,247,190,255,125,239,125,231,
+  124,231,38,132,1,99,0,91,129,107,1,99,193,90,171,148,246,238,124,247,
+  187,255,237,156,194,82,66,99,193,90,2,99,169,148,189,239,254,255,122,231,
+  238,156,4,91,193,82,0,99,64,107,64,91,198,115,53,198,191,247,62,239,
+  189,247,116,206,3,91,194,82,69,99,52,198,189,247,125,239,190,247,189,239,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,240,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,224,62,239,126,239,190,247,253,255,122,239,
+  186,247,246,222,180,214,116,214,246,222,56,239,122,239,188,247,190,255,191,247,
+  126,239,124,231,190,239,126,239,62,239,190,255,188,255,247,222,116,206,110,173,
+  111,173,242,197,247,222,187,247,189,247,125,239,125,239,127,247,190,247,123,239,
+  56,223,181,206,182,214,122,247,252,255,126,239,125,239,254,255,123,239,183,222,
+  242,197,47,173,46,173,246,222,121,239,188,255,190,255,126,247,190,247,190,239,
+  124,231,186,255,181,214,112,173,46,165,241,181,182,214,123,247,189,255,127,247,
+  190,247,123,239,56,223,181,206,182,214,122,247,252,255,61,231,125,239,254,255,
+  188,247,248,222,243,197,112,181,111,181,116,214,122,239,190,255,127,239,127,239,
+  191,255,189,255,187,255,250,255,57,239,253,255,255,255,61,239,125,239,124,231,
+  189,239,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,229,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,135,126,239,191,247,125,239,126,247,190,247,
+  191,255,60,239,3,125,247,143,126,247,190,247,126,247,126,247,126,239,126,247,
+  125,239,190,247,126,247,62,239,126,239,191,255,255,255,189,247,190,255,3,125,
+  247,141,190,247,125,247,126,247,190,255,62,231,126,231,191,239,191,247,125,239,
+  62,239,127,247,63,239,190,247,3,125,239,3,125,247,155,190,255,60,231,190,
+  247,190,247,61,239,62,239,126,239,125,239,190,239,126,239,190,247,190,239,125,
+  239,190,239,191,247,127,239,62,231,62,231,126,231,191,239,191,247,125,239,62,
+  239,127,247,63,239,191,247,126,239,3,126,247,147,125,247,125,247,125,255,61,
+  247,126,247,126,239,125,231,126,239,126,239,126,247,127,255,190,255,125,247,125,
+  247,61,239,126,239,190,247,125,239,190,247,25,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,230,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,141,190,
+  247,189,247,125,239,190,247,125,231,126,239,126,239,191,239,191,247,126,239,125,
+  239,125,239,189,239,3,189,247,132,190,247,125,247,190,247,190,247,3,126,239,
+  161,126,231,125,239,190,247,190,247,125,239,125,239,189,247,189,247,124,239,189,
+  231,190,239,125,231,125,231,191,247,191,247,126,239,126,239,188,239,189,247,253,
+  247,125,239,125,239,190,247,126,239,61,231,127,239,127,239,126,239,126,239,191,
+  247,126,239,125,239,191,255,3,126,239,158,191,239,126,239,61,231,125,231,190,
+  239,189,231,190,239,125,231,125,231,191,247,191,247,126,239,126,239,124,239,189,
+  247,189,247,125,239,125,239,191,247,190,247,125,239,127,255,62,239,189,239,254,
+  247,253,239,189,239,190,247,61,239,62,239,3,126,247,131,190,255,190,247,190,
+  247,26,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,224,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,27,125,239,134,189,247,124,239,125,239,254,247,125,239,189,
+  239,3,125,231,148,189,239,190,239,190,247,189,239,125,239,125,247,125,247,126,
+  247,125,239,125,239,190,247,253,247,189,239,125,231,190,239,125,231,125,231,125,
+  239,189,239,189,239,3,189,247,139,253,247,124,239,189,247,190,247,125,239,124,
+  247,189,247,188,247,189,247,189,247,125,239,3,189,239,154,190,239,190,239,125,
+  231,190,239,189,239,125,231,125,239,126,239,126,247,126,239,189,247,125,247,125,
+  247,126,247,190,247,254,247,189,247,188,239,253,247,124,239,189,247,190,247,125,
+  239,124,247,189,247,188,247,3,189,247,145,189,239,125,239,125,231,189,239,190,
+  239,125,239,190,247,189,239,124,231,189,239,188,239,124,239,253,247,125,247,190,
+  247,189,247,189,247,29,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,224,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,27,125,239,155,126,239,126,247,126,239,191,
+  247,126,239,125,231,125,239,190,239,125,231,189,239,190,239,125,239,125,239,126,
+  247,190,247,190,247,126,247,190,247,125,239,124,239,189,239,188,239,188,239,189,
+  239,190,239,189,239,125,239,5,126,239,145,125,247,61,239,190,255,190,255,125,
+  247,124,247,189,247,188,247,126,239,126,239,61,231,126,239,190,247,125,239,190,
+  239,189,239,188,231,3,189,239,148,125,239,190,247,190,247,126,239,124,247,125,
+  247,190,255,126,247,125,247,125,239,125,247,189,247,125,247,61,239,190,255,190,
+  255,125,247,124,247,189,247,188,247,3,126,239,130,126,247,126,239,4,125,239,
+  138,190,247,126,239,62,239,191,247,190,239,124,231,124,239,189,239,188,239,188,
+  239,3,189,247,130,190,247,126,247,25,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,214,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,136,126,239,191,
+  247,61,239,126,239,191,247,190,247,126,247,125,239,3,190,247,146,125,247,126,
+  247,190,247,126,239,61,239,125,239,190,247,126,247,125,239,125,247,190,247,189,
+  247,189,247,125,239,126,247,126,247,125,239,126,239,3,191,247,3,126,247,135,
+  125,247,190,247,190,247,125,239,191,247,126,239,191,239,4,126,239,131,190,247,
+  125,239,189,247,5,125,239,138,190,247,190,247,190,255,125,247,125,247,126,247,
+  125,247,125,239,126,239,191,247,3,126,247,147,125,247,190,247,190,247,125,239,
+  191,247,126,239,191,247,126,247,126,239,126,247,126,247,190,247,125,239,190,247,
+  190,239,191,247,127,247,61,239,125,239,3,190,247,4,125,239,131,190,247,125,
+  247,190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,231,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,27,125,239,138,189,239,189,239,125,239,189,247,125,
+  247,125,239,190,247,125,239,125,247,125,247,3,189,247,3,189,239,132,125,239,
+  125,239,126,247,127,247,4,126,247,200,125,247,189,247,190,247,190,247,189,239,
+  125,239,125,239,189,239,190,247,125,239,189,239,189,239,125,239,126,239,62,231,
+  127,239,189,239,189,239,125,239,189,247,125,247,60,239,125,247,190,247,61,247,
+  190,255,127,247,126,247,190,247,190,247,125,239,124,239,125,239,189,247,189,247,
+  188,239,189,239,190,247,190,247,126,239,190,247,125,239,189,239,189,239,125,239,
+  126,239,62,231,127,239,189,239,189,247,125,239,189,247,189,247,125,247,190,255,
+  125,255,189,239,189,239,124,239,189,247,190,255,190,247,125,239,125,239,126,239,
+  126,239,127,239,126,239,127,247,126,247,124,239,190,247,25,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,47,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,127,125,
+  239,21,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,76,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,11,
+  125,239,134,190,247,125,239,125,239,190,247,125,239,190,247,116,125,239,134,190,
+  247,190,247,125,239,190,247,125,239,190,247,9,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,74,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,129,190,
+  247,4,125,239,129,190,247,113,125,239,135,190,247,190,247,125,239,190,247,125,
+  239,190,247,190,247,10,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,73,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,133,190,247,125,239,125,239,255,
+  255,251,222,114,190,247,3,125,239,132,190,247,190,247,251,222,255,255,10,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,72,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,15,125,239,132,60,231,203,90,73,74,8,66,114,73,74,134,8,66,
+  73,74,73,74,203,90,60,231,190,247,9,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,82,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,11,125,239,136,190,247,
+  125,239,125,239,190,247,125,239,73,74,73,74,138,82,113,73,74,135,138,82,
+  73,74,73,74,8,66,8,66,125,239,190,247,9,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  65,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,11,125,239,129,
+  190,247,4,125,239,118,73,74,132,138,82,73,74,73,74,190,247,10,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,55,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,16,125,239,119,73,74,130,8,66,73,74,11,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  66,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,13,125,239,131,
+  190,247,190,247,125,239,119,73,74,132,8,66,73,74,125,239,190,247,9,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,65,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,12,125,239,132,190,247,125,239,190,247,190,247,107,73,74,129,8,66,
+  13,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,71,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,4,
+  73,74,129,8,66,103,73,74,129,138,82,12,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,71,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,9,73,74,129,138,82,103,73,74,129,
+  8,66,7,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,77,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,142,115,36,243,156,3,52,165,64,243,156,129,142,115,8,
+  73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,89,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,6,73,
+  74,131,8,66,138,82,243,156,32,125,239,130,190,247,190,247,66,125,239,132,
+  190,247,190,247,60,231,243,156,8,73,74,11,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,95,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,
+  247,125,239,190,247,190,247,6,73,74,131,8,66,73,74,243,156,27,190,247,
+  3,125,239,6,190,247,3,125,239,60,190,247,133,125,239,125,239,190,247,125,
+  239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,102,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,
+  190,247,5,73,74,134,138,82,73,74,73,74,243,156,125,239,125,239,25,190,
+  247,130,125,239,125,239,3,190,247,4,125,239,63,190,247,4,125,239,131,52,
+  165,73,74,138,82,6,73,74,11,125,239,140,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,117,0,9,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,
+  190,247,190,247,8,73,74,131,178,148,190,247,190,247,24,125,239,131,190,247,
+  125,239,125,239,3,190,247,138,125,239,60,231,121,206,251,222,125,239,190,247,
+  190,247,125,239,125,239,190,247,57,125,239,133,190,247,190,247,125,239,125,239,
+  52,165,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,99,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,26,125,239,129,190,247,5,125,239,134,190,247,178,
+  148,73,74,243,156,125,239,190,247,62,125,239,132,190,247,125,239,125,239,243,
+  156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,103,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,
+  8,73,74,129,243,156,28,125,239,136,190,247,190,247,125,239,125,239,60,231,
+  207,123,73,74,113,140,3,125,239,129,190,247,60,125,239,132,190,247,125,239,
+  125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,107,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,
+  247,190,247,8,73,74,129,243,156,27,125,239,141,190,247,190,247,125,239,125,
+  239,190,247,125,239,142,115,73,74,142,115,125,239,125,239,190,247,190,247,60,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,111,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,130,
+  190,247,190,247,3,125,239,139,190,247,190,247,77,107,73,74,12,99,190,247,
+  125,239,190,247,190,247,125,239,190,247,58,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,109,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,27,125,239,129,190,247,3,125,239,139,190,247,125,
+  239,138,82,73,74,138,82,190,247,190,247,125,239,190,247,125,239,190,247,58,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,104,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,3,
+  190,247,131,125,239,190,247,125,239,3,73,74,130,60,231,190,247,3,125,239,
+  129,190,247,58,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,107,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,
+  26,125,239,135,190,247,190,247,125,239,190,247,125,239,190,247,125,239,3,73,
+  74,132,186,214,190,247,125,239,190,247,60,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,103,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,29,125,239,129,190,247,3,125,239,136,8,66,73,
+  74,73,74,56,198,125,239,125,239,190,247,190,247,59,125,239,132,190,247,125,
+  239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,122,0,9,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,
+  190,247,190,247,8,73,74,129,243,156,26,125,239,139,190,247,190,247,125,239,
+  190,247,125,239,125,239,121,206,8,66,73,74,73,74,182,181,4,190,247,18,
+  125,239,134,190,247,125,239,190,247,190,247,125,239,190,247,35,125,239,132,190,
+  247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,111,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,
+  125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,131,190,247,190,247,
+  125,239,3,190,247,129,121,206,3,73,74,129,52,165,24,125,239,132,60,231,
+  178,148,138,82,243,156,35,125,239,132,190,247,125,239,125,239,243,156,8,73,
+  74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,125,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,
+  129,243,156,27,125,239,130,190,247,125,239,3,190,247,129,56,198,3,73,74,
+  133,113,140,190,247,125,239,190,247,190,247,17,125,239,136,190,247,60,231,190,
+  247,190,247,243,156,8,66,48,132,190,247,34,125,239,132,190,247,125,239,125,
+  239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,128,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,
+  190,247,8,73,74,129,243,156,27,125,239,140,190,247,125,239,190,247,125,239,
+  125,239,182,181,73,74,203,90,73,74,207,123,190,247,125,239,3,190,247,16,
+  125,239,136,190,247,125,239,190,247,190,247,52,165,73,74,207,123,60,231,34,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,119,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,129,
+  190,247,3,125,239,135,190,247,52,165,73,74,207,123,138,82,12,99,190,247,
+  21,125,239,135,190,247,190,247,125,239,243,156,73,74,142,115,190,247,34,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,121,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,130,190,
+  247,125,239,3,190,247,136,178,148,73,74,113,140,73,74,138,82,125,239,125,
+  239,190,247,18,125,239,129,190,247,3,125,239,131,243,156,73,74,203,90,35,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,121,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,141,
+  190,247,125,239,190,247,125,239,190,247,113,140,73,74,52,165,73,74,73,74,
+  60,231,190,247,190,247,21,125,239,133,190,247,113,140,73,74,73,74,190,247,
+  34,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,123,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,
+  125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,
+  129,190,247,4,125,239,138,48,132,8,66,56,198,138,82,73,74,251,222,125,
+  239,125,239,190,247,190,247,17,125,239,134,190,247,190,247,125,239,142,115,73,
+  74,73,74,35,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,137,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,
+  26,125,239,150,190,247,125,239,190,247,125,239,190,247,125,239,207,123,73,74,
+  121,206,142,115,73,74,56,198,190,247,125,239,125,239,190,247,125,239,190,247,
+  125,239,125,239,190,247,190,247,14,125,239,132,142,115,73,74,73,74,121,206,
+  34,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,129,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,
+  125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,29,125,239,
+  137,190,247,190,247,125,239,77,107,73,74,56,198,142,115,8,66,182,181,4,
+  125,239,132,190,247,125,239,125,239,190,247,3,125,239,129,190,247,12,125,239,
+  132,142,115,73,74,73,74,56,198,34,125,239,132,190,247,125,239,125,239,243,
+  156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,137,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,
+  8,73,74,129,243,156,26,125,239,4,190,247,139,125,239,125,239,203,90,73,
+  74,251,222,178,148,73,74,52,165,125,239,125,239,190,247,3,125,239,133,190,
+  247,190,247,125,239,125,239,190,247,9,125,239,3,190,247,133,125,239,142,115,
+  73,74,73,74,182,181,34,125,239,132,190,247,125,239,125,239,243,156,8,73,
+  74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,134,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,
+  129,243,156,29,125,239,140,190,247,125,239,190,247,138,82,73,74,125,239,52,
+  165,73,74,178,148,125,239,190,247,190,247,3,125,239,129,190,247,4,125,239,
+  129,190,247,8,125,239,3,190,247,133,125,239,142,115,73,74,73,74,52,165,
+  34,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,133,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,
+  125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,
+  140,190,247,125,239,125,239,190,247,190,247,73,74,73,74,125,239,182,181,8,
+  66,207,123,190,247,3,125,239,130,190,247,125,239,4,190,247,130,125,239,190,
+  247,12,125,239,132,142,115,73,74,73,74,243,156,34,125,239,132,190,247,125,
+  239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,136,0,9,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,
+  190,247,190,247,8,73,74,129,243,156,26,125,239,3,190,247,148,125,239,125,
+  239,60,231,8,66,138,82,190,247,121,206,73,74,77,107,190,247,125,239,125,
+  239,190,247,190,247,125,239,190,247,125,239,125,239,190,247,190,247,13,125,239,
+  132,142,115,73,74,73,74,113,140,34,125,239,132,190,247,125,239,125,239,243,
+  156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,142,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,
+  8,73,74,129,243,156,28,125,239,150,190,247,125,239,125,239,186,214,73,74,
+  77,107,60,231,251,222,73,74,138,82,125,239,190,247,125,239,190,247,125,239,
+  125,239,190,247,125,239,190,247,190,247,60,231,190,247,8,125,239,3,190,247,
+  133,125,239,142,115,73,74,73,74,207,123,34,125,239,132,190,247,125,239,125,
+  239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,143,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,
+  190,247,8,73,74,129,243,156,26,125,239,146,190,247,125,239,190,247,190,247,
+  125,239,56,198,73,74,207,123,125,239,190,247,138,82,73,74,125,239,190,247,
+  125,239,125,239,190,247,190,247,3,125,239,131,243,156,138,82,48,132,10,125,
+  239,134,190,247,125,239,142,115,73,74,73,74,142,115,34,125,239,132,190,247,
+  125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,167,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,8,73,74,129,243,156,26,125,239,129,190,247,3,125,239,
+  153,190,247,56,198,73,74,142,115,125,239,125,239,12,99,73,74,251,222,190,
+  247,125,239,125,239,190,247,125,239,125,239,190,247,125,239,243,156,138,82,77,
+  107,190,247,125,239,190,247,190,247,125,239,3,190,247,141,125,239,125,239,190,
+  247,190,247,142,115,73,74,73,74,203,90,190,247,190,247,125,239,190,247,190,
+  247,29,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,157,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,28,125,
+  239,139,190,247,190,247,125,239,117,173,73,74,113,140,190,247,190,247,77,107,
+  73,74,121,206,5,190,247,137,125,239,190,247,125,239,243,156,73,74,138,82,
+  190,247,125,239,190,247,4,125,239,139,190,247,190,247,125,239,190,247,125,239,
+  12,99,73,74,73,74,138,82,125,239,190,247,5,125,239,129,190,247,26,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,146,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,28,125,239,139,190,
+  247,190,247,125,239,243,156,73,74,243,156,125,239,190,247,207,123,73,74,182,
+  181,4,125,239,4,190,247,134,243,156,73,74,73,74,60,231,190,247,190,247,
+  4,125,239,4,190,247,135,125,239,73,74,8,66,138,82,73,74,125,239,255,
+  255,3,190,247,29,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,168,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,
+  156,26,125,239,3,190,247,152,125,239,125,239,243,156,73,74,243,156,190,247,
+  190,247,178,148,73,74,52,165,125,239,190,247,190,247,125,239,190,247,190,247,
+  125,239,125,239,178,148,73,74,73,74,121,206,125,239,125,239,3,190,247,144,
+  125,239,190,247,125,239,190,247,125,239,190,247,73,74,73,74,12,99,73,74,
+  186,214,190,247,125,239,125,239,190,247,190,247,28,125,239,132,190,247,125,239,
+  125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,158,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,
+  247,190,247,8,73,74,129,243,156,26,125,239,129,190,247,3,125,239,137,190,
+  247,178,148,73,74,52,165,190,247,125,239,52,165,73,74,178,148,5,190,247,
+  3,125,239,134,48,132,8,66,73,74,182,181,125,239,125,239,3,190,247,139,
+  125,239,190,247,125,239,190,247,125,239,190,247,73,74,73,74,77,107,73,74,
+  56,198,3,125,239,130,190,247,190,247,28,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,154,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,29,125,239,138,190,247,125,239,207,123,73,74,56,
+  198,190,247,125,239,182,181,73,74,48,132,3,125,239,4,190,247,135,125,239,
+  142,115,8,66,73,74,243,156,190,247,190,247,4,125,239,138,190,247,125,239,
+  190,247,125,239,125,239,73,74,73,74,207,123,73,74,247,189,3,190,247,130,
+  125,239,190,247,28,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,155,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,
+  156,29,125,239,143,190,247,125,239,77,107,73,74,121,206,190,247,125,239,56,
+  198,73,74,77,107,125,239,190,247,190,247,125,239,125,239,3,190,247,134,207,
+  123,73,74,73,74,48,132,190,247,190,247,4,125,239,130,190,247,190,247,3,
+  125,239,133,73,74,8,66,113,140,73,74,52,165,6,125,239,129,190,247,26,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,153,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,28,125,239,139,
+  190,247,190,247,125,239,142,115,73,74,56,198,125,239,190,247,186,214,73,74,
+  203,90,8,125,239,136,142,115,73,74,73,74,142,115,125,239,190,247,125,239,
+  125,239,4,190,247,141,125,239,190,247,125,239,73,74,73,74,243,156,73,74,
+  243,156,125,239,125,239,190,247,125,239,190,247,28,125,239,132,190,247,125,239,
+  125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,170,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,
+  247,190,247,8,73,74,129,243,156,27,125,239,149,190,247,190,247,125,239,190,
+  247,138,82,73,74,251,222,125,239,125,239,190,247,73,74,73,74,190,247,190,
+  247,125,239,190,247,125,239,190,247,125,239,190,247,142,115,3,73,74,3,190,
+  247,148,125,239,190,247,125,239,190,247,125,239,125,239,190,247,125,239,73,74,
+  73,74,243,156,73,74,243,156,125,239,125,239,190,247,125,239,125,239,190,247,
+  190,247,26,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,153,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,26,
+  125,239,129,190,247,4,125,239,130,73,74,73,74,3,125,239,132,190,247,138,
+  82,73,74,60,231,6,125,239,130,190,247,142,115,3,73,74,129,60,231,3,
+  125,239,130,190,247,125,239,4,190,247,140,125,239,73,74,73,74,182,181,138,
+  82,207,123,125,239,125,239,190,247,125,239,125,239,190,247,27,125,239,132,190,
+  247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,164,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,
+  125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,143,190,247,125,239,
+  125,239,190,247,125,239,8,66,73,74,190,247,125,239,125,239,190,247,77,107,
+  73,74,186,214,125,239,3,190,247,3,125,239,133,12,99,73,74,138,82,73,
+  74,121,206,3,125,239,130,190,247,125,239,4,190,247,140,125,239,73,74,73,
+  74,56,198,73,74,142,115,190,247,125,239,125,239,190,247,125,239,190,247,27,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,164,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,3,
+  190,247,131,251,222,73,74,138,82,3,125,239,144,190,247,207,123,73,74,247,
+  189,125,239,190,247,190,247,125,239,125,239,190,247,125,239,138,82,73,74,207,
+  123,73,74,182,181,3,125,239,129,190,247,4,125,239,142,190,247,125,239,73,
+  74,73,74,186,214,8,66,12,99,255,255,190,247,125,239,190,247,125,239,190,
+  247,190,247,26,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,156,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,
+  27,125,239,135,190,247,125,239,60,231,121,206,73,74,77,107,190,247,3,125,
+  239,143,113,140,73,74,117,173,190,247,125,239,190,247,125,239,125,239,190,247,
+  125,239,73,74,73,74,243,156,73,74,178,148,5,190,247,4,125,239,138,251,
+  222,73,74,203,90,125,239,73,74,73,74,125,239,190,247,125,239,190,247,29,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,156,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,129,
+  190,247,3,125,239,139,56,198,73,74,142,115,125,239,125,239,190,247,125,239,
+  52,165,73,74,243,156,190,247,6,125,239,133,73,74,73,74,117,173,73,74,
+  207,123,5,190,247,4,125,239,141,121,206,73,74,77,107,190,247,73,74,73,
+  74,60,231,190,247,125,239,190,247,125,239,190,247,190,247,26,125,239,132,190,
+  247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,173,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,
+  125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,144,190,247,125,239,
+  190,247,190,247,247,189,73,74,207,123,125,239,125,239,190,247,125,239,182,181,
+  73,74,48,132,125,239,125,239,3,190,247,140,125,239,190,247,73,74,73,74,
+  121,206,73,74,12,99,125,239,125,239,190,247,125,239,190,247,3,125,239,142,
+  190,247,56,198,73,74,142,115,125,239,138,82,138,82,251,222,190,247,190,247,
+  125,239,125,239,190,247,190,247,26,125,239,132,190,247,125,239,125,239,243,156,
+  8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,167,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,
+  73,74,129,243,156,28,125,239,134,190,247,125,239,117,173,73,74,48,132,190,
+  247,3,125,239,163,56,198,73,74,142,115,125,239,190,247,190,247,125,239,190,
+  247,125,239,190,247,73,74,73,74,125,239,73,74,138,82,125,239,125,239,190,
+  247,125,239,190,247,125,239,190,247,125,239,190,247,56,198,73,74,142,115,190,
+  247,142,115,8,66,121,206,125,239,190,247,125,239,190,247,28,125,239,132,190,
+  247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,197,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,
+  125,239,190,247,190,247,8,73,74,129,243,156,11,125,239,133,190,247,125,239,
+  125,239,190,247,190,247,14,125,239,132,243,156,73,74,243,156,190,247,3,125,
+  239,145,251,222,8,66,203,90,190,247,125,239,125,239,190,247,125,239,125,239,
+  190,247,73,74,8,66,125,239,203,90,73,74,251,222,190,247,3,125,239,144,
+  190,247,125,239,190,247,125,239,56,198,73,74,207,123,190,247,142,115,73,74,
+  56,198,125,239,190,247,125,239,125,239,190,247,9,125,239,136,190,247,125,239,
+  190,247,125,239,190,247,190,247,125,239,190,247,10,125,239,132,190,247,125,239,
+  125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,198,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,
+  247,190,247,8,73,74,129,243,156,10,125,239,130,190,247,125,239,3,190,247,
+  3,125,239,8,190,247,155,125,239,190,247,125,239,190,247,243,156,73,74,243,
+  156,125,239,125,239,190,247,190,247,125,239,73,74,138,82,125,239,190,247,125,
+  239,190,247,190,247,125,239,251,222,8,66,203,90,190,247,142,115,138,82,56,
+  198,5,190,247,3,125,239,136,56,198,73,74,207,123,125,239,207,123,8,66,
+  117,173,125,239,4,190,247,129,125,239,8,190,247,136,125,239,125,239,190,247,
+  125,239,125,239,190,247,125,239,190,247,10,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,188,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,10,125,239,135,190,247,125,239,190,247,190,247,125,
+  239,190,247,190,247,12,125,239,141,190,247,113,140,73,74,52,165,125,239,190,
+  247,125,239,125,239,60,231,138,82,73,74,60,231,190,247,3,125,239,136,190,
+  247,121,206,8,66,77,107,190,247,48,132,73,74,243,156,3,125,239,141,190,
+  247,125,239,190,247,125,239,190,247,56,198,73,74,142,115,190,247,178,148,73,
+  74,52,165,190,247,13,125,239,131,190,247,125,239,125,239,3,190,247,12,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,197,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,12,125,239,133,190,
+  247,125,239,190,247,125,239,125,239,10,190,247,136,125,239,125,239,190,247,142,
+  115,73,74,56,198,190,247,125,239,3,190,247,145,77,107,73,74,121,206,125,
+  239,190,247,125,239,190,247,125,239,56,198,138,82,207,123,125,239,52,165,73,
+  74,178,148,190,247,190,247,5,125,239,141,190,247,56,198,73,74,77,107,190,
+  247,52,165,73,74,178,148,255,255,190,247,190,247,125,239,125,239,10,190,247,
+  135,125,239,60,231,190,247,190,247,125,239,125,239,190,247,10,125,239,132,190,
+  247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,199,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,
+  125,239,190,247,190,247,8,73,74,129,243,156,10,125,239,135,190,247,125,239,
+  190,247,125,239,190,247,125,239,190,247,11,125,239,156,190,247,125,239,142,115,
+  73,74,56,198,125,239,190,247,125,239,190,247,125,239,142,115,73,74,52,165,
+  56,198,121,206,56,198,121,206,247,189,52,165,138,82,77,107,125,239,247,189,
+  8,66,142,115,56,198,247,189,121,206,3,56,198,140,121,206,56,198,52,165,
+  138,82,142,115,190,247,182,181,73,74,48,132,125,239,125,239,190,247,12,125,
+  239,134,190,247,125,239,190,247,125,239,125,239,190,247,11,125,239,132,190,247,
+  125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,191,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,8,73,74,129,243,156,10,125,239,135,190,247,125,239,190,
+  247,125,239,125,239,190,247,190,247,9,243,156,135,178,148,52,165,52,165,243,
+  156,203,90,73,74,121,206,3,125,239,133,190,247,125,239,113,140,8,66,138,
+  82,3,73,74,140,138,82,73,74,138,82,8,66,142,115,190,247,251,222,73,
+  74,199,57,203,90,73,74,138,82,3,73,74,137,138,82,73,74,73,74,8,
+  66,142,115,190,247,56,198,73,74,12,99,17,243,156,133,251,222,190,247,125,
+  239,125,239,190,247,10,125,239,132,190,247,125,239,125,239,243,156,8,73,74,
+  11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,193,0,9,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,
+  243,156,12,125,239,134,190,247,125,239,125,239,190,247,60,231,138,82,9,73,
+  74,129,138,82,3,73,74,152,138,82,186,214,190,247,125,239,125,239,190,247,
+  125,239,182,181,207,123,142,115,77,107,207,123,142,115,142,115,77,107,142,115,
+  207,123,243,156,60,231,60,231,113,140,142,115,142,115,77,107,3,142,115,129,
+  207,123,3,142,115,135,207,123,243,156,60,231,121,206,73,74,73,74,138,82,
+  13,73,74,132,138,82,73,74,138,82,247,189,3,125,239,129,190,247,10,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,171,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,10,125,239,130,190,
+  247,190,247,4,125,239,129,255,255,14,243,156,139,178,148,255,255,125,239,190,
+  247,125,239,125,239,190,247,190,247,125,239,125,239,190,247,3,125,239,129,190,
+  247,3,125,239,136,190,247,190,247,60,231,125,239,125,239,190,247,125,239,190,
+  247,3,125,239,129,190,247,3,125,239,130,255,255,60,231,3,243,156,129,52,
+  165,15,243,156,130,251,222,190,247,13,125,239,132,190,247,125,239,125,239,243,
+  156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,85,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,
+  6,73,74,131,8,66,73,74,243,156,98,125,239,134,190,247,125,239,125,239,
+  190,247,125,239,243,156,8,73,74,11,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,92,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,4,73,74,135,73,66,8,66,8,66,138,82,243,156,125,
+  239,190,247,97,125,239,3,190,247,132,60,231,243,156,73,74,8,66,6,73,
+  74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,91,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,4,73,74,
+  135,73,66,73,74,138,74,8,66,73,66,138,74,8,66,99,73,74,133,8,
+  66,138,82,73,74,8,66,138,82,6,73,74,11,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  65,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,
+  190,247,125,239,190,247,190,247,4,73,74,129,73,66,116,73,74,11,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,65,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,12,125,239,132,190,247,125,239,190,247,190,247,107,73,74,129,8,66,13,
+  73,74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,59,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,121,73,
+  74,11,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,77,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,4,73,74,
+  135,73,66,73,74,73,66,73,66,73,74,73,66,8,66,110,73,74,11,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,71,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,12,125,239,132,190,247,125,239,190,247,190,247,4,73,74,129,8,66,
+  103,73,74,129,138,82,12,73,74,11,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,82,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,48,73,74,129,8,66,21,73,74,129,8,66,45,73,74,
+  129,8,66,3,73,74,130,8,66,190,247,10,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,86,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,135,190,
+  247,125,239,125,239,60,231,138,82,8,66,8,66,41,73,74,131,8,66,73,
+  74,138,82,23,73,74,130,138,82,138,82,48,73,74,129,138,82,11,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,122,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,11,125,239,136,190,247,190,247,125,239,190,247,190,247,52,165,243,156,52,
+  165,34,243,156,130,52,165,52,165,8,243,156,132,178,148,113,140,73,74,138,
+  82,18,73,74,139,8,66,48,132,243,156,178,148,243,156,243,156,52,165,243,
+  156,243,156,52,165,52,165,37,243,156,132,52,165,243,156,243,156,178,148,11,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,134,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,11,125,239,136,190,247,190,247,125,239,190,247,255,255,60,231,125,
+  239,190,247,32,125,239,132,190,247,190,247,125,239,125,239,3,190,247,137,125,
+  239,125,239,190,247,125,239,125,239,190,247,121,206,73,74,8,66,19,73,74,
+  134,56,198,190,247,190,247,125,239,190,247,190,247,6,125,239,129,190,247,34,
+  125,239,129,190,247,3,125,239,130,255,255,190,247,9,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,115,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,11,125,239,
+  129,190,247,4,125,239,3,190,247,33,125,239,136,190,247,190,247,125,239,125,
+  239,190,247,190,247,125,239,125,239,3,190,247,130,125,239,56,198,20,73,74,
+  130,138,82,56,198,5,125,239,3,190,247,132,125,239,125,239,190,247,190,247,
+  36,125,239,130,190,247,190,247,11,125,239,140,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,122,0,9,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,16,125,239,131,190,247,125,239,
+  125,239,32,190,247,130,125,239,190,247,6,125,239,135,190,247,125,239,251,222,
+  56,198,52,165,48,132,8,66,19,73,74,135,8,66,77,107,207,123,178,148,
+  117,173,247,189,60,231,4,125,239,131,190,247,190,247,125,239,35,190,247,133,
+  125,239,125,239,190,247,125,239,190,247,9,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,125,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,11,125,239,136,190,247,
+  125,239,190,247,125,239,125,239,190,247,125,239,190,247,34,125,239,3,190,247,
+  133,60,231,56,198,52,165,142,115,203,90,3,73,74,129,138,82,18,73,74,
+  129,8,66,3,73,74,129,8,66,4,73,74,133,12,99,113,140,182,181,186,
+  214,60,231,36,125,239,129,190,247,4,125,239,129,190,247,9,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,102,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,13,
+  125,239,134,190,247,125,239,190,247,125,239,125,239,190,247,32,125,239,133,190,
+  247,125,239,121,206,178,148,12,99,8,73,74,129,8,66,31,73,74,131,203,
+  90,113,140,182,181,35,125,239,132,190,247,125,239,125,239,190,247,10,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,107,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,35,125,239,6,190,247,129,125,239,3,190,247,138,125,239,125,239,190,247,
+  190,247,251,222,247,189,207,123,203,90,73,66,73,66,45,73,74,131,77,107,
+  117,165,251,214,3,125,239,129,190,247,3,125,239,133,190,247,190,247,125,239,
+  125,239,190,247,33,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,118,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,36,125,239,146,190,247,125,239,190,247,125,239,
+  125,239,190,247,125,239,125,239,190,247,125,239,251,222,182,181,48,132,138,82,
+  199,57,138,82,73,74,73,66,3,73,74,129,73,66,43,73,74,136,73,66,
+  73,74,142,115,182,173,251,222,190,239,125,239,190,247,3,125,239,130,190,247,
+  190,247,34,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,110,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,38,125,239,143,190,247,125,239,190,247,255,255,60,231,
+  125,239,247,189,48,132,203,90,73,74,8,66,73,74,138,82,8,66,73,66,
+  3,73,74,130,8,66,73,66,47,73,74,138,12,99,207,123,186,214,125,239,
+  190,247,255,255,125,239,125,239,190,247,190,247,33,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  102,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,140,
+  190,247,125,239,125,239,190,247,190,247,255,255,186,214,117,173,12,99,138,82,
+  8,66,8,66,52,73,74,141,8,66,73,74,73,74,73,66,8,66,73,74,
+  73,74,138,74,8,66,142,115,52,165,125,239,190,247,36,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,84,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,
+  239,129,190,247,4,125,239,132,60,231,207,123,73,74,8,66,60,73,74,137,
+  138,82,73,74,8,66,73,74,73,74,203,90,56,198,125,239,190,247,35,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,93,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,37,125,239,4,190,247,129,142,115,8,73,74,130,8,66,73,66,48,
+  73,74,129,73,66,3,73,74,139,8,66,8,66,138,82,138,82,8,66,8,
+  66,56,198,190,247,190,247,125,239,190,247,33,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,98,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,130,190,
+  247,190,247,4,125,239,129,77,107,14,73,74,129,73,66,42,73,74,140,73,
+  66,73,74,73,74,73,66,73,66,73,74,73,74,8,66,8,66,73,74,73,
+  74,121,206,3,125,239,129,190,247,33,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,90,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,135,190,247,190,
+  247,125,239,190,247,125,239,190,247,142,115,10,73,74,130,73,66,73,66,3,
+  73,74,129,73,66,50,73,74,133,138,82,73,74,56,198,125,239,190,247,35,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,68,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,36,125,239,134,190,247,190,247,125,239,190,247,125,239,142,115,68,
+  73,74,133,56,198,190,247,125,239,190,247,190,247,36,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,60,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,40,125,239,131,60,231,142,115,138,
+  82,66,73,74,132,138,82,247,189,125,239,190,247,38,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,70,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,35,125,239,131,190,247,125,239,125,
+  239,3,190,247,129,182,181,65,243,156,134,52,165,52,165,243,156,251,222,190,
+  247,190,247,38,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,68,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,35,125,239,134,190,247,190,247,125,239,190,247,125,239,255,255,68,125,239,
+  130,60,231,190,247,3,125,239,129,190,247,36,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,64,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,38,125,239,133,190,247,125,239,125,239,190,
+  247,190,247,65,125,239,3,190,247,3,125,239,129,190,247,36,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,69,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,132,190,247,125,
+  239,190,247,190,247,4,125,239,64,190,247,134,125,239,190,247,190,247,125,239,
+  190,247,190,247,38,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,65,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,35,125,239,132,190,247,125,239,190,247,125,239,4,190,247,64,125,239,
+  129,190,247,3,125,239,3,190,247,37,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,58,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,37,125,239,129,190,247,71,125,239,133,190,247,125,
+  239,190,247,125,239,190,247,37,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,65,0,9,60,231,135,251,222,251,222,12,
+  99,121,206,190,247,125,239,190,247,127,125,239,10,125,239,133,190,247,125,239,
+  125,239,190,247,125,239,4,190,247,140,125,239,190,247,121,206,77,107,138,82,
+  207,123,243,156,247,189,121,206,251,222,251,222,60,231,59,0,9,60,231,136,
+  251,222,121,206,142,115,186,214,125,239,190,247,60,231,190,247,127,125,239,10,
+  125,239,3,190,247,5,125,239,140,190,247,251,222,121,206,12,99,203,90,142,
+  115,178,148,182,181,121,206,251,222,251,222,60,231,55,0,10,60,231,133,186,
+  214,77,107,117,173,125,239,190,247,127,125,239,12,125,239,132,190,247,190,247,
+  125,239,125,239,6,190,247,138,52,165,12,99,203,90,77,107,178,148,182,181,
+  121,206,251,222,251,222,60,231,65,0,9,60,231,135,186,214,251,222,178,148,
+  142,115,60,231,125,239,190,247,127,125,239,10,125,239,132,190,247,190,247,125,
+  239,125,239,4,190,247,141,125,239,190,247,125,239,207,123,203,90,203,90,142,
+  115,178,148,182,181,121,206,251,222,251,222,60,231,55,0,9,60,231,134,251,
+  222,121,206,247,189,12,99,182,181,190,247,127,125,239,14,125,239,129,190,247,
+  5,125,239,140,190,247,117,173,77,107,138,82,203,90,207,123,243,156,182,181,
+  121,206,251,222,251,222,60,231,67,0,10,60,231,135,121,206,56,198,48,132,
+  142,115,121,206,190,247,255,255,127,125,239,9,125,239,134,190,247,125,239,190,
+  247,190,247,125,239,125,239,3,190,247,140,56,198,207,123,138,82,203,90,12,
+  99,48,132,52,165,247,189,186,214,251,222,251,222,60,231,69,0,9,60,231,
+  135,251,222,251,222,121,206,117,173,77,107,207,123,56,198,127,125,239,10,125,
+  239,149,190,247,125,239,190,247,190,247,125,239,190,247,190,247,60,231,121,206,
+  207,123,12,99,8,66,12,99,142,115,113,140,182,181,56,198,186,214,251,222,
+  60,231,60,231,66,0,10,60,231,135,251,222,121,206,247,189,52,165,12,99,
+  142,115,182,181,127,125,239,9,125,239,146,190,247,125,239,190,247,190,247,125,
+  239,190,247,60,231,247,189,142,115,138,82,73,74,12,99,12,99,48,132,243,
+  156,247,189,121,206,251,222,3,60,231,74,0,10,60,231,141,251,222,186,214,
+  121,206,182,181,243,156,207,123,12,99,207,123,52,165,56,198,186,214,125,239,
+  190,247,127,125,239,5,125,239,144,60,231,186,214,56,198,52,165,207,123,12,
+  99,138,82,138,82,203,90,77,107,48,132,243,156,182,181,56,198,251,222,251,
+  222,3,60,231,72,0,11,60,231,136,251,222,186,214,56,198,117,173,178,148,
+  207,123,12,99,77,107,3,12,99,131,77,107,12,99,77,107,127,12,99,4,
+  12,99,143,77,107,77,107,12,99,203,90,138,82,203,90,203,90,77,107,207,
+  123,178,148,117,173,56,198,186,214,251,222,251,222,3,60,231,68,0,12,60,
+  231,139,251,222,186,214,56,198,117,173,243,156,113,140,207,123,77,107,12,99,
+  12,99,203,90,127,12,99,5,12,99,143,203,90,203,90,12,99,12,99,203,
+  90,203,90,77,107,142,115,48,132,243,156,117,173,56,198,186,214,251,222,251,
+  222,4,60,231,53,0,12,60,231,135,251,222,251,222,121,206,247,189,182,181,
+  52,165,113,140,3,48,132,127,207,123,10,207,123,138,48,132,48,132,113,140,
+  178,148,52,165,182,181,56,198,186,214,251,222,251,222,5,60,231,54,0,13,
+  60,231,136,251,222,251,222,121,206,56,198,56,198,182,181,117,173,117,173,127,
+  52,165,5,52,165,130,243,156,243,156,6,52,165,135,117,173,182,181,247,189,
+  121,206,186,214,251,222,251,222,6,60,231,56,0,15,60,231,133,251,222,186,
+  214,121,206,56,198,56,198,3,247,189,130,56,198,56,198,127,247,189,3,247,
+  189,139,56,198,56,198,247,189,247,189,56,198,247,189,56,198,121,206,186,214,
+  186,214,251,222,8,60,231,27,0,16,60,231,4,251,222,127,186,214,12,186,
+  214,131,251,222,186,214,186,214,4,251,222,8,60,231,31,0,16,60,231,130,
+  251,222,60,231,3,251,222,129,60,231,127,251,222,13,251,222,3,60,231,129,
+  251,222,8,60,231,8,0,127,60,231,47,60,231
+};
+const GuiConst_INT8U GuiBitmap_4[18789] =
+{
+  174,0,168,0,14,0,127,60,231,36,60,231,129,251,222,10,60,231,8,0,
+  127,60,231,47,60,231,0,0,16,0,127,60,231,33,60,231,130,251,222,251,
+  222,12,60,231,14,0,14,60,231,127,251,222,21,251,222,12,60,231,28,0,
+  17,60,231,3,251,222,127,186,214,14,186,214,133,251,222,251,222,186,214,251,
+  222,251,222,8,60,231,41,0,15,60,231,132,251,222,56,198,243,156,207,123,
+  127,12,99,11,12,99,135,77,107,142,115,113,140,117,173,56,198,121,206,121,
+  206,3,251,222,7,60,231,74,0,14,60,231,141,251,222,178,148,77,107,48,
+  132,52,165,121,206,186,214,60,231,190,247,190,247,125,239,190,247,190,247,127,
+  125,239,141,125,239,125,239,121,206,121,206,52,165,207,123,77,107,48,132,247,
+  189,247,189,121,206,186,214,251,222,3,60,231,132,251,222,125,239,60,231,60,
+  231,68,0,13,60,231,138,247,189,48,132,142,115,117,173,60,231,190,247,190,
+  247,60,231,125,239,190,247,3,125,239,129,190,247,127,125,239,4,125,239,141,
+  190,247,60,231,182,181,142,115,12,99,52,165,182,181,56,198,121,206,251,222,
+  251,222,60,231,251,222,3,60,231,64,0,9,60,231,135,251,222,60,231,60,
+  231,251,222,48,132,142,115,56,198,3,190,247,131,125,239,190,247,190,247,127,
+  125,239,7,125,239,130,190,247,125,239,3,190,247,136,56,198,142,115,142,115,
+  178,148,182,181,247,189,121,206,251,222,5,60,231,69,0,9,60,231,135,251,
+  222,60,231,251,222,178,148,142,115,56,198,255,255,4,125,239,131,190,247,125,
+  239,125,239,3,190,247,127,125,239,4,125,239,141,190,247,125,239,60,231,190,
+  247,255,255,121,206,142,115,142,115,178,148,117,173,56,198,186,214,251,222,4,
+  60,231,77,0,9,60,231,139,251,222,60,231,56,198,77,107,117,173,190,247,
+  125,239,125,239,190,247,125,239,190,247,3,125,239,133,190,247,190,247,125,239,
+  125,239,190,247,127,125,239,133,125,239,190,247,190,247,125,239,255,255,3,125,
+  239,135,182,181,12,99,207,123,178,148,182,181,121,206,186,214,4,60,231,77,
+  0,9,60,231,136,251,222,251,222,243,156,48,132,60,231,190,247,125,239,190,
+  247,3,125,239,132,190,247,125,239,125,239,190,247,3,125,239,129,190,247,127,
+  125,239,134,125,239,125,239,60,231,125,239,190,247,190,247,3,125,239,135,207,
+  123,77,107,48,132,52,165,247,189,121,206,251,222,3,60,231,73,0,9,60,
+  231,134,251,222,251,222,207,123,52,165,190,247,190,247,3,125,239,132,255,255,
+  125,239,190,247,190,247,5,125,239,129,190,247,127,125,239,129,125,239,3,190,
+  247,140,125,239,125,239,190,247,125,239,190,247,52,165,12,99,142,115,178,148,
+  182,181,56,198,186,214,3,60,231,60,0,9,60,231,136,251,222,251,222,12,
+  99,121,206,190,247,125,239,125,239,190,247,7,125,239,4,190,247,127,125,239,
+  4,125,239,130,190,247,190,247,3,125,239,135,121,206,77,107,77,107,113,140,
+  117,173,56,198,186,214,3,60,231,124,0,9,60,231,138,251,222,186,214,12,
+  99,186,214,60,231,190,247,190,247,125,239,190,247,190,247,25,125,239,143,188,
+  247,125,239,127,247,189,239,189,239,126,239,126,239,189,239,126,239,190,247,188,
+  239,188,247,189,247,126,247,191,247,9,125,239,136,124,255,189,247,125,231,254,
+  247,123,239,189,255,125,247,126,247,24,125,239,136,189,247,190,247,61,239,127,
+  247,126,239,191,247,125,247,188,247,56,125,239,138,186,214,12,99,77,107,48,
+  132,52,165,56,198,186,214,251,222,60,231,60,231,124,0,9,60,231,134,251,
+  222,186,214,12,99,60,231,125,239,190,247,3,125,239,129,190,247,25,125,239,
+  144,189,247,190,247,126,247,124,231,189,239,190,239,126,247,188,247,127,239,126,
+  239,125,247,189,247,125,247,126,247,126,247,189,247,8,125,239,136,190,255,126,
+  239,191,239,125,223,254,255,125,247,126,239,127,247,24,125,239,136,60,239,190,
+  247,189,247,190,247,125,239,125,239,189,247,190,255,56,125,239,138,60,231,77,
+  107,12,99,207,123,52,165,56,198,186,214,251,222,60,231,60,231,112,0,9,
+  60,231,133,251,222,186,214,12,99,190,247,190,247,30,125,239,143,124,239,125,
+  239,126,239,189,239,190,239,61,231,125,239,188,247,126,247,126,247,189,247,190,
+  247,61,231,191,247,126,247,9,125,239,136,126,239,61,223,127,231,61,223,189,
+  247,124,239,127,247,63,231,24,125,239,136,190,239,190,239,124,239,189,239,189,
+  247,189,247,190,247,125,231,57,125,239,137,77,107,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,113,0,9,60,231,134,251,222,186,214,12,
+  99,190,247,125,239,125,239,3,190,247,26,125,239,143,189,247,126,239,125,239,
+  189,239,189,239,126,239,254,255,122,239,188,255,251,255,121,231,254,255,61,239,
+  191,247,190,247,9,125,239,136,190,247,126,231,126,231,188,239,246,214,246,222,
+  122,231,190,247,26,125,239,134,190,247,126,247,126,239,125,239,190,239,190,247,
+  57,125,239,137,77,107,203,90,207,123,52,165,56,198,186,214,251,222,60,231,
+  60,231,120,0,9,60,231,131,251,222,186,214,12,99,3,125,239,133,190,247,
+  190,247,125,239,125,239,190,247,25,125,239,143,126,247,190,247,189,239,125,239,
+  126,247,123,239,107,132,195,90,2,91,69,99,122,239,190,247,125,239,189,239,
+  126,247,9,125,239,135,190,247,188,239,47,165,2,99,192,90,133,107,54,223,
+  24,125,239,136,190,247,125,231,127,247,127,247,127,255,191,247,126,239,189,239,
+  57,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,121,0,9,60,231,135,251,222,186,214,12,99,190,247,125,239,125,239,
+  190,247,3,125,239,129,190,247,24,125,239,144,190,247,190,247,190,239,189,239,
+  125,239,191,255,252,255,41,124,65,107,64,99,1,83,251,247,191,247,125,239,
+  189,247,126,247,8,125,239,136,189,255,190,255,123,247,196,90,64,107,128,115,
+  128,82,175,181,25,125,239,135,125,247,125,247,189,255,59,239,125,247,189,247,
+  189,239,56,125,239,135,190,247,77,107,12,99,207,123,52,165,247,189,186,214,
+  3,60,231,120,0,9,60,231,133,251,222,186,214,12,99,190,247,190,247,5,
+  125,239,129,190,247,24,125,239,144,126,239,125,239,125,239,254,247,126,247,62,
+  239,188,255,41,132,0,107,128,107,1,91,188,247,126,239,189,247,189,247,126,
+  247,9,125,239,135,190,247,188,247,6,107,0,99,64,107,4,99,178,181,24,
+  125,239,136,61,231,254,255,246,222,114,206,236,156,113,173,59,231,191,247,56,
+  125,239,138,190,247,77,107,12,99,207,123,243,156,247,189,186,214,251,222,60,
+  231,60,231,116,0,9,60,231,131,251,222,186,214,12,99,4,125,239,4,190,
+  247,24,125,239,144,126,239,190,239,125,239,189,239,126,247,62,247,252,255,40,
+  124,1,115,0,107,2,91,189,255,63,239,189,247,123,239,126,247,8,125,239,
+  136,190,239,126,231,190,239,246,222,233,156,38,132,177,189,189,247,24,125,239,
+  136,191,255,58,231,69,99,0,91,0,91,109,173,253,255,126,239,57,125,239,
+  137,12,99,203,90,207,123,52,165,56,198,186,214,251,222,60,231,60,231,214,
+  0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,247,125,
+  247,126,247,189,239,126,239,189,247,104,132,64,99,64,99,0,99,190,255,189,
+  239,63,231,253,239,63,247,189,239,188,239,127,239,127,247,189,247,125,247,127,
+  247,125,239,127,231,125,231,189,247,190,247,126,247,127,247,191,247,125,239,125,
+  239,254,247,124,231,125,231,190,239,127,239,126,247,126,247,125,239,126,247,127,
+  247,127,247,190,247,189,247,189,247,189,239,127,231,190,231,124,231,190,247,125,
+  239,189,247,125,231,127,239,126,231,188,247,193,90,0,99,67,107,109,173,190,
+  255,62,231,127,239,125,231,125,231,190,239,125,231,191,247,126,247,61,247,190,
+  247,253,230,127,255,62,239,252,239,188,231,63,239,127,255,63,247,125,239,124,
+  231,127,231,127,231,191,247,124,239,189,255,33,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,214,0,9,60,231,131,251,
+  222,186,214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,
+  239,189,247,104,132,1,99,65,107,65,99,126,255,188,239,191,247,120,223,188,
+  255,187,239,189,247,124,247,189,255,54,206,118,206,122,239,188,247,191,247,60,
+  231,124,239,188,247,251,247,252,255,58,231,253,247,190,247,60,231,190,247,190,
+  247,123,239,246,214,177,181,110,165,178,181,182,214,123,239,190,255,125,239,125,
+  239,126,247,126,247,189,247,252,255,116,206,112,181,111,173,46,165,180,206,188,
+  247,254,255,122,239,132,115,193,98,3,107,45,173,124,247,253,255,124,239,190,
+  247,125,239,189,239,253,247,56,231,177,181,112,181,110,157,245,214,124,255,190,
+  255,188,239,60,231,191,255,124,247,253,255,188,247,254,255,125,239,58,231,182,
+  206,249,230,126,255,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,212,0,9,60,231,131,251,222,186,214,12,99,32,
+  125,239,136,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,3,
+  1,99,205,62,255,253,255,124,239,68,99,195,90,71,107,251,255,176,181,69,
+  107,195,90,67,99,1,91,45,173,123,239,190,255,189,247,112,173,195,82,193,
+  74,69,99,187,247,124,239,190,255,191,255,248,222,236,148,192,82,64,99,64,
+  99,2,91,2,91,44,157,186,247,189,247,62,239,191,255,125,239,245,230,69,
+  115,66,107,1,99,1,99,0,99,66,107,198,123,39,124,133,107,64,99,64,
+  107,0,99,65,107,3,99,193,82,113,157,188,239,255,255,249,222,46,165,67,
+  99,1,91,65,99,128,91,64,99,70,115,183,222,123,239,127,239,61,239,111,
+  165,192,82,3,99,179,214,49,198,130,99,192,74,195,82,188,255,33,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,212,
+  0,9,60,231,131,251,222,186,214,12,99,32,125,239,177,126,239,189,247,125,
+  247,126,247,189,239,126,239,189,247,104,132,65,99,1,99,1,91,62,255,189,
+  255,188,255,0,91,0,107,0,99,234,164,66,107,0,99,0,91,128,107,64,
+  99,65,107,50,190,124,247,124,247,111,173,65,99,64,99,193,82,188,247,189,
+  247,190,247,58,239,42,132,192,90,64,99,64,99,192,90,64,99,0,99,65,
+  107,45,165,253,255,126,239,125,239,58,231,68,123,3,0,99,164,65,107,0,
+  91,0,99,168,148,103,132,193,90,64,99,0,107,1,99,0,99,1,91,64,
+  99,48,157,252,255,59,239,173,156,66,107,128,74,64,99,65,99,0,83,64,
+  91,65,107,134,123,121,239,126,247,190,247,174,165,129,107,0,91,105,156,195,
+  106,64,107,64,99,105,132,125,255,33,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,214,0,9,60,231,131,251,222,186,
+  214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,
+  247,104,132,64,99,64,107,64,99,127,255,124,247,124,247,0,99,64,115,64,
+  107,64,107,193,90,67,107,129,107,0,99,65,115,0,107,105,132,125,247,125,
+  247,175,173,1,99,128,107,193,90,126,255,190,247,59,239,46,165,67,107,0,
+  99,64,107,170,148,177,189,66,107,64,99,0,99,3,107,57,231,190,255,252,
+  255,173,148,0,99,64,99,64,99,3,99,39,124,104,132,4,91,50,198,102,
+  132,66,99,0,91,64,107,64,99,64,99,65,99,64,91,114,165,187,247,179,
+  197,194,98,0,107,128,107,67,107,42,140,70,107,0,99,64,107,192,90,172,
+  148,190,255,60,239,175,165,0,99,64,107,0,107,2,107,194,98,3,99,201,
+  123,253,255,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,214,0,9,60,231,131,251,222,186,214,12,99,32,125,239,
+  216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,64,107,64,
+  107,0,91,126,255,125,239,124,247,65,99,0,107,0,99,1,99,241,197,187,
+  255,244,222,68,107,195,98,64,107,131,107,189,255,125,247,111,165,193,98,64,
+  107,2,91,127,255,126,239,252,255,68,99,192,90,129,115,43,165,188,255,62,
+  239,114,206,65,107,64,115,1,99,243,189,124,239,251,255,2,91,65,107,0,
+  91,194,82,246,222,253,255,187,247,122,231,124,239,249,230,53,206,68,107,194,
+  98,3,107,171,156,118,222,117,214,186,214,253,255,106,148,1,107,64,107,66,
+  107,51,206,125,247,123,247,69,107,0,107,0,99,132,107,122,239,255,255,111,
+  165,65,115,128,107,64,107,197,123,241,197,180,214,117,198,187,239,33,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,214,
+  0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,247,125,
+  247,126,247,189,239,126,239,189,247,104,132,64,107,64,107,64,99,191,255,190,
+  239,125,239,66,99,0,107,66,107,236,156,124,247,126,255,124,247,237,156,3,
+  99,0,91,0,91,189,255,189,247,111,173,194,106,0,107,1,91,125,239,126,
+  239,182,206,66,99,0,99,1,107,116,214,60,239,127,239,188,255,3,99,0,
+  99,0,99,178,181,124,239,180,214,65,99,192,90,66,107,44,157,123,239,126,
+  239,190,239,125,239,126,239,126,247,187,247,65,91,0,99,1,99,109,173,189,
+  255,190,247,190,239,187,247,130,90,65,115,0,107,198,115,252,255,127,239,126,
+  247,46,165,0,99,128,107,0,91,247,222,124,239,112,173,192,98,65,107,128,
+  82,247,222,190,255,126,239,126,239,127,239,33,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,214,0,9,60,231,131,251,
+  222,186,214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,
+  239,189,247,104,132,1,107,0,107,64,91,126,247,190,239,125,239,1,91,0,
+  107,0,91,111,173,254,255,126,239,126,247,111,165,64,91,128,107,1,91,124,
+  247,189,239,110,165,3,107,64,107,64,91,188,247,127,239,242,181,1,91,64,
+  107,3,99,187,255,190,239,191,223,126,247,196,98,64,107,0,99,47,165,189,
+  247,242,189,0,99,64,107,1,99,241,189,190,255,127,247,126,239,189,239,126,
+  239,63,231,253,247,0,83,64,99,64,99,173,173,126,247,63,231,126,239,247,
+  222,194,90,64,107,1,107,235,156,187,239,190,231,190,239,49,190,66,107,64,
+  99,64,91,112,173,188,255,112,173,64,107,0,91,68,99,186,239,190,239,125,
+  231,190,239,126,239,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,214,0,9,60,231,131,251,222,186,214,12,99,32,
+  125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,1,
+  107,0,99,64,99,126,255,189,239,125,239,1,91,0,107,64,107,112,173,125,
+  239,126,239,189,247,111,181,0,99,1,99,64,99,126,239,125,247,111,173,64,
+  91,64,107,1,107,189,247,124,223,112,165,2,99,0,99,64,107,0,99,64,
+  107,64,107,64,115,0,107,128,115,0,91,175,173,187,247,47,165,2,99,64,
+  107,193,90,246,214,60,239,191,247,190,247,60,239,127,247,124,223,189,247,65,
+  99,0,107,64,107,47,181,189,255,190,239,126,247,118,214,1,91,128,107,192,
+  90,111,181,190,255,188,239,126,239,245,222,193,98,0,107,1,99,48,173,189,
+  255,111,165,64,107,1,99,64,91,125,247,126,239,125,239,189,247,126,247,33,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,214,0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,
+  247,125,247,126,247,189,239,126,239,189,247,104,132,1,107,0,99,64,99,126,
+  255,189,239,125,239,1,91,0,107,64,107,112,173,125,239,126,239,189,247,111,
+  181,0,99,1,99,64,99,126,239,125,247,111,173,64,91,64,107,1,107,189,
+  247,254,239,47,157,193,90,129,115,1,99,67,99,194,90,1,99,194,98,3,
+  107,193,98,4,99,116,198,253,255,112,173,1,99,64,107,2,99,116,206,190,
+  247,126,239,124,231,254,255,126,247,190,239,125,247,1,91,0,107,64,107,111,
+  181,125,247,125,231,125,247,118,214,64,91,64,99,1,99,112,181,62,247,190,
+  239,126,239,116,206,2,107,65,115,66,107,47,173,124,247,112,173,64,107,1,
+  99,64,91,125,247,126,239,125,239,189,247,126,247,33,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,214,0,9,60,231,
+  131,251,222,186,214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,
+  239,126,239,189,247,104,132,1,107,0,99,64,99,126,255,189,239,125,239,1,
+  91,0,107,64,107,112,173,125,239,126,239,189,247,111,181,0,99,1,99,64,
+  99,126,239,125,247,111,173,64,91,64,107,1,107,189,247,189,247,111,173,1,
+  107,64,107,1,91,179,214,182,214,118,206,118,214,117,214,116,206,182,206,124,
+  239,125,247,111,173,0,99,64,107,1,99,115,206,190,247,126,239,189,239,124,
+  231,125,239,126,239,126,247,66,99,65,107,0,99,46,173,125,239,190,231,189,
+  247,119,214,1,99,64,99,65,107,110,173,62,239,191,239,127,247,116,214,1,
+  99,0,99,64,99,112,173,189,255,48,165,64,107,1,99,64,91,125,247,126,
+  239,125,239,189,247,126,247,33,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,214,0,9,60,231,131,251,222,186,214,12,
+  99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,
+  132,1,107,0,99,64,99,126,255,189,239,125,239,1,91,0,107,64,107,112,
+  173,125,239,126,239,189,247,111,181,0,99,1,99,64,99,126,239,125,247,111,
+  173,64,91,64,107,1,107,189,247,125,247,112,181,1,107,0,99,2,91,250,
+  247,125,239,63,239,126,239,125,239,189,247,189,247,126,239,126,247,177,181,65,
+  107,0,107,1,99,241,189,190,255,62,239,190,239,125,231,255,247,126,239,190,
+  255,1,91,1,99,64,99,112,173,190,247,126,231,124,239,184,222,1,99,64,
+  107,64,107,235,156,191,255,127,231,62,239,116,214,65,107,64,107,0,91,177,
+  181,189,255,48,165,64,107,1,99,64,91,125,247,126,239,125,239,189,247,126,
+  247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,214,0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,126,
+  239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,1,107,0,99,64,
+  99,126,255,189,239,125,239,1,91,0,107,64,107,112,173,125,239,126,239,189,
+  247,111,181,0,99,1,99,64,99,126,239,125,247,111,173,64,91,64,107,1,
+  107,189,247,125,247,182,222,2,107,0,99,2,91,181,206,125,239,63,247,61,
+  231,255,255,125,239,125,231,126,239,127,247,117,206,1,99,64,107,0,99,40,
+  132,124,247,191,255,126,239,255,255,252,222,189,247,253,255,0,83,1,99,65,
+  107,46,165,189,247,190,239,188,247,123,247,3,107,0,99,0,99,197,123,124,
+  247,190,247,189,255,45,165,192,90,128,107,0,91,182,214,125,255,112,173,64,
+  107,1,99,64,91,125,247,126,239,125,239,189,247,126,247,33,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,214,0,9,
+  60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,247,125,247,126,
+  247,189,239,126,239,189,247,104,132,1,107,0,99,64,99,126,255,189,239,125,
+  239,1,91,0,107,64,107,112,173,125,239,126,239,189,247,111,181,0,99,1,
+  99,64,99,126,239,125,247,111,173,64,91,64,107,1,107,189,247,126,239,187,
+  255,69,115,192,98,1,91,235,148,121,239,190,255,253,255,122,239,117,206,188,
+  247,255,247,62,231,58,239,2,99,0,99,64,99,2,99,242,197,188,255,188,
+  255,58,231,123,239,188,247,188,247,1,91,192,90,64,99,105,140,247,222,186,
+  247,121,231,254,255,41,132,2,99,64,107,66,107,116,214,185,247,56,239,197,
+  123,1,99,0,99,68,99,187,247,126,247,48,165,64,107,1,99,64,91,125,
+  247,126,239,125,239,189,247,126,247,33,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,214,0,9,60,231,131,251,222,186,
+  214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,
+  247,104,132,1,107,0,99,64,99,126,255,189,239,125,239,1,91,0,107,64,
+  107,112,173,125,239,126,239,189,247,111,181,0,99,1,99,64,99,126,239,125,
+  247,111,173,64,91,64,107,1,107,189,247,127,231,124,247,237,164,66,107,0,
+  99,192,74,39,132,237,164,109,173,199,123,4,99,240,181,189,239,61,231,189,
+  255,171,148,1,99,64,99,64,99,2,99,40,132,40,132,4,99,45,165,188,
+  239,124,247,38,124,2,107,64,107,194,98,4,99,193,90,178,173,125,247,243,
+  189,69,107,0,91,192,82,68,115,104,148,134,115,128,74,65,107,193,90,236,
+  148,124,247,125,247,111,165,64,107,1,99,64,91,125,247,126,239,125,239,189,
+  247,126,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,214,0,9,60,231,131,251,222,186,214,12,99,32,125,239,
+  216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,1,107,0,
+  99,64,99,126,255,189,239,125,239,1,91,0,107,64,107,112,173,125,239,126,
+  239,189,247,111,181,0,99,1,99,64,99,126,239,125,247,111,173,64,91,64,
+  107,1,107,189,247,127,223,254,255,119,247,67,107,64,99,128,99,0,99,66,
+  107,1,107,1,107,192,98,104,132,251,247,191,239,125,247,246,222,67,107,64,
+  99,128,107,64,99,0,99,64,99,0,91,100,132,126,247,126,255,235,156,2,
+  99,64,107,65,115,1,107,64,99,46,149,125,239,252,255,41,124,1,91,192,
+  107,192,98,65,115,0,83,128,107,65,107,4,107,185,247,190,247,126,255,111,
+  165,64,107,1,99,64,91,125,247,126,239,125,239,189,247,126,247,33,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,214,
+  0,9,60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,190,247,126,
+  239,126,239,125,239,253,247,122,231,45,124,64,99,2,91,132,82,188,247,188,
+  247,185,247,3,91,192,90,3,91,111,173,123,239,255,255,125,239,113,165,4,
+  91,0,91,66,99,123,239,190,247,112,173,194,106,64,115,1,99,251,255,191,
+  247,125,239,188,247,182,214,41,124,194,82,2,99,65,99,65,99,193,90,136,
+  123,244,197,189,247,190,255,125,239,125,231,181,214,134,115,1,99,64,107,64,
+  115,1,99,2,91,236,148,126,239,189,247,57,231,106,132,129,74,2,99,66,
+  99,66,107,51,157,124,239,188,247,56,231,107,140,194,82,0,91,64,99,1,
+  91,3,91,108,140,248,222,124,247,189,255,188,247,50,157,0,91,66,99,4,
+  91,186,247,188,247,189,239,125,231,190,239,33,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,212,0,9,60,231,131,251,
+  222,186,214,12,99,33,125,239,215,190,247,126,239,190,247,125,239,189,239,254,
+  255,122,231,187,255,253,255,60,239,191,247,63,239,191,255,59,239,253,255,122,
+  255,189,255,190,247,62,231,126,239,189,247,122,247,251,255,186,247,191,247,124,
+  239,110,173,1,107,64,107,3,99,190,239,125,239,125,239,189,247,252,255,186,
+  247,181,214,176,181,45,165,241,189,245,222,187,255,189,255,125,247,125,239,190,
+  247,190,247,255,255,249,222,116,206,111,181,46,173,50,198,247,222,252,247,127,
+  247,126,239,254,255,122,239,246,222,246,222,246,230,186,255,60,231,191,255,125,
+  247,255,255,123,247,247,222,50,198,110,173,176,181,181,214,122,239,254,255,190,
+  247,124,239,254,255,188,247,187,255,188,255,250,230,255,255,125,239,126,239,190,
+  239,188,239,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,212,0,9,60,231,131,251,222,186,214,12,99,33,125,239,
+  215,189,239,125,239,190,247,190,247,60,231,189,239,253,247,126,239,126,239,191,
+  239,61,223,191,239,127,231,127,239,63,239,126,255,62,247,126,239,126,239,190,
+  239,190,247,125,247,125,255,127,247,191,247,187,239,41,132,65,107,64,99,193,
+  74,127,231,190,247,190,247,125,239,124,239,190,255,125,247,60,239,190,255,124,
+  239,189,247,191,255,126,247,126,239,126,239,125,239,124,239,62,223,127,239,190,
+  247,125,247,124,239,125,239,191,247,126,231,127,247,125,239,190,247,254,255,189,
+  255,125,239,61,239,127,255,190,247,190,247,61,231,191,255,127,247,190,255,125,
+  247,124,247,124,239,190,255,125,247,125,239,126,247,125,239,125,239,189,239,126,
+  247,127,247,127,247,62,239,62,239,126,239,190,247,189,247,33,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,208,0,9,
+  60,231,131,251,222,186,214,12,99,32,125,239,160,189,247,189,247,125,239,125,
+  239,190,247,190,247,125,239,125,239,189,247,125,239,124,231,189,231,189,231,190,
+  239,126,239,126,239,190,247,126,239,190,239,189,239,188,231,125,239,125,239,125,
+  247,191,255,118,198,241,181,131,98,193,106,128,107,37,116,124,231,3,125,247,
+  154,126,247,126,247,126,239,126,239,127,239,191,247,126,239,62,231,127,247,191,
+  247,190,247,190,247,253,247,191,239,190,239,61,231,191,247,191,247,126,239,190,
+  239,190,231,189,247,189,247,124,239,124,239,125,239,3,126,239,139,188,247,124,
+  247,124,239,190,247,61,239,126,239,125,239,255,247,191,247,126,247,126,247,3,
+  190,247,138,190,239,125,231,189,239,125,231,190,247,126,239,191,247,125,239,125,
+  239,189,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,203,0,9,60,231,131,251,222,186,214,12,99,33,125,239,
+  164,189,239,189,247,125,239,125,239,190,247,190,247,126,239,124,239,190,247,190,
+  247,191,247,61,231,126,247,125,247,125,247,188,239,189,239,189,239,190,239,190,
+  239,189,239,189,247,188,239,123,247,104,124,66,107,193,98,65,123,0,99,43,
+  157,189,239,190,255,125,247,125,239,126,247,125,239,3,190,239,143,125,231,190,
+  239,190,239,126,239,125,239,125,239,125,247,189,247,124,239,189,239,190,247,125,
+  239,125,239,125,247,189,239,3,189,247,134,124,239,189,247,189,247,189,239,190,
+  239,190,239,3,189,247,146,190,247,190,247,254,247,125,231,189,231,125,239,124,
+  231,190,247,190,247,124,231,125,231,126,239,126,239,188,239,188,239,124,231,124,
+  231,125,239,3,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,198,0,9,60,231,131,251,222,186,214,12,99,
+  34,125,239,165,190,247,189,247,125,239,125,239,126,239,126,239,188,247,189,247,
+  126,247,62,247,127,247,126,247,190,255,124,247,124,239,189,239,125,239,126,239,
+  127,239,125,239,125,239,124,239,189,255,104,132,0,91,64,107,128,115,66,115,
+  116,206,126,247,125,239,190,247,125,247,125,239,189,239,125,239,125,239,4,189,
+  239,141,125,239,189,239,190,247,190,247,125,239,124,247,189,247,255,255,125,247,
+  125,247,190,255,125,247,189,247,3,126,247,129,190,247,3,126,239,151,190,239,
+  126,239,126,247,126,247,126,239,125,231,125,239,125,239,190,239,253,247,189,239,
+  188,239,188,239,189,239,189,239,125,239,126,239,126,239,190,239,125,231,191,247,
+  125,239,189,239,35,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,209,0,9,60,231,131,251,222,186,214,12,99,32,125,
+  239,192,191,247,190,247,125,239,189,239,189,247,189,239,190,247,190,247,253,247,
+  189,247,125,239,125,239,189,247,124,239,188,239,189,247,125,239,190,247,126,239,
+  126,247,126,239,61,239,191,247,191,247,126,247,106,132,194,90,194,90,132,107,
+  176,181,255,255,61,239,190,247,190,247,125,239,125,239,190,247,189,247,124,239,
+  124,239,190,247,125,239,125,239,190,247,190,247,125,239,125,239,190,239,189,247,
+  125,247,126,247,125,239,126,247,190,247,125,239,125,247,126,239,190,247,190,247,
+  126,239,125,239,126,247,126,247,125,247,3,126,247,3,190,247,146,126,247,125,
+  247,189,239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,127,247,61,
+  239,126,239,191,255,126,247,125,239,125,239,190,247,33,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,208,0,9,60,231,
+  131,251,222,186,214,12,99,32,125,239,172,126,239,191,247,125,239,125,239,189,
+  247,125,239,125,239,126,239,62,231,191,247,125,231,190,247,125,239,190,239,126,
+  231,127,239,126,239,125,239,124,239,189,247,188,247,189,247,191,247,62,239,125,
+  239,121,231,182,214,117,206,185,239,255,255,255,230,254,247,125,239,125,239,190,
+  247,190,247,125,247,125,247,126,247,190,247,62,247,126,247,126,247,190,247,4,
+  126,239,152,124,239,189,247,189,239,125,239,190,239,125,239,190,247,190,247,189,
+  239,124,239,189,239,189,247,190,247,126,247,125,247,190,255,189,239,189,239,124,
+  239,189,247,189,247,125,247,189,247,125,247,3,126,239,141,127,247,126,247,125,
+  247,190,247,189,247,188,247,250,230,189,247,124,239,189,247,126,247,126,247,62,
+  239,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,75,0,9,60,231,131,251,222,186,214,12,99,105,125,239,132,190,
+  247,125,239,125,239,255,255,3,125,239,136,186,214,203,90,48,132,125,239,190,
+  247,190,247,125,239,125,239,3,190,247,129,125,239,3,190,247,26,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,70,0,
+  9,60,231,131,251,222,186,214,12,99,106,125,239,138,190,247,190,247,60,231,
+  255,255,125,239,186,214,203,90,8,66,138,82,178,148,3,125,239,129,190,247,
+  7,125,239,129,190,247,25,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,86,0,9,60,231,131,251,222,186,214,12,99,
+  104,125,239,152,190,247,125,239,190,247,125,239,190,247,125,239,186,214,138,82,
+  73,74,178,148,12,99,199,57,113,140,190,247,60,231,125,239,190,247,125,239,
+  125,239,190,247,190,247,125,239,125,239,190,247,25,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,82,0,9,60,231,131,
+  251,222,186,214,12,99,105,125,239,146,190,247,60,231,125,239,190,247,186,214,
+  138,82,138,82,117,173,190,247,56,198,203,90,138,82,48,132,190,247,125,239,
+  190,247,125,239,125,239,3,190,247,130,125,239,190,247,25,125,239,137,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,82,0,9,60,
+  231,131,251,222,186,214,12,99,104,125,239,150,190,247,125,239,190,247,190,247,
+  60,231,203,90,73,74,113,140,190,247,190,247,125,239,121,206,203,90,73,74,
+  113,140,125,239,190,247,190,247,125,239,125,239,190,247,190,247,27,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,82,0,
+  9,60,231,131,251,222,186,214,12,99,104,125,239,147,190,247,190,247,125,239,
+  190,247,190,247,121,206,203,90,8,66,117,173,190,247,190,247,60,231,186,214,
+  203,90,73,74,113,140,60,231,190,247,190,247,4,125,239,129,190,247,25,125,
+  239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  80,0,9,60,231,131,251,222,186,214,12,99,105,125,239,137,190,247,190,247,
+  125,239,125,239,190,247,121,206,138,82,73,74,182,181,3,190,247,135,121,206,
+  203,90,8,66,243,156,186,214,190,247,190,247,3,125,239,129,190,247,25,125,
+  239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  82,0,9,60,231,131,251,222,186,214,12,99,104,125,239,130,190,247,190,247,
+  3,125,239,142,190,247,125,239,186,214,203,90,8,66,182,181,190,247,60,231,
+  190,247,186,214,203,90,199,57,243,156,60,231,3,190,247,130,125,239,190,247,
+  25,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,111,0,9,60,231,131,251,222,186,214,12,99,81,125,239,4,190,247,
+  138,125,239,125,239,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,
+  247,9,125,239,132,190,247,190,247,125,239,125,239,3,190,247,145,60,231,77,
+  107,73,74,73,74,117,173,255,255,190,247,125,239,186,214,203,90,8,66,113,
+  140,125,239,125,239,190,247,125,239,190,247,25,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,112,0,9,60,231,131,251,
+  222,186,214,12,99,80,125,239,129,190,247,5,125,239,137,190,247,125,239,190,
+  247,125,239,255,255,125,239,125,239,190,247,190,247,9,125,239,151,190,247,125,
+  239,125,239,255,255,125,239,125,239,60,231,77,107,73,74,77,107,12,99,73,
+  74,117,173,60,231,190,247,125,239,121,206,77,107,73,74,48,132,190,247,125,
+  239,190,247,26,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,116,0,9,60,231,131,251,222,186,214,12,99,81,125,239,
+  143,190,247,125,239,190,247,190,247,125,239,125,239,190,247,60,231,117,173,251,
+  222,125,239,190,247,125,239,125,239,190,247,10,125,239,150,255,255,125,239,125,
+  239,60,231,77,107,73,74,77,107,60,231,121,206,203,90,138,82,56,198,125,
+  239,125,239,190,247,121,206,138,82,73,74,113,140,125,239,125,239,190,247,25,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,118,0,9,60,231,131,251,222,186,214,12,99,81,125,239,143,190,247,125,
+  239,190,247,125,239,125,239,190,247,60,231,178,148,8,66,77,107,60,231,60,
+  231,255,255,125,239,190,247,9,125,239,151,255,255,125,239,60,231,125,239,12,
+  99,73,74,142,115,60,231,60,231,190,247,121,206,12,99,8,66,182,181,190,
+  247,190,247,125,239,121,206,138,82,73,74,178,148,125,239,190,247,25,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,116,
+  0,9,60,231,131,251,222,186,214,12,99,80,125,239,143,190,247,125,239,190,
+  247,125,239,60,231,255,255,60,231,178,148,73,74,138,82,138,82,12,99,125,
+  239,125,239,255,255,9,125,239,129,190,247,3,125,239,147,12,99,73,74,77,
+  107,251,222,125,239,190,247,125,239,190,247,186,214,138,82,73,74,117,173,125,
+  239,190,247,190,247,121,206,138,82,8,66,178,148,26,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,120,0,9,60,231,
+  131,251,222,186,214,12,99,81,125,239,143,190,247,125,239,125,239,255,255,60,
+  231,113,140,8,66,142,115,125,239,207,123,138,82,77,107,60,231,125,239,190,
+  247,8,125,239,152,190,247,125,239,60,231,12,99,73,74,77,107,125,239,190,
+  247,125,239,190,247,125,239,190,247,125,239,56,198,138,82,73,74,182,181,125,
+  239,125,239,190,247,121,206,203,90,73,74,113,140,25,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,120,0,9,60,231,
+  131,251,222,186,214,12,99,81,125,239,143,190,247,125,239,190,247,125,239,178,
+  148,73,74,142,115,251,222,190,247,190,247,48,132,138,82,142,115,125,239,60,
+  231,8,125,239,152,190,247,60,231,77,107,73,74,77,107,125,239,190,247,60,
+  231,190,247,60,231,190,247,125,239,125,239,178,148,199,57,138,82,73,74,182,
+  181,125,239,190,247,121,206,203,90,73,74,113,140,25,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,116,0,9,60,231,
+  131,251,222,186,214,12,99,80,125,239,144,190,247,60,231,255,255,125,239,243,
+  156,8,66,203,90,60,231,190,247,125,239,190,247,125,239,48,132,73,74,77,
+  107,60,231,8,125,239,136,60,231,77,107,73,74,142,115,251,222,190,247,60,
+  231,190,247,4,125,239,139,113,140,73,74,138,82,182,181,203,90,73,74,182,
+  181,121,206,12,99,8,66,113,140,26,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,130,0,9,60,231,131,251,222,186,
+  214,12,99,80,125,239,146,190,247,125,239,190,247,125,239,182,181,73,74,8,
+  66,182,181,190,247,125,239,125,239,255,255,125,239,113,140,8,66,77,107,60,
+  231,190,247,4,125,239,154,190,247,60,231,77,107,8,66,77,107,125,239,125,
+  239,190,247,125,239,190,247,125,239,190,247,125,239,113,140,73,74,203,90,121,
+  206,190,247,121,206,203,90,73,74,138,82,73,74,113,140,190,247,190,247,25,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,124,0,9,60,231,131,251,222,186,214,12,99,81,125,239,129,190,247,3,
+  125,239,168,117,173,138,82,73,74,182,181,190,247,125,239,60,231,190,247,190,
+  247,113,140,138,82,77,107,251,222,190,247,190,247,255,255,190,247,251,222,142,
+  115,8,66,48,132,251,222,125,239,125,239,190,247,190,247,125,239,190,247,190,
+  247,48,132,8,66,12,99,121,206,190,247,190,247,125,239,121,206,203,90,73,
+  74,113,140,28,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,128,0,9,60,231,131,251,222,186,214,12,99,80,125,239,
+  138,190,247,125,239,190,247,125,239,190,247,190,247,117,173,73,74,73,74,117,
+  173,3,190,247,143,125,239,125,239,113,140,138,82,77,107,125,239,125,239,60,
+  231,60,231,142,115,73,74,77,107,251,222,125,239,255,255,3,125,239,144,190,
+  247,125,239,48,132,203,90,73,74,186,214,190,247,190,247,125,239,190,247,190,
+  247,121,206,178,148,125,239,190,247,190,247,26,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,130,0,9,60,231,131,251,
+  222,186,214,12,99,80,125,239,157,190,247,125,239,190,247,190,247,60,231,255,
+  255,125,239,182,181,73,74,73,74,117,173,190,247,125,239,125,239,190,247,190,
+  247,48,132,138,82,12,99,125,239,60,231,12,99,138,82,12,99,125,239,125,
+  239,255,255,125,239,190,247,3,125,239,132,113,140,8,66,73,74,251,222,3,
+  125,239,137,190,247,125,239,190,247,60,231,255,255,60,231,190,247,60,231,190,
+  247,25,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,128,0,9,60,231,131,251,222,186,214,12,99,81,125,239,151,190,
+  247,125,239,125,239,190,247,190,247,125,239,125,239,182,181,73,74,73,74,117,
+  173,190,247,125,239,60,231,125,239,255,255,113,140,73,74,12,99,142,115,73,
+  74,77,107,60,231,3,125,239,129,190,247,3,125,239,145,113,140,73,74,12,
+  99,186,214,125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,247,125,
+  239,190,247,125,239,190,247,190,247,25,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,120,0,9,60,231,131,251,222,186,
+  214,12,99,81,125,239,153,190,247,125,239,125,239,190,247,190,247,125,239,190,
+  247,182,181,8,66,138,82,73,74,182,181,190,247,190,247,125,239,125,239,60,
+  231,113,140,138,82,199,57,77,107,60,231,125,239,190,247,190,247,4,125,239,
+  134,113,140,73,74,203,90,121,206,190,247,125,239,3,190,247,134,125,239,125,
+  239,190,247,190,247,125,239,190,247,28,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,128,0,9,60,231,131,251,222,186,
+  214,12,99,80,125,239,142,190,247,125,239,190,247,190,247,60,231,190,247,125,
+  239,182,181,8,66,138,82,77,107,73,74,73,74,117,173,3,125,239,137,190,
+  247,60,231,178,148,8,66,207,123,251,222,125,239,125,239,190,247,3,125,239,
+  146,113,140,8,66,138,82,121,206,190,247,190,247,125,239,190,247,190,247,251,
+  222,255,255,190,247,125,239,125,239,190,247,125,239,190,247,190,247,26,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,122,
+  0,9,60,231,131,251,222,186,214,12,99,81,125,239,167,190,247,190,247,125,
+  239,190,247,190,247,182,181,73,74,138,82,117,173,190,247,48,132,73,74,138,
+  82,117,173,190,247,125,239,60,231,255,255,60,231,178,148,73,74,77,107,125,
+  239,190,247,125,239,190,247,125,239,113,140,73,74,138,82,186,214,190,247,190,
+  247,125,239,190,247,125,239,125,239,255,255,60,231,4,125,239,129,190,247,28,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,118,0,9,60,231,131,251,222,186,214,12,99,72,125,239,168,190,247,125,
+  239,190,247,125,239,125,239,190,247,125,239,190,247,60,231,190,247,125,239,125,
+  239,190,247,117,173,73,74,73,74,117,173,190,247,125,239,125,239,113,140,8,
+  66,73,74,182,181,190,247,190,247,125,239,190,247,125,239,113,140,73,74,12,
+  99,60,231,190,247,125,239,113,140,8,66,138,82,121,206,190,247,41,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,112,
+  0,9,60,231,131,251,222,186,214,12,99,74,125,239,152,190,247,125,239,125,
+  239,190,247,125,239,125,239,190,247,60,231,125,239,125,239,117,173,138,82,138,
+  82,117,173,125,239,125,239,190,247,125,239,190,247,178,148,73,74,73,74,182,
+  181,125,239,3,190,247,139,125,239,113,140,73,74,77,107,60,231,113,140,199,
+  57,203,90,251,222,125,239,190,247,41,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,107,0,9,60,231,131,251,222,186,
+  214,12,99,72,125,239,3,190,247,131,125,239,125,239,190,247,4,125,239,133,
+  190,247,182,181,138,82,73,74,52,165,3,190,247,149,125,239,190,247,125,239,
+  125,239,113,140,73,74,138,82,117,173,190,247,60,231,190,247,255,255,125,239,
+  113,140,73,74,138,82,73,74,203,90,186,214,251,222,190,247,42,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,106,0,
+  9,60,231,131,251,222,186,214,12,99,76,125,239,138,190,247,190,247,125,239,
+  190,247,125,239,125,239,182,181,73,74,73,74,117,173,4,125,239,150,190,247,
+  125,239,190,247,190,247,60,231,113,140,8,66,138,82,182,181,125,239,60,231,
+  190,247,190,247,125,239,113,140,73,74,73,74,56,198,125,239,255,255,190,247,
+  190,247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,102,0,9,60,231,131,251,222,186,214,12,99,75,125,239,129,
+  190,247,3,125,239,135,190,247,190,247,117,173,138,82,73,74,117,173,190,247,
+  3,125,239,148,190,247,190,247,125,239,190,247,125,239,255,255,125,239,113,140,
+  73,74,8,66,247,189,125,239,60,231,190,247,190,247,60,231,113,140,73,74,
+  142,115,60,231,44,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,111,0,9,60,231,131,251,222,186,214,12,99,72,125,
+  239,4,190,247,163,125,239,125,239,190,247,125,239,117,173,138,82,73,74,117,
+  173,190,247,190,247,125,239,190,247,125,239,190,247,60,231,178,148,251,222,125,
+  239,190,247,190,247,125,239,113,140,73,74,8,66,182,181,190,247,190,247,125,
+  239,125,239,190,247,48,132,73,74,12,99,60,231,190,247,42,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,106,0,9,
+  60,231,131,251,222,186,214,12,99,77,125,239,134,190,247,125,239,182,181,73,
+  74,138,82,52,165,3,125,239,154,190,247,125,239,190,247,190,247,243,156,73,
+  74,77,107,60,231,190,247,125,239,190,247,125,239,113,140,73,74,138,82,117,
+  173,125,239,190,247,125,239,190,247,255,255,207,123,138,82,12,99,251,222,190,
+  247,41,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,118,0,9,60,231,131,251,222,186,214,12,99,72,125,239,168,190,
+  247,125,239,125,239,190,247,190,247,125,239,182,181,73,74,73,74,117,173,190,
+  247,125,239,125,239,190,247,125,239,190,247,125,239,190,247,190,247,113,140,73,
+  74,77,107,60,231,190,247,125,239,190,247,125,239,113,140,8,66,138,82,182,
+  181,190,247,125,239,125,239,190,247,125,239,113,140,73,74,142,115,60,231,41,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,146,0,9,60,231,131,251,222,186,214,12,99,64,125,239,151,190,247,125,
+  239,190,247,125,239,125,239,190,247,125,239,190,247,60,231,190,247,125,239,125,
+  239,190,247,117,173,73,74,73,74,182,181,125,239,125,239,60,231,190,247,125,
+  239,190,247,3,125,239,144,255,255,125,239,178,148,8,66,142,115,251,222,190,
+  247,190,247,60,231,125,239,113,140,73,74,138,82,182,181,125,239,190,247,3,
+  125,239,139,113,140,73,74,77,107,60,231,125,239,190,247,125,239,125,239,190,
+  247,125,239,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,142,0,9,60,231,131,251,222,186,214,12,99,66,
+  125,239,143,190,247,125,239,125,239,190,247,125,239,125,239,190,247,60,231,125,
+  239,125,239,117,173,138,82,138,82,117,173,125,239,3,190,247,163,125,239,190,
+  247,60,231,190,247,190,247,125,239,60,231,125,239,125,239,178,148,73,74,142,
+  115,251,222,255,255,190,247,125,239,125,239,113,140,73,74,138,82,182,181,125,
+  239,255,255,190,247,125,239,60,231,113,140,73,74,77,107,251,222,255,255,190,
+  247,125,239,125,239,190,247,34,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,141,0,9,60,231,131,251,222,186,214,12,
+  99,64,125,239,3,190,247,131,125,239,125,239,190,247,4,125,239,153,190,247,
+  182,181,138,82,73,74,52,165,190,247,190,247,125,239,60,231,190,247,190,247,
+  186,214,142,115,182,181,125,239,190,247,190,247,125,239,255,255,60,231,178,148,
+  8,66,142,115,251,222,255,255,3,190,247,146,178,148,8,66,138,82,117,173,
+  125,239,125,239,190,247,125,239,125,239,113,140,73,74,142,115,251,222,190,247,
+  190,247,125,239,125,239,190,247,33,125,239,137,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,140,0,9,60,231,131,251,222,186,214,
+  12,99,68,125,239,138,190,247,190,247,125,239,190,247,125,239,125,239,182,181,
+  73,74,73,74,117,173,3,125,239,167,255,255,190,247,125,239,190,247,251,222,
+  203,90,73,74,182,181,60,231,190,247,125,239,125,239,255,255,125,239,178,148,
+  73,74,77,107,60,231,125,239,125,239,190,247,60,231,178,148,8,66,138,82,
+  182,181,125,239,125,239,190,247,125,239,125,239,178,148,73,74,12,99,60,231,
+  190,247,125,239,190,247,190,247,33,125,239,137,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,138,0,9,60,231,131,251,222,186,214,
+  12,99,67,125,239,129,190,247,3,125,239,149,190,247,190,247,117,173,138,82,
+  73,74,117,173,190,247,125,239,125,239,190,247,60,231,190,247,125,239,125,239,
+  190,247,121,206,203,90,73,74,182,181,125,239,190,247,4,125,239,152,113,140,
+  203,90,121,206,190,247,125,239,125,239,255,255,60,231,113,140,8,66,138,82,
+  182,181,125,239,190,247,125,239,190,247,60,231,48,132,138,82,77,107,60,231,
+  125,239,190,247,60,231,33,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,143,0,9,60,231,131,251,222,186,214,12,99,
+  64,125,239,4,190,247,141,125,239,125,239,190,247,125,239,117,173,138,82,73,
+  74,117,173,190,247,190,247,125,239,190,247,125,239,3,190,247,164,125,239,125,
+  239,255,255,121,206,203,90,73,74,117,173,125,239,190,247,190,247,60,231,255,
+  255,125,239,186,214,190,247,190,247,125,239,190,247,125,239,190,247,121,206,138,
+  82,73,74,73,74,117,173,190,247,190,247,125,239,190,247,190,247,48,132,8,
+  66,77,107,190,247,60,231,190,247,33,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,138,0,9,60,231,131,251,222,186,
+  214,12,99,69,125,239,134,190,247,125,239,182,181,73,74,138,82,52,165,3,
+  125,239,170,190,247,125,239,190,247,125,239,251,222,125,239,190,247,125,239,125,
+  239,190,247,186,214,73,74,73,74,182,181,60,231,190,247,125,239,125,239,190,
+  247,125,239,255,255,251,222,255,255,125,239,125,239,186,214,138,82,138,82,12,
+  99,138,82,138,82,117,173,125,239,255,255,60,231,190,247,48,132,203,90,142,
+  115,186,214,255,255,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,146,0,9,60,231,131,251,222,186,214,12,
+  99,64,125,239,150,190,247,125,239,125,239,190,247,190,247,125,239,182,181,73,
+  74,73,74,117,173,190,247,125,239,125,239,190,247,125,239,190,247,190,247,12,
+  99,77,107,125,239,60,231,190,247,3,125,239,158,186,214,203,90,73,74,182,
+  181,125,239,190,247,125,239,125,239,190,247,125,239,190,247,125,239,190,247,121,
+  206,138,82,73,74,48,132,190,247,117,173,73,74,73,74,182,181,125,239,190,
+  247,48,132,138,82,12,99,60,231,190,247,190,247,34,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,160,0,9,60,231,
+  131,251,222,186,214,12,99,56,125,239,159,190,247,125,239,190,247,125,239,125,
+  239,190,247,125,239,190,247,125,239,190,247,125,239,125,239,190,247,182,181,138,
+  82,73,74,182,181,125,239,125,239,190,247,190,247,60,231,190,247,125,239,125,
+  239,117,173,138,82,77,107,60,231,190,247,125,239,3,190,247,132,186,214,203,
+  90,73,74,117,173,3,125,239,150,190,247,125,239,125,239,190,247,121,206,203,
+  90,73,74,178,148,251,222,255,255,125,239,182,181,73,74,8,66,182,181,113,
+  140,8,66,142,115,60,231,190,247,60,231,190,247,34,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,152,0,9,60,231,
+  131,251,222,186,214,12,99,58,125,239,146,190,247,125,239,125,239,190,247,125,
+  239,125,239,190,247,125,239,125,239,190,247,182,181,8,66,73,74,247,189,125,
+  239,190,247,125,239,125,239,3,190,247,136,125,239,125,239,190,247,117,173,138,
+  82,12,99,60,231,190,247,4,125,239,155,121,206,12,99,186,214,255,255,125,
+  239,190,247,125,239,125,239,190,247,121,206,138,82,73,74,113,140,60,231,255,
+  255,190,247,125,239,125,239,117,173,203,90,8,66,8,66,207,123,251,222,125,
+  239,125,239,190,247,35,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,159,0,9,60,231,131,251,222,186,214,12,99,56,
+  125,239,3,190,247,131,125,239,125,239,190,247,3,125,239,182,190,247,125,239,
+  182,181,73,74,138,82,182,181,125,239,190,247,125,239,190,247,60,231,125,239,
+  125,239,251,222,190,247,125,239,190,247,190,247,117,173,73,74,77,107,60,231,
+  190,247,190,247,125,239,125,239,255,255,60,231,190,247,60,231,190,247,125,239,
+  125,239,190,247,186,214,73,74,138,82,48,132,125,239,255,255,190,247,125,239,
+  125,239,255,255,190,247,52,165,73,74,142,115,251,222,255,255,190,247,125,239,
+  125,239,190,247,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,158,0,9,60,231,131,251,222,186,214,12,99,60,125,
+  239,188,190,247,190,247,125,239,190,247,125,239,190,247,117,173,73,74,73,74,
+  117,173,190,247,190,247,125,239,190,247,60,231,255,255,251,222,77,107,142,115,
+  60,231,190,247,60,231,190,247,125,239,182,181,73,74,12,99,60,231,125,239,
+  190,247,255,255,60,231,190,247,125,239,190,247,190,247,125,239,190,247,186,214,
+  203,90,73,74,48,132,190,247,190,247,125,239,125,239,190,247,190,247,125,239,
+  190,247,125,239,247,189,60,231,125,239,190,247,125,239,125,239,190,247,125,239,
+  190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,144,0,9,60,231,131,251,222,186,214,12,99,59,125,239,129,
+  190,247,3,125,239,157,190,247,190,247,52,165,138,82,73,74,182,181,255,255,
+  125,239,251,222,125,239,190,247,125,239,190,247,125,239,113,140,8,66,77,107,
+  60,231,190,247,125,239,255,255,125,239,117,173,138,82,77,107,60,231,125,239,
+  60,231,190,247,4,125,239,139,190,247,121,206,73,74,73,74,48,132,190,247,
+  190,247,125,239,125,239,190,247,190,247,3,125,239,3,190,247,4,125,239,131,
+  190,247,125,239,190,247,33,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,157,0,9,60,231,131,251,222,186,214,12,99,
+  56,125,239,4,190,247,170,125,239,125,239,190,247,125,239,182,181,73,74,73,
+  74,117,173,190,247,60,231,113,140,203,90,251,222,125,239,190,247,60,231,255,
+  255,60,231,113,140,73,74,77,107,60,231,190,247,125,239,190,247,190,247,117,
+  173,138,82,142,115,125,239,255,255,190,247,125,239,190,247,125,239,190,247,121,
+  206,138,82,138,82,48,132,190,247,190,247,3,125,239,142,190,247,125,239,125,
+  239,190,247,125,239,125,239,190,247,60,231,190,247,125,239,190,247,190,247,125,
+  239,255,255,34,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,143,0,9,60,231,131,251,222,186,214,12,99,61,125,239,
+  168,190,247,125,239,182,181,73,74,203,90,52,165,190,247,125,239,178,148,8,
+  66,73,74,138,82,56,198,190,247,255,255,60,231,125,239,125,239,113,140,73,
+  74,12,99,60,231,190,247,60,231,190,247,190,247,117,173,186,214,190,247,190,
+  247,125,239,60,231,125,239,190,247,121,206,203,90,73,74,48,132,190,247,190,
+  247,4,125,239,5,190,247,137,125,239,190,247,190,247,125,239,190,247,125,239,
+  125,239,255,255,60,231,34,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,138,0,9,60,231,131,251,222,186,214,12,99,
+  56,125,239,141,190,247,125,239,125,239,190,247,190,247,125,239,182,181,73,74,
+  73,74,52,165,255,255,125,239,113,140,4,73,74,140,203,90,121,206,190,247,
+  125,239,255,255,125,239,190,247,113,140,73,74,77,107,60,231,190,247,4,125,
+  239,139,190,247,125,239,190,247,190,247,125,239,121,206,203,90,73,74,113,140,
+  125,239,190,247,7,125,239,132,190,247,125,239,125,239,190,247,4,125,239,130,
+  190,247,190,247,36,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,142,0,9,60,231,131,251,222,186,214,12,99,48,125,
+  239,148,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,247,190,247,
+  125,239,190,247,125,239,190,247,182,181,8,66,73,74,117,173,255,255,125,239,
+  113,140,5,73,74,154,8,66,203,90,121,206,190,247,125,239,190,247,125,239,
+  125,239,113,140,8,66,77,107,251,222,190,247,125,239,190,247,125,239,190,247,
+  125,239,125,239,190,247,121,206,203,90,73,74,178,148,60,231,190,247,3,125,
+  239,130,190,247,190,247,49,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,140,0,9,60,231,131,251,222,186,214,12,99,
+  50,125,239,132,190,247,125,239,125,239,190,247,3,125,239,138,255,255,125,239,
+  125,239,182,181,73,74,138,82,182,181,255,255,251,222,178,148,3,73,74,161,
+  8,66,73,74,8,66,138,82,73,74,73,74,186,214,125,239,190,247,190,247,
+  125,239,125,239,113,140,73,74,113,140,125,239,125,239,190,247,190,247,125,239,
+  125,239,190,247,121,206,138,82,73,74,113,140,60,231,255,255,125,239,125,239,
+  190,247,125,239,190,247,50,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,135,0,9,60,231,131,251,222,186,214,12,99,
+  48,125,239,3,190,247,145,125,239,125,239,190,247,125,239,125,239,190,247,125,
+  239,125,239,182,181,73,74,73,74,117,173,190,247,125,239,178,148,73,74,8,
+  66,6,73,74,132,8,66,138,82,138,82,121,206,3,125,239,150,255,255,60,
+  231,178,148,121,206,125,239,125,239,190,247,125,239,125,239,190,247,186,214,73,
+  74,138,82,48,132,125,239,190,247,125,239,60,231,190,247,190,247,125,239,190,
+  247,50,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,132,0,9,60,231,131,251,222,186,214,12,99,52,125,239,147,190,
+  247,190,247,125,239,190,247,125,239,125,239,182,181,73,74,73,74,182,181,125,
+  239,125,239,113,140,73,74,8,66,138,82,73,74,8,66,138,82,5,73,74,
+  150,138,82,138,82,186,214,190,247,125,239,125,239,190,247,190,247,125,239,190,
+  247,125,239,190,247,125,239,190,247,186,214,203,90,73,74,48,132,190,247,190,
+  247,125,239,125,239,3,190,247,130,125,239,190,247,50,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,115,0,9,60,231,
+  131,251,222,186,214,12,99,51,125,239,129,190,247,3,125,239,137,190,247,190,
+  247,182,181,73,74,73,74,117,173,190,247,60,231,178,148,10,73,74,151,138,
+  82,8,66,73,74,138,82,73,74,121,206,190,247,190,247,60,231,125,239,190,
+  247,125,239,190,247,125,239,190,247,121,206,73,74,73,74,48,132,190,247,190,
+  247,125,239,125,239,6,190,247,50,125,239,137,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,125,0,9,60,231,131,251,222,186,214,
+  12,99,48,125,239,4,190,247,140,125,239,125,239,190,247,125,239,182,181,73,
+  74,73,74,182,181,190,247,60,231,178,148,8,66,3,73,74,129,8,66,7,
+  73,74,147,138,82,73,74,8,66,73,74,203,90,121,206,190,247,255,255,60,
+  231,255,255,60,231,190,247,125,239,121,206,138,82,138,82,48,132,190,247,190,
+  247,6,125,239,132,190,247,125,239,125,239,190,247,49,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,121,0,9,60,231,
+  131,251,222,186,214,12,99,53,125,239,137,190,247,125,239,182,181,8,66,138,
+  82,117,173,125,239,60,231,178,148,3,73,74,135,8,66,73,74,138,82,73,
+  74,73,74,138,82,8,66,6,73,74,143,138,82,8,66,203,90,56,198,190,
+  247,190,247,251,222,190,247,190,247,121,206,203,90,73,74,48,132,190,247,190,
+  247,3,125,239,5,190,247,131,125,239,125,239,190,247,49,125,239,137,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,116,0,9,60,
+  231,131,251,222,186,214,12,99,48,125,239,142,190,247,125,239,125,239,190,247,
+  190,247,125,239,182,181,73,74,73,74,182,181,190,247,125,239,178,148,8,66,
+  8,73,74,129,8,66,7,73,74,133,8,66,73,74,8,66,12,99,121,206,
+  3,190,247,134,121,206,138,82,73,74,113,140,125,239,190,247,4,125,239,129,
+  190,247,4,125,239,130,190,247,190,247,50,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,106,0,9,60,231,131,251,222,
+  186,214,12,99,48,125,239,140,190,247,125,239,125,239,190,247,255,255,117,173,
+  73,74,73,74,117,173,255,255,125,239,113,140,15,73,74,144,8,66,73,74,
+  138,82,73,74,73,74,138,82,8,66,77,107,125,239,190,247,121,206,138,82,
+  73,74,178,148,60,231,190,247,3,125,239,130,190,247,190,247,57,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,109,0,
+  9,60,231,131,251,222,186,214,12,99,48,125,239,3,190,247,136,125,239,117,
+  173,73,74,73,74,182,181,255,255,251,222,178,148,3,73,74,129,8,66,11,
+  73,74,149,8,66,138,82,8,66,138,82,199,57,138,82,8,66,12,99,56,
+  198,125,239,121,206,203,90,73,74,113,140,60,231,255,255,125,239,125,239,190,
+  247,125,239,190,247,58,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,110,0,9,60,231,131,251,222,186,214,12,99,48,
+  125,239,140,190,247,60,231,190,247,182,181,73,74,73,74,117,173,190,247,125,
+  239,178,148,73,74,8,66,13,73,74,150,8,66,138,82,8,66,8,66,73,
+  74,138,82,8,66,203,90,121,206,125,239,251,222,73,74,138,82,48,132,125,
+  239,190,247,125,239,60,231,190,247,190,247,125,239,190,247,58,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,110,0,9,
+  60,231,131,251,222,186,214,12,99,49,125,239,142,190,247,182,181,73,74,73,
+  74,182,181,190,247,125,239,113,140,73,74,8,66,138,82,73,74,8,66,138,
+  82,9,73,74,131,8,66,138,82,8,66,4,73,74,139,203,90,56,198,190,
+  247,186,214,203,90,8,66,113,140,60,231,190,247,125,239,125,239,3,190,247,
+  130,125,239,190,247,58,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,91,0,9,60,231,131,251,222,186,214,12,99,49,
+  125,239,135,182,181,73,74,73,74,182,181,190,247,60,231,113,140,17,73,74,
+  144,8,66,8,66,73,74,138,82,73,74,203,90,121,206,255,255,121,206,138,
+  82,73,74,113,140,125,239,190,247,190,247,125,239,6,190,247,58,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,104,0,
+  9,60,231,131,251,222,186,214,12,99,48,125,239,136,186,214,73,74,73,74,
+  182,181,190,247,60,231,178,148,8,66,3,73,74,129,8,66,12,73,74,130,
+  138,82,138,82,3,73,74,138,138,82,186,214,190,247,121,206,203,90,73,74,
+  48,132,190,247,125,239,190,247,5,125,239,132,190,247,125,239,125,239,190,247,
+  57,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,112,0,9,60,231,131,251,222,186,214,12,99,48,125,239,144,121,206,
+  73,74,142,115,125,239,125,239,178,148,8,66,73,74,73,74,8,66,73,74,
+  138,82,73,74,73,74,138,82,8,66,9,73,74,142,199,57,138,82,73,74,
+  203,90,186,214,125,239,121,206,203,90,73,74,48,132,255,255,125,239,255,255,
+  60,231,6,190,247,131,125,239,125,239,190,247,57,125,239,137,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,97,0,9,60,231,131,
+  251,222,186,214,12,99,48,125,239,134,190,247,138,82,73,74,255,255,125,239,
+  203,90,8,73,74,129,8,66,10,73,74,141,138,82,8,66,203,90,121,206,
+  190,247,121,206,203,90,73,74,113,140,190,247,125,239,190,247,125,239,3,190,
+  247,4,125,239,130,190,247,190,247,58,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,94,0,9,60,231,131,251,222,186,
+  214,12,99,48,125,239,134,190,247,207,123,73,74,247,189,125,239,243,156,13,
+  73,74,144,8,66,73,74,138,82,73,74,73,74,138,82,199,57,203,90,121,
+  206,255,255,121,206,203,90,73,74,178,148,60,231,190,247,3,125,239,130,190,
+  247,190,247,65,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,104,0,9,60,231,131,251,222,186,214,12,99,49,125,239,
+  135,182,181,138,82,207,123,255,255,121,206,73,74,138,82,4,73,74,129,8,
+  66,5,73,74,149,8,66,138,82,8,66,138,82,199,57,138,82,199,57,12,
+  99,121,206,190,247,121,206,203,90,73,74,113,140,60,231,255,255,125,239,125,
+  239,190,247,125,239,190,247,66,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,100,0,9,60,231,131,251,222,186,214,12,
+  99,48,125,239,135,190,247,251,222,203,90,73,74,251,222,190,247,113,140,10,
+  73,74,150,8,66,138,82,8,66,8,66,73,74,138,82,8,66,203,90,121,
+  206,190,247,186,214,138,82,138,82,113,140,125,239,190,247,125,239,60,231,190,
+  247,190,247,125,239,190,247,66,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,106,0,9,60,231,131,251,222,186,214,12,
+  99,49,125,239,135,190,247,113,140,73,74,113,140,125,239,251,222,203,90,3,
+  73,74,136,8,66,73,74,138,82,73,74,73,74,8,66,138,82,8,66,4,
+  73,74,139,203,90,121,206,190,247,186,214,8,66,138,82,113,140,125,239,190,
+  247,125,239,125,239,3,190,247,130,125,239,190,247,66,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,91,0,9,60,231,
+  131,251,222,186,214,12,99,49,125,239,135,190,247,121,206,138,82,73,74,121,
+  206,190,247,117,173,9,73,74,144,8,66,8,66,73,74,138,82,73,74,203,
+  90,121,206,255,255,121,206,138,82,138,82,207,123,125,239,190,247,125,239,125,
+  239,6,190,247,66,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,110,0,9,60,231,131,251,222,186,214,12,99,48,125,
+  239,146,255,255,251,222,142,115,73,74,8,66,77,107,125,239,190,247,48,132,
+  138,82,8,66,138,82,73,74,8,66,73,74,73,74,138,82,138,82,3,73,
+  74,138,138,82,186,214,190,247,121,206,203,90,138,82,113,140,125,239,60,231,
+  190,247,5,125,239,132,190,247,125,239,125,239,190,247,65,125,239,137,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,108,0,9,60,
+  231,131,251,222,186,214,12,99,48,125,239,142,60,231,77,107,73,74,77,107,
+  12,99,73,74,113,140,190,247,125,239,178,148,73,74,8,66,73,74,138,82,
+  3,73,74,142,199,57,138,82,73,74,203,90,186,214,125,239,121,206,203,90,
+  73,74,113,140,125,239,190,247,190,247,125,239,6,190,247,131,125,239,125,239,
+  190,247,65,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,108,0,9,60,231,131,251,222,186,214,12,99,48,125,239,141,
+  77,107,138,82,77,107,251,222,251,222,73,74,138,82,117,173,190,247,125,239,
+  243,156,138,82,8,66,4,73,74,144,138,82,8,66,203,90,121,206,190,247,
+  121,206,203,90,73,74,113,140,125,239,190,247,125,239,125,239,190,247,125,239,
+  190,247,4,125,239,130,190,247,190,247,66,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,116,0,9,60,231,131,251,222,
+  186,214,12,99,40,125,239,163,190,247,125,239,190,247,125,239,125,239,190,247,
+  60,231,77,107,73,74,77,107,60,231,190,247,190,247,186,214,73,74,73,74,
+  243,156,125,239,255,255,247,189,77,107,73,74,138,82,73,74,138,82,8,66,
+  12,99,56,198,255,255,121,206,138,82,73,74,178,148,60,231,190,247,3,125,
+  239,130,190,247,190,247,73,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,116,0,9,60,231,131,251,222,186,214,12,99,
+  40,125,239,167,190,247,125,239,125,239,190,247,190,247,125,239,12,99,73,74,
+  142,115,60,231,190,247,60,231,190,247,125,239,182,181,138,82,73,74,113,140,
+  251,222,255,255,251,222,243,156,12,99,73,74,73,74,12,99,121,206,190,247,
+  56,198,203,90,73,74,48,132,60,231,255,255,125,239,125,239,190,247,125,239,
+  190,247,74,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,112,0,9,60,231,131,251,222,186,214,12,99,42,125,239,165,
+  190,247,125,239,125,239,12,99,73,74,77,107,251,222,255,255,125,239,190,247,
+  190,247,60,231,125,239,121,206,138,82,73,74,12,99,56,198,190,247,190,247,
+  125,239,247,189,178,148,186,214,60,231,186,214,138,82,73,74,48,132,255,255,
+  190,247,125,239,60,231,190,247,190,247,125,239,190,247,74,125,239,137,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,109,0,9,60,
+  231,131,251,222,186,214,12,99,40,125,239,158,190,247,190,247,125,239,251,222,
+  77,107,73,74,142,115,251,222,255,255,60,231,190,247,190,247,125,239,190,247,
+  125,239,190,247,60,231,77,107,73,74,73,74,142,115,121,206,125,239,190,247,
+  125,239,190,247,121,206,203,90,73,74,48,132,4,125,239,3,190,247,130,125,
+  239,190,247,74,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,105,0,9,60,231,131,251,222,186,214,12,99,41,125,239,
+  160,190,247,125,239,117,173,73,74,77,107,60,231,190,247,60,231,190,247,190,
+  247,125,239,125,239,190,247,125,239,60,231,117,173,73,74,8,66,77,107,73,
+  74,199,57,77,107,113,140,121,206,121,206,203,90,73,74,207,123,190,247,190,
+  247,125,239,125,239,6,190,247,74,125,239,137,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,112,0,9,60,231,131,251,222,186,214,
+  12,99,41,125,239,159,60,231,255,255,247,189,8,66,48,132,190,247,125,239,
+  190,247,190,247,60,231,190,247,190,247,125,239,125,239,247,189,73,74,73,74,
+  182,181,60,231,117,173,142,115,8,66,73,74,138,82,8,66,73,74,48,132,
+  190,247,125,239,125,239,190,247,4,125,239,132,190,247,125,239,125,239,190,247,
+  73,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,106,0,9,60,231,131,251,222,186,214,12,99,40,125,239,157,190,247,
+  190,247,125,239,125,239,203,90,73,74,121,206,190,247,125,239,125,239,190,247,
+  125,239,125,239,190,247,182,181,73,74,73,74,182,181,125,239,190,247,125,239,
+  125,239,251,222,243,156,207,123,12,99,113,140,255,255,125,239,8,190,247,131,
+  125,239,125,239,190,247,73,125,239,137,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,110,0,9,60,231,131,251,222,186,214,12,99,
+  40,125,239,154,190,247,125,239,190,247,125,239,243,156,138,82,77,107,190,247,
+  190,247,125,239,125,239,190,247,190,247,117,173,73,74,73,74,117,173,190,247,
+  190,247,125,239,190,247,125,239,190,247,190,247,125,239,190,247,3,125,239,132,
+  190,247,125,239,125,239,190,247,4,125,239,130,190,247,190,247,74,125,239,137,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,74,0,
+  9,60,231,131,251,222,186,214,12,99,33,125,239,130,190,247,190,247,4,125,
+  239,131,190,247,125,239,190,247,3,125,239,131,77,107,138,82,207,123,4,125,
+  239,132,182,181,73,74,73,74,182,181,97,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,79,0,9,60,231,131,251,222,
+  186,214,12,99,32,125,239,131,190,247,125,239,125,239,3,190,247,4,125,239,
+  142,190,247,190,247,186,214,138,82,73,74,73,74,203,90,182,181,190,247,182,
+  181,73,74,73,74,117,173,190,247,97,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,78,0,9,60,231,131,251,222,186,
+  214,12,99,32,125,239,132,190,247,125,239,125,239,190,247,5,125,239,142,190,
+  247,190,247,56,198,138,82,73,74,48,132,207,123,73,74,73,74,203,90,73,
+  74,138,82,182,181,190,247,98,125,239,137,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,76,0,9,60,231,131,251,222,186,214,12,
+  99,33,125,239,130,190,247,190,247,3,125,239,143,190,247,190,247,125,239,190,
+  247,121,206,12,99,73,74,113,140,190,247,125,239,56,198,207,123,73,74,138,
+  82,52,165,100,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,82,0,9,60,231,131,251,222,186,214,12,99,33,125,239,
+  132,190,247,125,239,125,239,190,247,3,125,239,144,190,247,121,206,203,90,8,
+  66,113,140,125,239,125,239,190,247,125,239,190,247,125,239,251,222,190,247,255,
+  255,60,231,190,247,97,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,78,0,9,60,231,131,251,222,186,214,12,99,33,
+  125,239,129,190,247,4,125,239,135,190,247,190,247,56,198,12,99,73,74,113,
+  140,125,239,3,190,247,136,125,239,190,247,255,255,125,239,125,239,190,247,125,
+  239,190,247,97,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,78,0,9,60,231,131,251,222,186,214,12,99,35,125,239,
+  148,190,247,125,239,190,247,190,247,121,206,203,90,8,66,113,140,125,239,190,
+  247,125,239,125,239,190,247,190,247,60,231,125,239,190,247,125,239,125,239,190,
+  247,98,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,84,0,9,60,231,131,251,222,186,214,12,99,32,125,239,145,190,
+  247,125,239,125,239,190,247,125,239,190,247,121,206,203,90,73,74,113,140,125,
+  239,190,247,125,239,125,239,190,247,125,239,125,239,3,190,247,132,125,239,125,
+  239,190,247,190,247,97,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,78,0,9,60,231,131,251,222,186,214,12,99,25,
+  125,239,130,190,247,190,247,4,125,239,140,190,247,125,239,190,247,125,239,125,
+  239,190,247,121,206,203,90,73,74,178,148,60,231,190,247,3,125,239,130,190,
+  247,190,247,105,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,82,0,9,60,231,131,251,222,186,214,12,99,24,125,239,
+  131,190,247,125,239,125,239,3,190,247,145,125,239,125,239,190,247,125,239,125,
+  239,190,247,121,206,138,82,73,74,113,140,60,231,255,255,125,239,125,239,190,
+  247,125,239,190,247,106,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,76,0,9,60,231,131,251,222,186,214,12,99,24,
+  125,239,132,190,247,125,239,125,239,190,247,6,125,239,141,190,247,186,214,73,
+  74,138,82,48,132,125,239,190,247,125,239,60,231,190,247,190,247,125,239,190,
+  247,106,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,78,0,9,60,231,131,251,222,186,214,12,99,25,125,239,130,190,
+  247,190,247,3,125,239,140,190,247,190,247,125,239,190,247,186,214,203,90,73,
+  74,48,132,190,247,190,247,125,239,125,239,3,190,247,130,125,239,190,247,106,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,71,0,9,60,231,131,251,222,186,214,12,99,25,125,239,132,190,247,125,
+  239,125,239,190,247,3,125,239,137,190,247,121,206,73,74,73,74,48,132,190,
+  247,190,247,125,239,125,239,6,190,247,106,125,239,137,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,72,0,9,60,231,131,251,222,
+  186,214,12,99,25,125,239,129,190,247,4,125,239,136,190,247,190,247,121,206,
+  138,82,138,82,48,132,190,247,190,247,6,125,239,132,190,247,125,239,125,239,
+  190,247,105,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,71,0,9,60,231,131,251,222,186,214,12,99,27,125,239,138,
+  190,247,125,239,190,247,190,247,121,206,203,90,73,74,48,132,190,247,190,247,
+  3,125,239,5,190,247,131,125,239,125,239,190,247,105,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,76,0,9,60,231,
+  131,251,222,186,214,12,99,24,125,239,140,190,247,125,239,125,239,190,247,125,
+  239,190,247,121,206,203,90,73,74,113,140,125,239,190,247,4,125,239,129,190,
+  247,4,125,239,130,190,247,190,247,106,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,66,0,9,60,231,131,251,222,186,
+  214,12,99,25,125,239,138,190,247,125,239,190,247,190,247,121,206,203,90,73,
+  74,178,148,60,231,190,247,3,125,239,130,190,247,190,247,113,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,66,0,9,
+  60,231,131,251,222,186,214,12,99,26,125,239,141,255,255,60,231,121,206,12,
+  99,8,66,113,140,60,231,255,255,125,239,125,239,190,247,125,239,190,247,113,
+  125,239,138,190,247,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,68,0,9,60,231,131,251,222,186,214,12,99,25,125,239,142,190,
+  247,125,239,186,214,138,82,138,82,48,132,125,239,190,247,125,239,60,231,190,
+  247,190,247,125,239,190,247,113,125,239,138,190,247,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,68,0,9,60,231,131,251,222,186,
+  214,12,99,24,125,239,138,190,247,125,239,186,214,138,82,73,74,48,132,125,
+  239,190,247,125,239,125,239,3,190,247,130,125,239,190,247,113,125,239,138,190,
+  247,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,61,
+  0,9,60,231,131,251,222,186,214,12,99,24,125,239,137,60,231,186,214,203,
+  90,73,74,48,132,190,247,60,231,125,239,125,239,6,190,247,113,125,239,138,
+  190,247,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  64,0,9,60,231,131,251,222,186,214,12,99,24,125,239,135,186,214,73,74,
+  73,74,113,140,190,247,190,247,255,255,5,125,239,132,190,247,125,239,125,239,
+  190,247,113,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,64,0,9,60,231,131,251,222,186,214,12,99,24,125,239,136,
+  186,214,203,90,48,132,190,247,60,231,125,239,190,247,125,239,5,190,247,131,
+  125,239,125,239,190,247,113,125,239,137,12,99,203,90,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,62,0,9,60,231,131,251,222,186,214,12,99,
+  25,125,239,136,251,222,190,247,125,239,190,247,125,239,125,239,190,247,190,247,
+  4,125,239,130,190,247,190,247,114,125,239,137,12,99,203,90,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,69,0,9,60,231,138,251,222,186,214,
+  12,99,121,206,125,239,190,247,125,239,190,247,125,239,190,247,127,125,239,10,
+  125,239,146,60,231,255,255,125,239,125,239,190,247,125,239,125,239,190,247,121,
+  206,77,107,138,82,142,115,178,148,247,189,121,206,251,222,60,231,60,231,69,
+  0,9,60,231,138,251,222,186,214,77,107,121,206,125,239,125,239,190,247,190,
+  247,60,231,190,247,127,125,239,10,125,239,146,255,255,125,239,125,239,190,247,
+  125,239,125,239,190,247,125,239,121,206,77,107,203,90,142,115,178,148,182,181,
+  121,206,251,222,60,231,60,231,59,0,9,60,231,134,251,222,186,214,142,115,
+  52,165,190,247,190,247,3,125,239,129,190,247,127,125,239,13,125,239,130,190,
+  247,190,247,3,125,239,138,52,165,12,99,203,90,142,115,178,148,182,181,121,
+  206,251,222,60,231,60,231,54,0,9,60,231,137,251,222,186,214,113,140,207,
+  123,60,231,190,247,60,231,255,255,190,247,127,125,239,12,125,239,7,190,247,
+  138,207,123,138,82,138,82,142,115,178,148,182,181,121,206,186,214,60,231,60,
+  231,71,0,8,60,231,136,251,222,251,222,186,214,117,173,77,107,182,181,190,
+  247,190,247,3,125,239,129,190,247,127,125,239,9,125,239,146,190,247,125,239,
+  190,247,190,247,60,231,190,247,190,247,247,189,12,99,138,82,12,99,207,123,
+  243,156,247,189,121,206,251,222,60,231,60,231,59,0,8,60,231,3,251,222,
+  136,56,198,48,132,142,115,56,198,255,255,125,239,125,239,190,247,127,125,239,
+  13,125,239,3,190,247,140,56,198,142,115,138,82,138,82,12,99,48,132,52,
+  165,247,189,186,214,251,222,60,231,60,231,56,0,10,60,231,134,251,222,121,
+  206,247,189,12,99,142,115,121,206,127,125,239,14,125,239,142,190,247,125,239,
+  190,247,190,247,56,198,48,132,203,90,73,74,203,90,142,115,113,140,182,181,
+  56,198,186,214,3,60,231,73,0,5,60,231,129,251,222,4,60,231,137,186,
+  214,121,206,247,189,52,165,77,107,142,115,182,181,125,239,190,247,127,125,239,
+  10,125,239,146,190,247,125,239,125,239,190,247,247,189,142,115,203,90,73,74,
+  138,82,77,107,48,132,52,165,56,198,121,206,186,214,251,222,60,231,60,231,
+  78,0,10,60,231,144,251,222,251,222,121,206,182,181,178,148,142,115,12,99,
+  207,123,52,165,121,206,186,214,60,231,190,247,125,239,125,239,190,247,127,125,
+  239,3,125,239,143,121,206,56,198,52,165,207,123,12,99,138,82,73,74,138,
+  82,77,107,207,123,243,156,182,181,56,198,186,214,251,222,3,60,231,72,0,
+  10,60,231,142,251,222,251,222,186,214,56,198,182,181,178,148,207,123,77,107,
+  12,99,77,107,12,99,77,107,77,107,12,99,4,77,107,127,12,99,132,12,
+  99,12,99,77,107,12,99,3,138,82,136,203,90,77,107,207,123,178,148,117,
+  173,56,198,186,214,251,222,4,60,231,60,0,11,60,231,141,251,222,251,222,
+  121,206,247,189,117,173,178,148,48,132,142,115,77,107,12,99,12,99,203,90,
+  203,90,127,12,99,9,12,99,137,77,107,77,107,142,115,48,132,243,156,117,
+  173,56,198,186,214,251,222,5,60,231,50,0,13,60,231,136,251,222,121,206,
+  56,198,182,181,52,165,178,148,113,140,48,132,127,207,123,12,207,123,137,48,
+  132,48,132,178,148,243,156,182,181,56,198,186,214,251,222,251,222,5,60,231,
+  43,0,13,60,231,135,251,222,251,222,186,214,121,206,247,189,182,181,117,173,
+  127,52,165,14,52,165,133,117,173,182,181,247,189,56,198,186,214,3,251,222,
+  5,60,231,49,0,15,60,231,131,251,222,186,214,121,206,3,56,198,131,247,
+  189,247,189,56,198,3,247,189,129,56,198,127,247,189,4,247,189,3,56,198,
+  132,121,206,121,206,186,214,251,222,8,60,231,34,0,12,60,231,130,251,222,
+  251,222,3,60,231,132,251,222,186,214,186,214,251,222,127,186,214,16,186,214,
+  129,251,222,9,60,231,28,0,12,60,231,129,125,239,7,60,231,5,251,222,
+  130,60,231,60,231,127,251,222,7,251,222,13,60,231,15,0,131,60,231,60,
+  231,251,222,127,60,231,44,60,231
+};
+const GuiConst_INT8U GuiBitmap_5[21169] =
+{
+  174,0,168,0,21,0,24,60,231,129,251,222,127,60,231,131,60,231,125,239,
+  125,239,19,60,231,8,0,127,60,231,47,60,231,20,0,20,60,231,129,251,
+  222,127,60,231,7,60,231,129,125,239,18,60,231,14,0,127,60,231,27,60,
+  231,3,251,222,17,60,231,37,0,17,60,231,3,251,222,130,60,231,60,231,
+  127,251,222,4,251,222,129,60,231,3,251,222,132,60,231,60,231,251,222,251,
+  222,13,60,231,38,0,15,60,231,132,251,222,251,222,60,231,251,222,127,186,
+  214,12,186,214,135,121,206,186,214,251,222,186,214,186,214,251,222,251,222,9,
+  60,231,55,0,14,60,231,137,251,222,186,214,186,214,178,148,207,123,77,107,
+  12,99,12,99,77,107,127,12,99,5,12,99,3,77,107,137,142,115,178,148,
+  182,181,56,198,121,206,186,214,186,214,251,222,251,222,7,60,231,66,0,10,
+  60,231,142,251,222,60,231,186,214,125,239,251,222,243,156,12,99,207,123,52,
+  165,56,198,186,214,60,231,190,247,190,247,127,125,239,5,125,239,139,186,214,
+  56,198,52,165,48,132,12,99,48,132,182,181,56,198,56,198,251,222,186,214,
+  7,60,231,73,0,9,60,231,142,251,222,125,239,251,222,60,231,121,206,142,
+  115,77,107,182,181,125,239,190,247,190,247,125,239,125,239,190,247,127,125,239,
+  3,125,239,3,190,247,141,125,239,190,247,125,239,251,222,56,198,142,115,77,
+  107,178,148,182,181,56,198,186,214,186,214,251,222,5,60,231,70,0,10,60,
+  231,141,251,222,60,231,251,222,207,123,142,115,56,198,125,239,125,239,190,247,
+  125,239,60,231,125,239,190,247,127,125,239,5,125,239,130,190,247,125,239,3,
+  190,247,138,125,239,56,198,48,132,77,107,178,148,52,165,121,206,121,206,251,
+  222,251,222,4,60,231,55,0,12,60,231,133,113,140,142,115,121,206,255,255,
+  125,239,6,190,247,127,125,239,3,125,239,3,190,247,4,125,239,138,190,247,
+  255,255,56,198,142,115,142,115,113,140,117,173,56,198,186,214,251,222,4,60,
+  231,60,0,9,60,231,135,251,222,60,231,247,189,77,107,182,181,190,247,60,
+  231,127,125,239,10,125,239,129,190,247,4,125,239,129,190,247,3,125,239,137,
+  190,247,182,181,77,107,207,123,178,148,182,181,121,206,186,214,251,222,3,60,
+  231,77,0,10,60,231,138,251,222,178,148,48,132,60,231,190,247,125,239,190,
+  247,190,247,125,239,190,247,3,125,239,130,190,247,190,247,127,125,239,132,125,
+  239,190,247,190,247,125,239,3,190,247,140,125,239,190,247,125,239,190,247,125,
+  239,207,123,77,107,48,132,52,165,247,189,186,214,251,222,3,60,231,74,0,
+  9,60,231,133,251,222,251,222,142,115,243,156,190,247,3,125,239,4,190,247,
+  131,125,239,125,239,190,247,127,125,239,134,125,239,125,239,60,231,125,239,125,
+  239,190,247,3,125,239,139,190,247,190,247,125,239,190,247,243,156,12,99,142,
+  115,178,148,117,173,121,206,251,222,3,60,231,71,0,10,60,231,134,121,206,
+  77,107,121,206,190,247,125,239,190,247,6,125,239,130,190,247,190,247,127,125,
+  239,138,125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,247,125,239,
+  125,239,3,190,247,135,121,206,77,107,12,99,113,140,117,173,56,198,186,214,
+  3,60,231,92,0,10,60,231,134,121,206,12,99,251,222,125,239,125,239,190,
+  247,49,125,239,140,188,239,190,247,61,231,191,247,190,239,188,239,125,231,190,
+  239,189,247,125,239,190,247,126,247,3,126,239,137,190,247,190,247,125,239,189,
+  247,189,247,125,247,190,247,190,247,190,239,75,125,239,138,186,214,12,99,12,
+  99,48,132,52,165,247,189,186,214,251,222,60,231,60,231,85,0,9,60,231,
+  132,251,222,121,206,12,99,60,231,3,190,247,49,125,239,143,189,247,190,247,
+  126,239,190,247,125,231,189,239,125,239,126,239,125,231,125,239,190,239,125,239,
+  190,239,190,247,125,239,3,126,239,3,126,247,76,125,239,140,190,247,125,239,
+  251,222,77,107,12,99,48,132,52,165,247,189,186,214,251,222,60,231,60,231,
+  94,0,9,60,231,132,251,222,121,206,77,107,125,239,3,190,247,50,125,239,
+  151,126,247,126,247,126,239,125,231,190,239,126,239,127,239,62,231,191,239,190,
+  239,188,239,188,239,189,247,124,239,125,247,189,247,190,247,126,247,62,239,126,
+  239,125,239,125,239,126,239,72,125,239,3,190,247,138,60,231,77,107,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,93,0,9,60,231,135,
+  251,222,186,214,77,107,125,239,125,239,190,247,190,247,52,125,239,3,190,247,
+  146,62,239,127,239,127,247,125,247,123,239,182,206,176,173,46,165,112,181,116,
+  206,56,231,122,239,255,255,190,247,125,239,125,239,190,247,126,247,72,125,239,
+  141,190,247,125,239,190,247,125,239,77,107,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,98,0,9,60,231,131,251,222,186,214,77,107,3,
+  125,239,130,190,247,190,247,48,125,239,152,190,239,126,239,125,239,189,247,190,
+  247,125,239,125,247,190,255,251,255,48,173,70,107,194,90,0,91,65,107,65,
+  107,0,99,2,83,42,124,57,231,125,239,125,239,190,247,125,239,126,247,74,
+  125,239,139,190,247,125,239,77,107,203,90,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,92,0,9,60,231,135,251,222,186,214,12,99,190,247,125,
+  239,125,239,190,247,49,125,239,139,126,239,126,239,125,239,125,239,126,247,125,
+  247,189,255,123,239,169,156,67,115,0,99,3,64,107,138,64,99,64,99,0,
+  83,105,132,251,247,254,247,124,231,189,239,125,239,126,247,76,125,239,137,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,94,0,9,
+  60,231,135,251,222,186,214,12,99,190,247,125,239,190,247,190,247,49,125,239,
+  152,126,239,125,239,125,239,126,239,62,239,189,247,187,247,176,173,64,107,64,
+  99,64,99,0,99,1,91,2,91,194,90,3,91,66,99,237,156,124,247,127,
+  239,190,239,189,239,125,239,126,247,76,125,239,137,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,102,0,9,60,231,135,251,222,251,
+  222,12,99,190,247,125,239,190,247,190,247,49,125,239,152,190,239,125,239,190,
+  247,190,247,62,239,190,255,56,231,196,82,64,99,1,99,194,98,135,123,51,
+  206,252,255,188,247,250,222,238,189,247,230,191,255,255,230,127,239,125,231,189,
+  247,125,247,72,125,239,141,190,247,125,239,190,247,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,144,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,51,125,239,176,126,247,126,239,188,231,188,
+  239,127,247,253,255,234,156,65,107,64,107,1,91,42,124,58,223,190,255,126,
+  247,190,255,126,239,189,247,188,247,189,239,126,239,126,239,189,239,124,239,126,
+  247,126,255,190,255,125,239,126,239,126,247,126,255,125,239,189,231,253,239,61,
+  239,127,255,62,239,125,231,253,231,189,239,126,239,127,239,126,239,125,239,189,
+  239,125,231,190,239,125,239,190,255,49,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,142,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,52,125,239,175,126,239,189,
+  239,188,239,127,247,123,247,198,123,0,91,64,107,2,99,242,181,189,239,190,
+  247,125,247,125,239,189,239,62,239,125,239,190,247,61,231,190,247,188,247,252,
+  255,188,255,180,214,116,206,181,206,56,223,188,255,124,247,190,247,126,231,125,
+  231,189,247,123,247,117,206,175,173,175,173,111,173,182,230,187,239,253,247,189,
+  239,190,239,125,231,125,239,126,247,61,239,49,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,142,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,52,125,239,175,126,
+  239,254,247,188,239,191,247,249,230,3,99,0,99,0,99,68,107,186,239,254,
+  247,125,239,189,247,124,231,190,231,63,239,125,231,190,247,126,247,189,255,111,
+  165,39,132,195,98,65,107,1,91,66,91,2,91,135,123,182,222,189,247,63,
+  239,127,239,122,239,199,123,1,99,0,91,1,99,65,107,0,115,69,99,116,
+  198,124,239,191,255,126,239,125,239,191,247,127,247,49,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,142,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,52,125,239,
+  175,126,247,189,239,188,239,126,247,117,206,2,91,65,107,1,107,40,132,253,
+  255,125,231,126,239,190,247,126,239,191,231,127,239,125,239,189,247,124,239,56,
+  231,68,107,192,90,65,107,0,99,1,99,65,99,192,90,0,99,69,115,122,
+  239,127,239,60,231,107,140,0,99,64,107,0,99,2,99,1,107,64,115,1,
+  91,54,231,125,247,62,239,190,247,189,247,190,247,62,239,49,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,144,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,51,
+  125,239,176,189,247,127,247,125,239,189,239,125,239,113,173,1,91,0,99,65,
+  107,45,165,189,247,253,222,127,247,125,239,126,239,62,231,126,247,125,239,124,
+  239,190,255,252,255,41,132,66,99,67,115,41,148,41,140,3,99,65,107,64,
+  107,65,107,241,189,125,239,57,231,194,82,64,107,0,99,135,123,112,173,46,
+  165,198,115,133,115,121,247,191,255,127,247,125,239,123,231,188,239,190,247,49,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,144,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,51,125,239,176,188,247,127,247,126,239,190,247,125,247,47,165,1,
+  99,0,99,192,98,176,181,190,247,191,247,189,247,122,239,252,255,189,247,188,
+  255,252,255,124,239,127,247,126,247,54,206,246,222,186,255,188,255,124,247,186,
+  255,68,115,64,107,0,99,105,140,189,247,245,214,1,91,0,99,66,107,51,
+  206,125,247,189,239,251,239,247,222,254,255,62,239,62,239,190,239,253,247,253,
+  247,124,239,49,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,144,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,51,125,239,176,188,247,127,247,126,247,189,247,189,
+  247,111,173,65,99,64,107,1,99,111,173,188,239,124,239,47,165,104,132,104,
+  140,41,132,41,132,106,140,239,164,61,239,191,247,190,247,189,247,125,239,125,
+  239,191,247,123,239,200,131,64,107,64,107,41,132,125,247,117,206,3,99,128,
+  115,192,98,175,189,189,255,60,231,190,239,190,247,190,247,126,239,191,247,125,
+  239,125,239,189,247,189,247,49,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,144,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,51,125,239,176,188,247,126,239,126,
+  247,124,231,124,247,111,173,0,91,64,107,2,99,46,165,253,247,252,247,40,
+  124,64,107,64,99,64,99,64,107,0,91,104,132,252,247,125,231,125,231,125,
+  223,127,231,189,231,60,223,255,255,41,132,64,107,64,107,42,140,125,247,122,
+  239,4,99,0,99,128,115,2,99,239,156,125,239,126,247,127,239,126,239,125,
+  231,189,239,125,239,191,247,62,239,126,247,49,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,144,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,51,125,239,176,126,
+  247,190,247,125,239,125,239,253,255,47,165,3,107,0,107,2,99,237,164,188,
+  255,188,239,52,182,41,124,197,115,65,107,1,99,64,91,167,140,126,247,190,
+  255,124,247,114,206,169,148,194,131,64,107,0,99,1,107,0,107,64,107,105,
+  140,125,239,190,247,45,157,0,91,64,107,0,107,128,107,2,107,52,214,251,
+  255,126,239,127,231,126,223,189,239,125,247,125,247,126,247,49,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,142,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,51,
+  125,239,175,126,247,126,239,125,239,190,247,189,247,116,206,2,99,64,107,0,
+  99,40,132,253,255,61,239,126,239,125,247,252,255,117,222,1,107,64,99,103,
+  132,126,255,58,239,173,148,3,99,193,90,2,99,2,99,3,99,1,99,64,
+  107,0,99,200,123,190,255,188,239,188,247,237,156,66,99,0,91,65,107,66,
+  107,1,91,46,165,59,231,127,239,190,231,125,239,189,247,126,247,50,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,144,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,51,125,239,176,190,247,125,239,126,239,126,239,124,239,56,239,193,90,64,
+  107,65,107,4,99,122,247,190,247,191,239,189,239,252,247,182,214,1,99,65,
+  107,40,132,126,255,175,173,3,91,192,82,65,107,108,140,244,197,117,206,38,
+  124,64,99,66,107,172,148,188,247,127,239,188,239,187,247,244,197,201,123,193,
+  90,64,99,0,99,2,99,117,214,126,239,190,239,125,239,125,247,126,239,190,
+  239,49,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,144,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,51,125,239,176,125,247,189,247,190,239,126,239,125,247,122,
+  247,68,107,64,99,0,91,2,99,116,206,189,247,60,231,254,247,188,239,182,
+  206,1,107,66,107,40,140,125,255,133,107,0,83,128,107,196,131,124,239,191,
+  255,253,255,104,132,64,99,1,99,47,173,252,247,127,239,189,239,189,239,191,
+  247,251,230,171,148,64,99,64,107,0,99,46,173,124,239,126,239,189,247,125,
+  239,125,239,190,239,49,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,144,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,51,125,239,176,125,247,190,247,190,239,126,
+  239,191,247,187,247,45,165,0,91,128,107,0,91,41,132,248,222,191,255,127,
+  247,62,239,57,206,0,99,64,107,199,131,188,255,2,91,64,99,64,99,38,
+  140,253,255,126,247,124,239,199,115,129,107,193,90,112,173,188,239,125,239,190,
+  239,127,239,62,231,191,255,188,255,40,140,0,99,128,115,200,131,188,247,125,
+  239,190,247,125,239,125,239,189,239,49,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,144,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,51,125,239,176,189,247,125,
+  239,125,239,126,239,126,239,189,247,181,222,195,90,64,107,0,99,193,82,41,
+  132,247,230,187,247,121,239,173,148,64,107,64,99,39,132,188,255,2,91,65,
+  99,0,99,68,123,120,239,187,247,247,222,68,99,0,99,1,99,112,173,189,
+  247,189,255,53,198,186,239,189,247,124,247,251,255,134,123,1,99,64,107,201,
+  131,189,255,125,239,190,247,126,247,126,247,125,231,49,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,142,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,51,125,239,
+  175,190,247,125,239,124,231,125,231,126,239,125,247,123,247,173,148,1,107,65,
+  107,64,107,0,91,65,99,192,82,129,107,64,99,66,99,0,91,168,140,124,
+  255,199,123,1,91,64,107,1,107,133,115,39,124,4,99,3,99,0,99,65,
+  107,237,156,191,255,60,255,40,124,67,99,172,148,112,181,233,148,192,82,66,
+  107,1,99,112,181,190,247,125,231,190,247,190,247,126,247,50,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,144,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,51,
+  125,239,176,125,247,189,247,125,239,190,239,191,239,190,247,189,255,58,247,197,
+  131,65,107,0,99,64,107,0,99,66,115,192,98,0,99,193,90,66,99,234,
+  148,189,255,49,198,67,99,0,91,64,107,0,99,129,107,192,90,233,164,65,
+  115,0,99,41,132,126,247,247,238,194,90,0,91,128,99,0,91,0,91,64,
+  99,64,91,3,107,56,231,126,239,126,231,190,239,125,247,125,239,190,239,49,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,126,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,59,125,239,167,121,247,46,165,3,99,192,90,64,99,64,99,0,
+  99,1,107,69,107,176,181,123,239,191,255,60,231,113,165,68,99,0,91,0,
+  91,69,107,242,197,185,255,197,115,1,91,135,115,187,255,242,205,40,140,193,
+  98,0,99,65,107,0,99,192,90,68,115,251,222,125,239,190,247,125,239,125,
+  239,190,247,190,247,50,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,126,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,59,125,239,163,125,247,124,247,121,239,181,
+  206,176,173,46,173,242,197,246,222,187,255,188,255,125,247,126,239,191,247,189,
+  247,248,230,246,222,182,214,59,239,191,255,191,255,57,231,252,255,124,239,191,
+  255,253,255,58,247,246,222,242,189,110,165,111,173,117,214,251,255,125,239,125,
+  239,190,247,3,125,239,130,190,247,190,247,49,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,121,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,160,127,
+  231,191,239,191,239,125,239,124,231,125,239,190,247,190,255,191,255,126,247,126,
+  239,125,231,126,239,190,247,126,247,125,255,124,231,190,247,126,239,61,231,191,
+  247,190,239,126,239,63,231,126,239,126,239,191,247,189,239,124,239,125,239,125,
+  239,126,239,3,190,247,4,125,239,129,190,247,49,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  126,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,160,
+  190,239,126,231,126,231,190,239,190,239,126,239,125,231,125,239,125,247,125,239,
+  189,239,253,239,189,239,189,239,126,239,125,239,189,239,189,239,253,239,189,239,
+  190,239,124,231,190,247,189,239,190,239,125,239,125,231,126,239,191,239,191,239,
+  126,239,126,239,3,125,239,133,190,247,190,247,125,239,125,239,190,247,49,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,120,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,59,125,239,160,189,239,189,239,189,247,190,247,190,247,125,239,189,247,
+  254,255,188,247,188,239,188,239,125,239,190,239,189,239,189,239,189,247,126,247,
+  125,239,124,247,189,247,61,239,127,247,190,247,125,247,188,239,188,239,189,247,
+  190,247,125,239,61,239,125,239,190,247,3,125,239,130,190,247,190,247,52,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,112,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,59,125,239,155,189,247,125,247,124,239,125,239,126,247,190,255,190,247,
+  124,239,123,231,189,239,126,239,127,239,127,247,126,239,125,239,189,239,126,255,
+  125,247,125,247,190,255,125,247,190,255,60,239,254,255,189,247,190,247,125,247,
+  3,126,247,131,190,247,125,247,190,247,56,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,110,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,135,61,239,
+  190,255,191,255,190,247,125,239,125,239,126,247,3,190,247,144,61,231,61,239,
+  126,247,126,239,190,239,125,239,124,239,189,247,190,247,124,239,124,239,253,255,
+  188,247,124,239,125,239,126,247,4,125,239,132,126,247,125,239,190,247,190,247,
+  55,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,113,0,9,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,59,125,239,131,190,247,190,247,189,247,4,189,239,154,125,239,
+  62,239,126,239,189,247,253,255,188,247,124,239,190,247,126,239,190,239,126,239,
+  127,239,127,239,190,239,124,231,191,247,127,239,126,239,126,239,125,239,190,247,
+  190,247,124,231,189,239,190,239,125,239,3,190,247,53,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,76,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,
+  133,190,247,190,247,125,239,125,239,190,247,9,125,239,4,190,247,4,125,239,
+  129,190,247,3,125,239,3,190,247,60,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,76,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,129,190,247,7,
+  125,239,6,190,247,5,125,239,136,190,247,190,247,125,239,190,247,125,239,125,
+  239,190,247,190,247,62,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,74,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,64,125,239,3,190,247,9,125,239,134,190,
+  247,125,239,190,247,190,247,125,239,190,247,7,125,239,130,190,247,190,247,57,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,74,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,59,125,239,129,190,247,6,125,239,3,190,247,4,125,239,4,190,
+  247,5,125,239,3,190,247,129,125,239,4,190,247,58,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,70,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,60,125,239,
+  5,190,247,4,125,239,5,190,247,3,125,239,4,190,247,8,125,239,130,190,
+  247,190,247,57,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,76,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,64,125,239,6,190,247,5,125,239,3,190,247,4,
+  125,239,133,190,247,125,239,125,239,190,247,190,247,3,125,239,129,190,247,57,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,91,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,59,125,239,129,190,247,4,125,239,136,190,247,125,239,125,239,186,
+  214,56,198,117,173,178,148,207,123,7,142,115,135,207,123,178,148,117,173,247,
+  189,60,231,125,239,125,239,3,190,247,59,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,84,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,61,125,239,134,190,247,
+  190,247,251,222,117,173,207,123,203,90,10,73,74,129,138,82,6,73,74,135,
+  203,90,207,123,52,165,186,214,125,239,190,247,190,247,57,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,132,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,43,125,
+  239,136,190,247,125,239,125,239,190,247,190,247,60,231,190,247,190,247,7,125,
+  239,133,190,247,190,247,186,214,178,148,203,90,3,73,74,129,8,66,7,73,
+  74,133,8,66,73,74,8,66,73,74,8,66,9,73,74,143,12,99,243,156,
+  186,214,190,247,125,239,125,239,190,247,190,247,125,239,125,239,190,247,125,239,
+  190,247,125,239,190,247,45,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,144,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,44,125,239,151,190,247,190,247,125,239,
+  190,247,190,247,125,239,125,239,190,247,190,247,60,231,190,247,125,239,125,239,
+  190,247,182,181,142,115,138,82,8,66,138,82,138,82,73,74,73,74,138,82,
+  5,73,74,131,8,66,73,74,138,82,4,73,74,130,138,82,8,66,10,73,
+  74,142,77,107,182,181,125,239,190,247,125,239,190,247,190,247,125,239,190,247,
+  60,231,190,247,125,239,125,239,255,255,43,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,156,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,43,125,239,132,190,247,
+  125,239,190,247,190,247,3,125,239,136,190,247,60,231,190,247,190,247,125,239,
+  125,239,247,189,12,99,5,73,74,149,8,66,73,74,73,74,8,66,203,90,
+  142,115,178,148,117,173,56,198,121,206,186,214,125,239,190,247,125,239,121,206,
+  56,198,56,198,182,181,243,156,207,123,138,82,7,73,74,143,8,66,73,74,
+  12,99,52,165,190,247,190,247,60,231,190,247,125,239,190,247,125,239,190,247,
+  125,239,60,231,190,247,42,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,163,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,43,125,239,3,190,247,140,125,239,125,
+  239,190,247,190,247,125,239,255,255,60,231,60,231,56,198,12,99,199,57,138,
+  82,5,73,74,153,138,82,142,115,117,173,186,214,125,239,125,239,190,247,125,
+  239,190,247,125,239,190,247,190,247,125,239,255,255,125,239,190,247,125,239,125,
+  239,190,247,125,239,190,247,251,222,117,173,207,123,138,82,3,73,74,129,138,
+  82,3,73,74,140,203,90,182,181,190,247,125,239,190,247,60,231,125,239,190,
+  247,190,247,125,239,125,239,190,247,41,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,164,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,44,125,239,148,255,255,125,
+  239,125,239,190,247,125,239,125,239,255,255,125,239,186,214,207,123,8,66,73,
+  74,73,74,8,66,73,74,8,66,138,82,142,115,117,173,60,231,3,125,239,
+  141,190,247,125,239,190,247,125,239,190,247,125,239,190,247,125,239,190,247,125,
+  239,60,231,125,239,125,239,3,190,247,137,125,239,190,247,190,247,125,239,251,
+  222,182,181,207,123,73,74,8,66,5,73,74,138,207,123,56,198,125,239,190,
+  247,190,247,60,231,190,247,190,247,125,239,190,247,41,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,153,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,46,125,239,
+  143,255,255,190,247,125,239,190,247,60,231,182,181,138,82,8,66,73,74,8,
+  66,138,82,73,74,8,66,178,148,121,206,4,190,247,4,125,239,138,255,255,
+  190,247,190,247,60,231,190,247,190,247,125,239,125,239,255,255,125,239,3,190,
+  247,140,125,239,190,247,190,247,125,239,125,239,190,247,190,247,125,239,251,222,
+  113,140,203,90,8,66,4,73,74,136,138,82,243,156,60,231,190,247,190,247,
+  125,239,125,239,190,247,42,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,164,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,43,125,239,146,190,247,125,239,190,247,
+  125,239,125,239,255,255,186,214,207,123,8,66,73,74,8,66,138,82,73,74,
+  73,74,113,140,251,222,125,239,190,247,5,125,239,133,190,247,125,239,190,247,
+  190,247,60,231,3,190,247,140,60,231,56,198,251,222,190,247,60,231,190,247,
+  60,231,125,239,190,247,125,239,125,239,190,247,4,125,239,145,190,247,190,247,
+  251,222,178,148,138,82,8,66,73,74,73,74,8,66,73,74,207,123,186,214,
+  125,239,190,247,190,247,125,239,190,247,41,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,164,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,43,125,239,150,190,247,
+  190,247,125,239,125,239,255,255,56,198,12,99,8,66,73,74,73,74,138,82,
+  73,74,142,115,186,214,190,247,60,231,125,239,125,239,190,247,190,247,125,239,
+  125,239,3,190,247,144,60,231,117,173,48,132,56,198,190,247,125,239,121,206,
+  73,74,243,156,125,239,190,247,251,222,207,123,52,165,190,247,190,247,3,125,
+  239,3,190,247,3,125,239,141,190,247,186,214,48,132,73,74,73,74,138,82,
+  73,74,199,57,12,99,56,198,125,239,125,239,190,247,42,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,185,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,
+  239,133,190,247,125,239,190,247,125,239,125,239,4,190,247,3,125,239,130,182,
+  181,138,82,4,73,74,133,138,82,117,173,125,239,125,239,190,247,3,125,239,
+  157,190,247,125,239,190,247,56,198,48,132,190,247,190,247,125,239,52,165,73,
+  74,56,198,190,247,125,239,56,198,73,74,243,156,190,247,125,239,56,198,73,
+  74,52,165,125,239,190,247,125,239,113,140,247,189,190,247,125,239,190,247,3,
+  125,239,134,190,247,190,247,125,239,182,181,12,99,8,66,4,73,74,138,117,
+  173,255,255,125,239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,35,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,192,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,36,125,239,139,190,247,125,239,190,247,190,247,125,239,125,239,190,
+  247,125,239,190,247,125,239,182,181,5,73,74,168,207,123,186,214,190,247,125,
+  239,255,255,125,239,125,239,255,255,125,239,125,239,190,247,125,239,178,148,138,
+  82,247,189,190,247,125,239,56,198,73,74,52,165,125,239,125,239,121,206,73,
+  74,52,165,190,247,125,239,247,189,73,74,117,173,190,247,190,247,186,214,73,
+  74,113,140,125,239,190,247,190,247,125,239,190,247,4,125,239,137,255,255,251,
+  222,113,140,8,66,138,82,73,74,138,82,8,66,113,140,3,125,239,134,255,
+  255,125,239,190,247,125,239,60,231,190,247,34,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,190,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,135,190,
+  247,190,247,125,239,190,247,125,239,125,239,190,247,3,125,239,130,56,198,8,
+  66,4,73,74,183,178,148,60,231,255,255,190,247,190,247,125,239,125,239,190,
+  247,186,214,113,140,186,214,190,247,125,239,186,214,8,66,113,140,125,239,190,
+  247,251,222,73,74,48,132,125,239,255,255,247,189,203,90,113,140,190,247,125,
+  239,178,148,73,74,121,206,125,239,60,231,243,156,199,57,56,198,190,247,60,
+  231,60,231,48,132,56,198,190,247,125,239,190,247,125,239,125,239,255,255,60,
+  231,52,165,73,74,8,66,73,74,73,74,8,66,178,148,8,125,239,129,190,
+  247,33,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,202,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,35,125,239,139,190,247,125,239,190,247,125,239,125,239,190,
+  247,125,239,190,247,125,239,182,181,8,66,4,73,74,185,117,173,125,239,190,
+  247,125,239,60,231,190,247,255,255,125,239,60,231,182,181,8,66,113,140,125,
+  239,190,247,125,239,12,99,138,82,125,239,190,247,125,239,178,148,182,181,190,
+  247,60,231,138,82,8,66,138,82,125,239,190,247,182,181,178,148,125,239,125,
+  239,255,255,138,82,203,90,60,231,125,239,190,247,52,165,8,66,117,173,190,
+  247,125,239,190,247,255,255,60,231,190,247,190,247,125,239,182,181,203,90,8,
+  66,73,74,138,82,8,66,113,140,3,190,247,133,125,239,190,247,190,247,60,
+  231,190,247,33,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,194,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,36,125,239,136,190,247,190,247,125,239,190,247,125,
+  239,125,239,190,247,182,181,3,73,74,173,138,82,138,82,247,189,125,239,190,
+  247,190,247,125,239,190,247,190,247,60,231,190,247,190,247,125,239,12,99,138,
+  82,121,206,190,247,125,239,52,165,113,140,251,222,60,231,190,247,60,231,125,
+  239,190,247,125,239,8,66,73,74,73,74,125,239,190,247,125,239,125,239,190,
+  247,125,239,125,239,48,132,52,165,190,247,190,247,121,206,73,74,12,99,190,
+  247,4,125,239,130,190,247,125,239,3,190,247,137,121,206,12,99,8,66,73,
+  74,138,82,73,74,182,181,125,239,190,247,3,125,239,129,190,247,34,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,200,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,36,125,239,136,190,247,125,239,190,247,125,239,190,247,255,255,182,181,138,
+  82,3,73,74,155,138,82,121,206,190,247,125,239,190,247,125,239,125,239,190,
+  247,48,132,77,107,60,231,125,239,190,247,52,165,8,66,178,148,125,239,190,
+  247,125,239,190,247,125,239,190,247,125,239,255,255,190,247,125,239,190,247,3,
+  73,74,165,190,247,190,247,125,239,255,255,125,239,190,247,125,239,190,247,60,
+  231,190,247,125,239,178,148,8,66,182,181,125,239,190,247,125,239,142,115,207,
+  123,190,247,190,247,125,239,190,247,125,239,190,247,186,214,12,99,73,74,73,
+  74,138,82,138,82,117,173,125,239,190,247,125,239,125,239,190,247,34,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,200,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,35,125,239,136,190,247,125,239,125,239,190,247,125,239,190,247,186,214,12,
+  99,4,73,74,180,247,189,190,247,190,247,125,239,190,247,125,239,255,255,60,
+  231,113,140,138,82,178,148,190,247,125,239,190,247,178,148,247,189,190,247,125,
+  239,255,255,60,231,190,247,190,247,60,231,125,239,190,247,190,247,125,239,138,
+  82,73,74,138,82,125,239,190,247,125,239,125,239,190,247,190,247,125,239,190,
+  247,190,247,125,239,125,239,56,198,178,148,60,231,190,247,190,247,52,165,8,
+  66,48,132,125,239,125,239,190,247,3,125,239,136,190,247,56,198,203,90,73,
+  74,8,66,199,57,77,107,56,198,3,190,247,130,60,231,190,247,33,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,202,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,35,125,239,136,190,247,125,239,190,247,125,239,255,255,60,231,142,115,8,
+  66,3,73,74,129,117,173,3,125,239,177,190,247,125,239,190,247,60,231,255,
+  255,60,231,203,90,73,74,247,189,125,239,125,239,190,247,125,239,125,239,190,
+  247,125,239,190,247,125,239,125,239,190,247,190,247,125,239,60,231,255,255,56,
+  198,121,206,247,189,190,247,60,231,255,255,125,239,190,247,125,239,190,247,125,
+  239,125,239,190,247,190,247,125,239,125,239,190,247,125,239,121,206,8,66,12,
+  99,251,222,190,247,125,239,125,239,3,190,247,141,125,239,190,247,182,181,73,
+  74,138,82,138,82,8,66,142,115,251,222,190,247,60,231,190,247,190,247,33,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,130,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,38,125,239,131,190,247,190,247,243,156,4,73,74,142,52,165,125,
+  239,125,239,190,247,125,239,125,239,121,206,178,148,125,239,125,239,190,247,121,
+  206,138,82,178,148,33,125,239,142,52,165,73,74,56,198,255,255,125,239,125,
+  239,182,181,182,181,190,247,125,239,190,247,125,239,255,255,52,165,3,73,74,
+  132,8,66,178,148,190,247,190,247,35,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,140,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,134,190,247,190,
+  247,125,239,255,255,56,198,203,90,3,73,74,132,207,123,125,239,125,239,255,
+  255,3,125,239,131,142,115,73,74,178,148,3,190,247,130,186,214,255,255,32,
+  125,239,151,190,247,125,239,251,222,190,247,125,239,125,239,247,189,73,74,138,
+  82,125,239,255,255,125,239,190,247,125,239,125,239,113,140,8,66,138,82,73,
+  74,73,74,247,189,125,239,255,255,34,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,138,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,129,190,247,3,
+  125,239,147,142,115,8,66,138,82,73,74,138,82,251,222,190,247,125,239,190,
+  247,60,231,255,255,125,239,125,239,77,107,73,74,113,140,56,198,190,247,255,
+  255,33,125,239,129,190,247,3,125,239,141,121,206,182,181,73,74,138,82,121,
+  206,190,247,190,247,60,231,60,231,190,247,255,255,251,222,12,99,3,73,74,
+  131,77,107,125,239,60,231,34,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,136,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,35,125,239,132,190,247,60,231,255,
+  255,117,173,4,73,74,134,182,181,255,255,125,239,125,239,190,247,190,247,3,
+  125,239,135,60,231,142,115,73,74,73,74,113,140,125,239,190,247,34,125,239,
+  134,255,255,117,173,138,82,73,74,203,90,121,206,3,125,239,141,190,247,190,
+  247,125,239,125,239,190,247,56,198,73,74,138,82,8,66,73,74,243,156,125,
+  239,190,247,33,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,138,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,35,125,239,132,190,247,125,239,60,231,203,90,3,
+  73,74,136,48,132,190,247,60,231,190,247,190,247,60,231,178,148,247,189,3,
+  190,247,133,182,181,73,74,73,74,8,66,178,148,33,125,239,150,190,247,125,
+  239,182,181,73,74,73,74,8,66,113,140,190,247,255,255,125,239,56,198,113,
+  140,125,239,190,247,125,239,190,247,190,247,178,148,73,74,8,66,138,82,73,
+  74,35,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,140,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,36,125,239,130,190,247,178,148,3,73,74,146,203,90,186,
+  214,60,231,190,247,125,239,190,247,186,214,138,82,73,74,113,140,125,239,125,
+  239,60,231,77,107,138,82,138,82,73,74,117,173,33,125,239,141,56,198,138,
+  82,73,74,8,66,12,99,121,206,125,239,125,239,178,148,138,82,73,74,56,
+  198,190,247,3,125,239,135,60,231,138,82,73,74,138,82,73,74,113,140,190,
+  247,33,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,140,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,35,125,239,152,190,247,60,231,203,90,138,82,8,66,138,
+  82,178,148,190,247,190,247,255,255,125,239,125,239,190,247,121,206,12,99,73,
+  74,142,115,125,239,125,239,60,231,77,107,8,66,142,115,60,231,32,125,239,
+  142,190,247,190,247,207,123,73,74,12,99,56,198,190,247,190,247,207,123,73,
+  74,203,90,56,198,190,247,125,239,4,190,247,129,52,165,4,73,74,129,251,
+  222,33,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,136,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,35,125,239,135,190,247,117,173,73,74,8,66,138,82,138,
+  82,60,231,3,125,239,141,255,255,125,239,125,239,190,247,60,231,207,123,178,
+  148,190,247,190,247,125,239,125,239,113,140,60,231,35,125,239,140,190,247,178,
+  148,121,206,190,247,125,239,125,239,178,148,48,132,251,222,125,239,190,247,190,
+  247,3,125,239,131,190,247,190,247,203,90,3,73,74,129,52,165,33,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,158,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,29,125,239,141,190,247,125,239,125,239,190,247,125,239,125,239,190,247,203,
+  90,73,74,138,82,199,57,117,173,190,247,3,125,239,138,60,231,60,231,125,
+  239,190,247,125,239,190,247,125,239,247,189,77,107,52,165,3,190,247,131,125,
+  239,190,247,190,247,4,125,239,129,190,247,33,125,239,129,190,247,4,125,239,
+  145,60,231,251,222,190,247,125,239,190,247,125,239,182,181,8,66,73,74,73,
+  74,138,82,125,239,125,239,190,247,125,239,125,239,190,247,27,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,166,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,27,
+  125,239,131,190,247,125,239,190,247,5,125,239,154,56,198,73,74,73,74,8,
+  66,138,82,251,222,125,239,190,247,190,247,125,239,142,115,73,74,243,156,251,
+  222,190,247,60,231,190,247,190,247,52,165,138,82,207,123,121,206,125,239,190,
+  247,125,239,125,239,4,190,247,130,125,239,190,247,32,125,239,150,190,247,125,
+  239,190,247,60,231,52,165,73,74,12,99,125,239,190,247,125,239,190,247,60,
+  231,138,82,8,66,73,74,73,74,247,189,190,247,190,247,125,239,125,239,190,
+  247,27,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,172,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,27,125,239,131,190,247,125,239,190,247,3,125,239,162,190,
+  247,190,247,113,140,8,66,73,74,8,66,113,140,190,247,125,239,190,247,125,
+  239,255,255,117,173,12,99,73,74,138,82,247,189,190,247,125,239,125,239,190,
+  247,117,173,73,74,73,74,113,140,60,231,190,247,190,247,125,239,125,239,190,
+  247,190,247,125,239,190,247,33,125,239,136,190,247,247,189,138,82,73,74,12,
+  99,178,148,125,239,190,247,3,125,239,139,178,148,138,82,73,74,73,74,207,
+  123,190,247,125,239,125,239,190,247,125,239,190,247,26,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,166,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,29,125,239,
+  142,190,247,125,239,125,239,190,247,190,247,60,231,203,90,73,74,73,74,138,
+  82,56,198,125,239,190,247,125,239,3,190,247,149,251,222,243,156,77,107,121,
+  206,125,239,125,239,255,255,125,239,190,247,247,189,203,90,73,74,12,99,56,
+  198,60,231,125,239,190,247,190,247,60,231,125,239,190,247,33,125,239,134,255,
+  255,186,214,142,115,243,156,251,222,190,247,3,125,239,131,190,247,125,239,186,
+  214,3,73,74,135,138,82,251,222,190,247,125,239,190,247,125,239,190,247,26,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,166,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,27,125,239,131,190,247,125,239,190,247,4,125,239,129,56,198,3,
+  73,74,135,77,107,190,247,60,231,190,247,125,239,125,239,60,231,3,190,247,
+  133,251,222,255,255,125,239,190,247,60,231,3,190,247,139,121,206,12,99,8,
+  66,73,74,178,148,60,231,60,231,125,239,255,255,125,239,190,247,34,125,239,
+  150,255,255,251,222,125,239,190,247,190,247,125,239,190,247,125,239,190,247,190,
+  247,125,239,12,99,138,82,73,74,73,74,182,181,190,247,190,247,125,239,125,
+  239,190,247,190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,167,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,27,125,239,129,190,247,3,125,239,132,190,
+  247,125,239,125,239,178,148,3,73,74,156,48,132,190,247,125,239,190,247,125,
+  239,56,198,56,198,125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,
+  247,125,239,125,239,60,231,190,247,60,231,207,123,8,66,73,74,203,90,247,
+  189,190,247,60,231,190,247,33,125,239,130,190,247,60,231,3,190,247,137,125,
+  239,60,231,186,214,182,181,190,247,125,239,190,247,125,239,52,165,3,73,74,
+  132,48,132,125,239,190,247,125,239,3,190,247,25,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  157,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,31,125,239,132,
+  190,247,190,247,125,239,77,107,3,73,74,139,247,189,190,247,190,247,125,239,
+  125,239,77,107,8,66,203,90,48,132,121,206,190,247,3,125,239,141,190,247,
+  125,239,190,247,190,247,60,231,125,239,125,239,178,148,138,82,8,66,73,74,
+  113,140,60,231,34,125,239,142,190,247,125,239,125,239,190,247,121,206,48,132,
+  203,90,73,74,12,99,60,231,190,247,125,239,125,239,186,214,3,73,74,131,
+  203,90,125,239,125,239,3,190,247,26,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,159,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,28,125,239,134,190,247,125,
+  239,190,247,190,247,125,239,60,231,3,73,74,130,8,66,190,247,4,125,239,
+  137,56,198,178,148,203,90,73,74,52,165,190,247,125,239,190,247,190,247,3,
+  125,239,5,190,247,135,117,173,203,90,73,74,8,66,77,107,56,198,190,247,
+  33,125,239,150,190,247,125,239,125,239,182,181,73,74,73,74,113,140,247,189,
+  190,247,190,247,125,239,190,247,125,239,203,90,8,66,73,74,8,66,60,231,
+  125,239,190,247,125,239,190,247,26,125,239,140,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,158,0,9,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,29,125,239,4,190,247,129,247,
+  189,3,73,74,130,142,115,125,239,3,190,247,4,125,239,132,186,214,60,231,
+  190,247,190,247,10,125,239,137,190,247,121,206,142,115,8,66,8,66,138,82,
+  178,148,125,239,125,239,3,190,247,3,125,239,3,190,247,130,125,239,190,247,
+  20,125,239,133,190,247,60,231,125,239,60,231,121,206,3,125,239,134,190,247,
+  190,247,125,239,125,239,190,247,77,107,3,73,74,134,182,181,125,239,190,247,
+  125,239,190,247,190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,167,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,29,125,239,129,190,247,3,125,239,129,
+  52,165,3,73,74,132,113,140,190,247,190,247,60,231,3,190,247,6,125,239,
+  129,190,247,9,125,239,146,60,231,255,255,251,222,48,132,73,74,8,66,138,
+  82,203,90,121,206,125,239,255,255,60,231,190,247,190,247,125,239,125,239,190,
+  247,60,231,3,190,247,130,125,239,190,247,16,125,239,130,190,247,125,239,5,
+  190,247,136,125,239,190,247,125,239,60,231,190,247,190,247,125,239,52,165,3,
+  73,74,133,52,165,125,239,190,247,125,239,190,247,26,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,183,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,
+  131,190,247,125,239,190,247,3,125,239,139,113,140,8,66,73,74,73,74,117,
+  173,125,239,125,239,255,255,255,255,247,189,121,206,3,190,247,132,125,239,125,
+  239,190,247,190,247,8,125,239,139,190,247,190,247,125,239,190,247,190,247,52,
+  165,73,74,73,74,138,82,8,66,243,156,3,190,247,135,60,231,190,247,125,
+  239,190,247,125,239,190,247,60,231,3,190,247,17,125,239,142,190,247,60,231,
+  125,239,190,247,60,231,190,247,125,239,56,198,182,181,190,247,190,247,60,231,
+  125,239,247,189,3,73,74,129,48,132,3,125,239,129,190,247,26,125,239,140,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,171,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  29,125,239,148,190,247,125,239,190,247,125,239,142,115,73,74,73,74,8,66,
+  121,206,190,247,125,239,190,247,251,222,138,82,73,74,73,74,138,82,117,173,
+  125,239,190,247,15,125,239,143,190,247,56,198,138,82,8,66,138,82,8,66,
+  12,99,121,206,125,239,190,247,125,239,190,247,125,239,125,239,255,255,3,190,
+  247,17,125,239,143,190,247,125,239,255,255,190,247,255,255,56,198,203,90,138,
+  82,73,74,138,82,125,239,190,247,125,239,255,255,121,206,3,73,74,129,77,
+  107,3,125,239,129,190,247,26,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,184,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,29,125,239,150,190,247,125,239,190,
+  247,190,247,12,99,73,74,138,82,8,66,251,222,190,247,125,239,190,247,255,
+  255,117,173,243,156,142,115,77,107,56,198,190,247,125,239,125,239,190,247,8,
+  125,239,132,190,247,190,247,60,231,125,239,3,190,247,145,125,239,207,123,73,
+  74,8,66,138,82,203,90,117,173,48,132,138,82,8,66,203,90,178,148,121,
+  206,255,255,125,239,125,239,190,247,16,125,239,138,190,247,60,231,190,247,60,
+  231,125,239,121,206,77,107,77,107,52,165,117,173,4,125,239,129,190,247,3,
+  73,74,129,138,82,3,125,239,129,190,247,26,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,173,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,28,125,239,134,190,
+  247,125,239,125,239,190,247,125,239,138,82,3,73,74,142,125,239,190,247,190,
+  247,60,231,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,247,190,
+  247,60,231,8,125,239,151,60,231,190,247,255,255,190,247,60,231,125,239,190,
+  247,125,239,125,239,243,156,73,74,73,74,8,66,73,74,138,82,73,74,138,
+  82,73,74,73,74,203,90,56,198,190,247,190,247,18,125,239,129,190,247,5,
+  125,239,137,190,247,125,239,190,247,190,247,125,239,190,247,125,239,255,255,8,
+  66,3,73,74,30,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,172,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,28,125,239,129,190,247,4,125,239,146,73,74,
+  73,74,8,66,73,74,190,247,125,239,190,247,125,239,190,247,190,247,125,239,
+  125,239,190,247,60,231,190,247,190,247,125,239,190,247,8,125,239,142,190,247,
+  125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,247,125,239,121,206,
+  138,82,199,57,138,82,6,73,74,131,207,123,125,239,190,247,18,125,239,135,
+  190,247,125,239,190,247,125,239,190,247,125,239,125,239,3,190,247,133,125,239,
+  190,247,190,247,125,239,203,90,3,73,74,130,190,247,190,247,28,125,239,140,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,180,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  28,125,239,150,190,247,125,239,190,247,125,239,125,239,73,74,73,74,138,82,
+  8,66,125,239,190,247,125,239,190,247,190,247,125,239,125,239,190,247,121,206,
+  142,115,142,115,77,107,48,132,10,125,239,149,190,247,190,247,125,239,125,239,
+  190,247,125,239,125,239,190,247,125,239,125,239,56,198,138,82,8,66,73,74,
+  77,107,56,198,48,132,73,74,73,74,8,66,251,222,18,125,239,131,190,247,
+  125,239,207,123,3,142,115,138,186,214,125,239,125,239,190,247,125,239,190,247,
+  125,239,190,247,125,239,207,123,3,73,74,130,190,247,190,247,28,125,239,140,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,182,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  28,125,239,129,190,247,3,125,239,147,190,247,73,74,73,74,8,66,138,82,
+  125,239,190,247,125,239,125,239,56,198,138,82,73,74,73,74,138,82,8,66,
+  138,82,73,74,73,74,190,247,17,125,239,142,190,247,125,239,56,198,8,66,
+  138,82,73,74,251,222,125,239,125,239,8,66,138,82,73,74,56,198,190,247,
+  3,125,239,133,190,247,190,247,60,231,190,247,190,247,10,125,239,133,190,247,
+  8,66,73,74,138,82,8,66,4,73,74,134,243,156,60,231,255,255,125,239,
+  125,239,142,115,3,73,74,133,125,239,190,247,190,247,125,239,190,247,25,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,184,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,28,125,239,129,190,247,3,125,239,146,190,247,73,74,73,74,138,82,
+  73,74,125,239,190,247,125,239,190,247,251,222,243,156,52,165,243,156,48,132,
+  138,82,73,74,8,66,138,82,17,125,239,152,190,247,190,247,125,239,186,214,
+  138,82,73,74,138,82,117,173,190,247,247,189,138,82,73,74,138,82,117,173,
+  60,231,125,239,186,214,186,214,56,198,190,247,190,247,125,239,125,239,190,247,
+  10,125,239,133,138,82,73,74,8,66,203,90,48,132,3,243,156,130,121,206,
+  190,247,3,125,239,129,142,115,3,73,74,133,125,239,190,247,125,239,125,239,
+  190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,169,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,29,125,239,129,190,247,3,125,239,4,73,74,137,255,
+  255,125,239,125,239,190,247,125,239,190,247,125,239,190,247,60,231,3,121,206,
+  130,56,198,190,247,18,125,239,135,255,255,125,239,203,90,8,66,138,82,73,
+  74,142,115,6,73,74,133,138,82,73,74,8,66,73,74,117,173,3,125,239,
+  129,190,247,9,125,239,147,190,247,56,198,121,206,247,189,121,206,60,231,125,
+  239,190,247,190,247,125,239,190,247,125,239,190,247,190,247,142,115,73,74,138,
+  82,73,74,190,247,3,125,239,129,190,247,25,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,168,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,29,125,239,129,190,
+  247,3,125,239,129,138,82,3,73,74,134,125,239,125,239,255,255,190,247,125,
+  239,190,247,3,125,239,132,190,247,125,239,125,239,190,247,18,125,239,138,190,
+  247,60,231,125,239,117,173,203,90,199,57,73,74,138,82,8,66,8,66,4,
+  73,74,135,8,66,73,74,8,66,138,82,178,148,190,247,190,247,13,125,239,
+  140,190,247,125,239,125,239,60,231,190,247,125,239,255,255,125,239,190,247,255,
+  255,125,239,190,247,4,73,74,133,190,247,125,239,190,247,125,239,190,247,25,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,172,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,27,125,239,131,190,247,125,239,190,247,3,125,239,145,203,90,73,
+  74,73,74,138,82,125,239,190,247,125,239,60,231,190,247,125,239,190,247,56,
+  198,117,173,60,231,190,247,125,239,190,247,18,125,239,139,190,247,60,231,190,
+  247,125,239,178,148,138,82,73,74,8,66,138,82,203,90,8,66,7,73,74,
+  129,117,173,12,125,239,144,190,247,125,239,190,247,125,239,190,247,251,222,182,
+  181,56,198,60,231,60,231,255,255,60,231,125,239,60,231,190,247,138,82,3,
+  73,74,132,125,239,125,239,190,247,190,247,26,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,165,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,131,190,
+  247,125,239,190,247,3,125,239,129,142,115,3,73,74,138,56,198,125,239,125,
+  239,190,247,60,231,203,90,73,74,8,66,73,74,182,181,3,190,247,17,125,
+  239,131,190,247,125,239,190,247,3,125,239,134,251,222,52,165,52,165,117,173,
+  121,206,142,115,6,73,74,130,8,66,251,222,3,190,247,11,125,239,141,190,
+  247,125,239,125,239,247,189,203,90,8,66,138,82,203,90,125,239,190,247,190,
+  247,125,239,251,222,3,73,74,130,203,90,125,239,3,190,247,26,125,239,140,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,181,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  27,125,239,148,190,247,125,239,190,247,190,247,125,239,125,239,113,140,73,74,
+  73,74,138,82,247,189,190,247,125,239,255,255,125,239,207,123,142,115,243,156,
+  182,181,60,231,3,125,239,129,190,247,16,125,239,3,190,247,137,125,239,190,
+  247,190,247,125,239,125,239,190,247,60,231,190,247,117,173,6,73,74,129,142,
+  115,3,125,239,129,190,247,9,125,239,143,190,247,190,247,125,239,190,247,255,
+  255,125,239,117,173,243,156,207,123,207,123,125,239,190,247,125,239,125,239,56,
+  198,3,73,74,134,142,115,125,239,190,247,125,239,190,247,190,247,25,125,239,
+  140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,164,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,27,125,239,135,190,247,190,247,125,239,190,247,125,239,125,239,178,148,3,
+  73,74,141,243,156,125,239,190,247,60,231,190,247,125,239,125,239,190,247,125,
+  239,190,247,125,239,190,247,190,247,17,125,239,129,190,247,5,125,239,129,190,
+  247,5,125,239,130,73,74,8,66,4,73,74,133,121,206,190,247,190,247,125,
+  239,190,247,10,125,239,3,190,247,129,60,231,4,190,247,3,125,239,131,190,
+  247,125,239,117,173,3,73,74,134,48,132,190,247,190,247,125,239,125,239,190,
+  247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,158,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,27,125,239,142,190,247,125,239,190,247,125,239,190,247,125,
+  239,182,181,8,66,73,74,138,82,142,115,255,255,125,239,190,247,4,125,239,
+  132,190,247,125,239,125,239,190,247,28,125,239,136,190,247,125,239,77,107,8,
+  66,138,82,73,74,138,82,117,173,3,125,239,129,190,247,10,125,239,143,190,
+  247,190,247,125,239,190,247,125,239,190,247,125,239,125,239,190,247,60,231,190,
+  247,190,247,125,239,125,239,48,132,3,73,74,131,52,165,190,247,190,247,28,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,156,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,28,125,239,130,190,247,125,239,3,190,247,129,121,206,3,73,74,
+  141,12,99,125,239,125,239,190,247,125,239,190,247,190,247,251,222,52,165,207,
+  123,247,189,125,239,190,247,26,125,239,138,190,247,125,239,125,239,178,148,73,
+  74,73,74,12,99,56,198,125,239,255,255,15,125,239,136,190,247,190,247,121,
+  206,77,107,52,165,60,231,125,239,255,255,3,125,239,138,190,247,77,107,8,
+  66,73,74,8,66,121,206,190,247,125,239,190,247,190,247,26,125,239,140,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,
+  231,60,231,158,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,28,
+  125,239,139,190,247,125,239,190,247,125,239,190,247,125,239,203,90,73,74,73,
+  74,138,82,186,214,4,125,239,129,207,123,3,73,74,132,243,156,190,247,125,
+  239,190,247,24,125,239,138,190,247,190,247,125,239,190,247,251,222,117,173,182,
+  181,60,231,190,247,190,247,17,125,239,149,60,231,182,181,73,74,73,74,8,
+  66,77,107,125,239,190,247,125,239,125,239,60,231,73,74,138,82,73,74,73,
+  74,190,247,125,239,125,239,190,247,125,239,190,247,25,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,165,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,28,125,239,
+  135,190,247,125,239,190,247,125,239,190,247,190,247,207,123,3,73,74,141,117,
+  173,125,239,125,239,190,247,125,239,48,132,48,132,52,165,251,222,125,239,190,
+  247,190,247,60,231,24,125,239,136,190,247,125,239,125,239,190,247,190,247,251,
+  222,125,239,190,247,4,125,239,129,190,247,12,125,239,3,190,247,148,125,239,
+  60,231,182,181,48,132,207,123,125,239,190,247,125,239,190,247,247,189,8,66,
+  73,74,138,82,77,107,190,247,125,239,190,247,125,239,125,239,190,247,25,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,154,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,30,125,239,133,190,247,125,239,125,239,190,247,117,173,3,73,74,131,
+  142,115,125,239,125,239,3,190,247,135,60,231,125,239,125,239,255,255,125,239,
+  125,239,190,247,26,125,239,138,190,247,125,239,255,255,125,239,190,247,60,231,
+  190,247,125,239,190,247,190,247,16,125,239,148,190,247,190,247,60,231,125,239,
+  190,247,125,239,125,239,190,247,190,247,142,115,138,82,73,74,8,66,52,165,
+  125,239,125,239,190,247,125,239,125,239,190,247,25,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  160,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,136,
+  190,247,125,239,190,247,125,239,190,247,125,239,190,247,251,222,4,73,74,139,
+  251,222,190,247,60,231,190,247,125,239,190,247,190,247,125,239,60,231,52,165,
+  190,247,26,125,239,132,190,247,190,247,60,231,190,247,5,125,239,129,190,247,
+  3,125,239,129,190,247,9,125,239,141,190,247,255,255,60,231,182,181,186,214,
+  125,239,255,255,125,239,190,247,125,239,190,247,190,247,60,231,3,73,74,134,
+  8,66,186,214,125,239,125,239,190,247,190,247,27,125,239,140,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,
+  167,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,129,
+  190,247,3,125,239,148,190,247,125,239,190,247,125,239,77,107,8,66,73,74,
+  73,74,52,165,190,247,125,239,125,239,190,247,190,247,251,222,243,156,203,90,
+  8,66,247,189,190,247,25,125,239,136,190,247,190,247,125,239,190,247,125,239,
+  125,239,190,247,125,239,5,190,247,10,125,239,151,190,247,125,239,182,181,8,
+  66,12,99,243,156,251,222,190,247,60,231,190,247,190,247,125,239,182,181,73,
+  74,8,66,73,74,77,107,125,239,190,247,125,239,190,247,125,239,190,247,26,
+  125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,152,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,27,125,239,129,190,247,3,125,239,133,190,247,60,231,190,247,190,
+  247,117,173,3,73,74,130,12,99,125,239,3,190,247,134,125,239,12,99,73,
+  74,138,82,52,165,251,222,25,125,239,135,190,247,125,239,125,239,190,247,125,
+  239,190,247,190,247,8,125,239,129,190,247,11,125,239,146,243,156,138,82,73,
+  74,203,90,125,239,190,247,125,239,125,239,190,247,142,115,73,74,138,82,73,
+  74,178,148,125,239,190,247,125,239,190,247,28,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,172,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,129,60,
+  231,3,73,74,140,138,82,56,198,190,247,125,239,190,247,190,247,52,165,52,
+  165,60,231,190,247,125,239,125,239,3,190,247,132,60,231,190,247,125,239,190,
+  247,5,125,239,130,190,247,190,247,19,125,239,129,190,247,5,125,239,157,190,
+  247,190,247,60,231,190,247,125,239,190,247,125,239,190,247,125,239,190,247,190,
+  247,125,239,190,247,60,231,52,165,52,165,125,239,125,239,190,247,125,239,121,
+  206,73,74,73,74,138,82,73,74,60,231,125,239,190,247,190,247,3,125,239,
+  129,190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,60,231,60,231,171,0,9,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,35,125,239,152,190,247,48,132,138,82,8,66,73,
+  74,77,107,190,247,125,239,190,247,125,239,190,247,190,247,125,239,125,239,190,
+  247,186,214,186,214,125,239,60,231,255,255,125,239,186,214,190,247,125,239,3,
+  190,247,25,125,239,143,190,247,190,247,125,239,190,247,125,239,255,255,125,239,
+  251,222,125,239,255,255,60,231,190,247,121,206,56,198,125,239,3,190,247,142,
+  125,239,255,255,125,239,125,239,255,255,48,132,73,74,138,82,8,66,207,123,
+  125,239,125,239,190,247,190,247,3,125,239,129,190,247,25,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,172,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,
+  239,130,190,247,56,198,4,73,74,129,56,198,3,125,239,141,190,247,60,231,
+  255,255,125,239,117,173,73,74,203,90,125,239,190,247,125,239,117,173,203,90,
+  117,173,4,190,247,3,125,239,130,190,247,190,247,16,125,239,134,190,247,190,
+  247,125,239,125,239,190,247,190,247,4,125,239,150,121,206,203,90,48,132,60,
+  231,255,255,60,231,77,107,8,66,52,165,60,231,190,247,190,247,125,239,125,
+  239,190,247,125,239,186,214,8,66,138,82,73,74,73,74,56,198,4,190,247,
+  3,125,239,129,190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,159,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,37,125,239,146,142,115,8,66,73,74,
+  73,74,207,123,190,247,125,239,190,247,190,247,125,239,125,239,142,115,8,66,
+  12,99,56,198,190,247,125,239,182,181,3,73,74,129,182,181,3,125,239,129,
+  190,247,20,125,239,129,190,247,8,125,239,146,186,214,138,82,8,66,203,90,
+  113,140,125,239,190,247,56,198,12,99,8,66,207,123,251,222,125,239,190,247,
+  190,247,125,239,190,247,142,115,3,73,74,129,142,115,4,190,247,3,125,239,
+  130,190,247,190,247,25,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,159,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,35,125,239,131,190,247,190,247,56,198,4,
+  73,74,129,182,181,3,125,239,136,190,247,186,214,203,90,142,115,186,214,125,
+  239,190,247,56,198,3,73,74,130,203,90,186,214,4,190,247,22,125,239,131,
+  190,247,125,239,125,239,4,190,247,151,125,239,12,99,138,82,73,74,73,74,
+  243,156,125,239,190,247,251,222,207,123,203,90,186,214,190,247,190,247,125,239,
+  190,247,182,181,73,74,138,82,73,74,73,74,56,198,190,247,4,125,239,130,
+  190,247,190,247,27,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,169,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,35,125,239,153,190,247,125,239,125,239,113,140,
+  8,66,73,74,8,66,203,90,251,222,255,255,125,239,60,231,125,239,251,222,
+  190,247,190,247,125,239,125,239,52,165,8,66,73,74,138,82,121,206,190,247,
+  190,247,3,125,239,4,190,247,17,125,239,3,190,247,131,125,239,125,239,190,
+  247,4,125,239,148,142,115,199,57,138,82,207,123,125,239,125,239,255,255,125,
+  239,121,206,125,239,190,247,125,239,190,247,60,231,12,99,138,82,199,57,73,
+  74,142,115,190,247,5,125,239,130,190,247,190,247,27,125,239,140,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,168,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,36,125,239,
+  139,190,247,190,247,186,214,138,82,8,66,73,74,73,74,113,140,251,222,255,
+  255,125,239,3,190,247,137,125,239,190,247,182,181,73,74,203,90,48,132,251,
+  222,125,239,190,247,4,125,239,130,190,247,190,247,18,125,239,133,190,247,125,
+  239,125,239,190,247,190,247,5,125,239,150,190,247,251,222,207,123,77,107,73,
+  74,113,140,125,239,125,239,190,247,190,247,125,239,125,239,190,247,125,239,178,
+  148,73,74,8,66,73,74,73,74,121,206,125,239,190,247,3,125,239,129,190,
+  247,29,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,169,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,35,125,239,138,190,247,125,239,190,247,125,239,243,156,73,
+  74,138,82,73,74,73,74,182,181,5,125,239,139,190,247,182,181,73,74,203,
+  90,121,206,190,247,125,239,190,247,125,239,190,247,125,239,3,190,247,131,125,
+  239,251,222,186,214,17,125,239,133,251,222,251,222,125,239,190,247,125,239,5,
+  190,247,141,125,239,190,247,60,231,77,107,8,66,113,140,190,247,190,247,125,
+  239,190,247,190,247,125,239,247,189,4,73,74,132,178,148,190,247,125,239,125,
+  239,4,190,247,3,125,239,129,190,247,25,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,194,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,36,125,239,151,190,247,
+  60,231,255,255,60,231,142,115,8,66,73,74,73,74,138,82,56,198,255,255,
+  125,239,125,239,190,247,125,239,48,132,203,90,56,198,190,247,125,239,190,247,
+  125,239,190,247,3,125,239,137,190,247,190,247,178,148,73,74,73,74,203,90,
+  186,214,125,239,190,247,3,125,239,130,190,247,190,247,3,125,239,140,190,247,
+  60,231,190,247,251,222,77,107,73,74,73,74,48,132,125,239,190,247,60,231,
+  190,247,3,125,239,134,190,247,125,239,190,247,251,222,142,115,77,107,4,125,
+  239,139,190,247,251,222,138,82,73,74,138,82,8,66,12,99,60,231,255,255,
+  60,231,190,247,33,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,185,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,37,125,239,139,190,247,125,239,190,247,121,206,
+  203,90,73,74,8,66,73,74,77,107,251,222,190,247,3,125,239,132,190,247,
+  186,214,125,239,190,247,3,125,239,135,190,247,125,239,190,247,190,247,125,239,
+  117,173,138,82,3,73,74,130,142,115,125,239,3,190,247,3,125,239,145,190,
+  247,125,239,125,239,190,247,125,239,125,239,48,132,73,74,73,74,138,82,138,
+  82,117,173,125,239,190,247,125,239,190,247,190,247,3,125,239,132,190,247,255,
+  255,251,222,125,239,4,190,247,138,251,222,77,107,138,82,73,74,8,66,138,
+  82,56,198,125,239,190,247,190,247,34,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,180,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,135,190,247,125,
+  239,190,247,125,239,190,247,190,247,117,173,4,73,74,138,142,115,251,222,190,
+  247,255,255,190,247,125,239,190,247,190,247,125,239,190,247,7,125,239,130,52,
+  165,8,66,4,73,74,141,190,247,190,247,125,239,190,247,190,247,125,239,125,
+  239,190,247,125,239,190,247,125,239,190,247,125,239,4,73,74,133,8,66,243,
+  156,125,239,190,247,190,247,3,125,239,132,190,247,190,247,125,239,125,239,3,
+  190,247,141,60,231,190,247,125,239,207,123,138,82,8,66,138,82,73,74,52,
+  165,125,239,190,247,125,239,190,247,34,125,239,140,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,182,0,9,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,36,125,239,131,190,247,125,
+  239,190,247,3,125,239,139,113,140,73,74,8,66,73,74,8,66,48,132,125,
+  239,190,247,190,247,125,239,190,247,5,125,239,145,190,247,125,239,190,247,125,
+  239,125,239,182,181,73,74,8,66,73,74,8,66,77,107,190,247,190,247,125,
+  239,125,239,190,247,190,247,3,125,239,133,190,247,125,239,125,239,190,247,207,
+  123,4,73,74,136,182,181,190,247,125,239,60,231,190,247,125,239,125,239,190,
+  247,4,125,239,141,60,231,190,247,190,247,125,239,113,140,138,82,8,66,138,
+  82,8,66,113,140,125,239,125,239,190,247,36,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,187,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,37,125,239,146,190,
+  247,125,239,125,239,190,247,190,247,60,231,77,107,138,82,73,74,73,74,8,
+  66,113,140,60,231,125,239,190,247,125,239,125,239,190,247,5,125,239,3,190,
+  247,161,251,222,207,123,73,74,73,74,77,107,182,181,125,239,190,247,190,247,
+  125,239,190,247,125,239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,
+  121,206,138,82,73,74,73,74,142,115,186,214,190,247,125,239,190,247,190,247,
+  125,239,190,247,190,247,125,239,5,190,247,141,125,239,48,132,138,82,73,74,
+  138,82,8,66,142,115,60,231,125,239,190,247,125,239,125,239,190,247,34,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,204,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,35,125,239,153,190,247,125,239,190,247,125,239,125,239,190,247,125,239,
+  255,255,60,231,77,107,73,74,8,66,203,90,8,66,77,107,60,231,190,247,
+  125,239,125,239,190,247,125,239,190,247,125,239,125,239,190,247,3,125,239,179,
+  255,255,60,231,121,206,56,198,121,206,125,239,190,247,190,247,125,239,190,247,
+  125,239,190,247,125,239,190,247,190,247,125,239,190,247,125,239,190,247,190,247,
+  60,231,121,206,56,198,125,239,255,255,125,239,125,239,190,247,125,239,190,247,
+  190,247,125,239,190,247,125,239,125,239,190,247,190,247,251,222,207,123,138,82,
+  8,66,8,66,138,82,12,99,251,222,255,255,125,239,190,247,190,247,125,239,
+  190,247,34,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,198,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,35,125,239,155,190,247,125,239,125,239,190,247,125,239,
+  125,239,190,247,60,231,125,239,125,239,77,107,73,74,73,74,8,66,73,74,
+  77,107,186,214,190,247,190,247,125,239,60,231,125,239,125,239,190,247,125,239,
+  125,239,190,247,3,125,239,136,190,247,125,239,190,247,190,247,125,239,190,247,
+  125,239,190,247,3,125,239,145,190,247,190,247,125,239,190,247,125,239,125,239,
+  190,247,125,239,125,239,190,247,190,247,125,239,125,239,190,247,125,239,190,247,
+  190,247,4,125,239,145,190,247,125,239,60,231,77,107,203,90,199,57,138,82,
+  73,74,138,82,121,206,255,255,60,231,190,247,125,239,255,255,190,247,190,247,
+  34,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,196,0,9,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,36,125,239,171,190,247,125,239,125,239,190,247,190,247,125,239,
+  190,247,125,239,190,247,60,231,142,115,8,66,138,82,73,74,73,74,138,82,
+  247,189,125,239,190,247,190,247,125,239,125,239,190,247,125,239,125,239,190,247,
+  125,239,190,247,125,239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,
+  125,239,190,247,125,239,190,247,125,239,125,239,190,247,4,125,239,130,190,247,
+  125,239,4,190,247,153,125,239,190,247,190,247,125,239,125,239,190,247,125,239,
+  190,247,125,239,56,198,138,82,73,74,8,66,138,82,8,66,203,90,121,206,
+  190,247,125,239,190,247,125,239,190,247,60,231,190,247,190,247,34,125,239,140,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  60,231,60,231,152,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  43,125,239,134,190,247,125,239,190,247,251,222,207,123,8,66,4,73,74,135,
+  178,148,60,231,190,247,125,239,190,247,255,255,190,247,8,125,239,143,190,247,
+  125,239,125,239,190,247,190,247,125,239,190,247,125,239,125,239,190,247,125,239,
+  125,239,190,247,125,239,190,247,5,125,239,138,190,247,125,239,125,239,190,247,
+  125,239,190,247,125,239,190,247,125,239,52,165,3,73,74,134,138,82,8,66,
+  142,115,186,214,255,255,190,247,41,125,239,140,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,159,0,9,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,46,125,239,144,255,255,251,222,
+  178,148,73,74,73,74,8,66,73,74,73,74,12,99,247,189,190,247,190,247,
+  60,231,190,247,190,247,125,239,3,190,247,3,125,239,3,190,247,3,125,239,
+  161,190,247,125,239,125,239,190,247,125,239,125,239,190,247,125,239,125,239,190,
+  247,125,239,125,239,190,247,190,247,125,239,125,239,190,247,125,239,190,247,125,
+  239,125,239,56,198,77,107,73,74,73,74,138,82,8,66,8,66,207,123,60,
+  231,255,255,60,231,190,247,41,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,151,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,43,125,239,147,190,247,190,247,125,
+  239,125,239,190,247,125,239,243,156,73,74,138,82,8,66,73,74,138,82,73,
+  74,48,132,186,214,190,247,125,239,125,239,190,247,3,125,239,3,190,247,3,
+  125,239,3,190,247,134,125,239,125,239,190,247,190,247,125,239,125,239,3,190,
+  247,132,125,239,125,239,190,247,190,247,3,125,239,135,190,247,190,247,60,231,
+  251,222,178,148,8,66,8,66,4,73,74,131,243,156,60,231,190,247,44,125,
+  239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,60,231,60,231,143,0,9,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,43,125,239,145,190,247,60,231,125,239,190,247,60,231,255,255,190,247,
+  247,189,203,90,203,90,8,66,73,74,138,82,8,66,73,74,48,132,60,231,
+  9,125,239,129,190,247,7,125,239,3,190,247,131,125,239,125,239,190,247,5,
+  125,239,147,190,247,190,247,60,231,186,214,178,148,73,74,73,74,138,82,73,
+  74,138,82,73,74,138,82,56,198,190,247,60,231,125,239,255,255,190,247,190,
+  247,41,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,60,231,60,231,145,0,9,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,43,125,239,130,190,247,125,239,3,190,247,134,125,239,125,
+  239,255,255,60,231,178,148,138,82,5,73,74,134,8,66,207,123,56,198,125,
+  239,190,247,190,247,4,125,239,5,190,247,131,125,239,125,239,190,247,4,125,
+  239,131,190,247,125,239,190,247,3,125,239,134,190,247,125,239,247,189,178,148,
+  138,82,199,57,4,73,74,137,138,82,207,123,60,231,125,239,190,247,255,255,
+  190,247,60,231,190,247,42,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,154,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,44,125,239,133,190,247,125,239,60,231,
+  190,247,190,247,4,125,239,134,56,198,207,123,8,66,8,66,73,74,8,66,
+  3,73,74,135,12,99,178,148,56,198,60,231,190,247,125,239,190,247,5,125,
+  239,145,190,247,125,239,190,247,190,247,125,239,125,239,190,247,190,247,125,239,
+  125,239,190,247,125,239,121,206,178,148,12,99,73,74,8,66,3,73,74,135,
+  138,82,8,66,77,107,56,198,125,239,125,239,190,247,4,125,239,129,190,247,
+  42,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,60,231,60,231,162,0,9,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,43,125,239,130,190,247,125,239,3,190,247,129,125,239,3,190,
+  247,134,125,239,190,247,125,239,182,181,77,107,8,66,5,73,74,151,8,66,
+  73,74,12,99,142,115,52,165,56,198,60,231,190,247,255,255,125,239,60,231,
+  190,247,125,239,190,247,125,239,190,247,190,247,60,231,251,222,121,206,52,165,
+  207,123,203,90,4,73,74,145,138,82,138,82,73,74,73,74,203,90,117,173,
+  190,247,190,247,125,239,125,239,190,247,125,239,125,239,190,247,190,247,125,239,
+  190,247,41,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,124,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,45,125,239,142,190,247,125,239,190,247,125,239,190,247,
+  125,239,190,247,125,239,125,239,190,247,190,247,125,239,182,181,77,107,9,73,
+  74,141,138,82,73,74,73,74,77,107,207,123,142,115,48,132,243,156,113,140,
+  142,115,142,115,77,107,138,82,11,73,74,132,12,99,117,173,125,239,190,247,
+  3,125,239,3,190,247,46,125,239,140,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,60,231,60,231,98,0,9,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,59,125,239,131,56,198,113,140,203,90,
+  5,73,74,130,8,66,138,82,9,73,74,130,138,82,8,66,5,73,74,140,
+  8,66,73,74,73,74,8,66,138,82,113,140,121,206,60,231,190,247,125,239,
+  125,239,190,247,51,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,60,231,60,231,104,0,9,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,60,125,239,133,190,247,125,239,56,198,113,140,
+  203,90,6,73,74,129,138,82,3,73,74,133,138,82,73,74,73,74,8,66,
+  138,82,6,73,74,139,203,90,113,140,182,181,186,214,190,247,60,231,190,247,
+  190,247,125,239,125,239,190,247,51,125,239,140,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,114,0,9,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,140,190,247,190,247,
+  125,239,125,239,190,247,190,247,186,214,182,181,178,148,142,115,12,99,199,57,
+  6,73,74,138,138,82,73,74,138,82,8,66,12,99,77,107,178,148,182,181,
+  186,214,125,239,3,190,247,129,125,239,3,190,247,132,125,239,125,239,190,247,
+  190,247,50,125,239,140,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,60,231,60,231,108,0,9,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,60,125,239,130,190,247,190,247,4,125,239,133,190,247,
+  255,255,190,247,251,222,203,90,3,73,74,129,138,82,3,73,74,141,8,66,
+  73,74,138,82,251,222,190,247,125,239,125,239,190,247,125,239,125,239,60,231,
+  125,239,190,247,4,125,239,4,190,247,49,125,239,140,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,97,0,
+  9,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,132,190,247,
+  190,247,125,239,190,247,4,125,239,133,60,231,190,247,190,247,73,74,8,66,
+  6,73,74,131,138,82,73,74,73,74,3,190,247,130,125,239,125,239,3,190,
+  247,5,125,239,129,190,247,53,125,239,140,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,107,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,63,125,239,3,190,247,140,125,239,
+  125,239,190,247,125,239,73,74,73,74,138,82,73,74,8,66,73,74,138,82,
+  8,66,3,73,74,136,190,247,190,247,125,239,125,239,190,247,190,247,125,239,
+  125,239,6,190,247,132,125,239,125,239,190,247,190,247,49,125,239,140,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,
+  60,231,111,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,
+  239,3,190,247,130,125,239,125,239,3,190,247,3,125,239,135,138,82,8,66,
+  8,66,73,74,73,74,8,66,138,82,3,73,74,137,138,82,125,239,190,247,
+  125,239,190,247,125,239,125,239,190,247,190,247,4,125,239,131,190,247,190,247,
+  125,239,3,190,247,49,125,239,140,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,106,0,9,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,62,125,239,138,190,247,190,247,125,239,125,
+  239,190,247,125,239,125,239,190,247,77,107,138,82,8,73,74,139,77,107,125,
+  239,190,247,125,239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,3,
+  125,239,132,190,247,125,239,190,247,190,247,50,125,239,140,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,62,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,68,125,239,131,190,
+  247,190,247,125,239,7,73,74,133,8,66,73,74,121,206,125,239,190,247,68,
+  125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,
+  231,54,0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,68,125,239,
+  131,190,247,190,247,125,239,9,73,74,129,121,206,70,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,64,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,67,125,239,134,190,247,125,239,190,
+  247,190,247,73,74,8,66,5,73,74,131,138,82,73,74,56,198,70,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,60,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,67,125,239,132,190,
+  247,125,239,125,239,190,247,9,73,74,131,121,206,125,239,190,247,68,125,239,
+  137,12,99,12,99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,68,
+  0,9,60,231,133,251,222,186,214,12,99,125,239,190,247,67,125,239,135,190,
+  247,125,239,190,247,60,231,73,74,73,74,138,82,4,73,74,132,8,66,73,
+  74,251,222,190,247,69,125,239,137,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,60,231,60,231,68,0,9,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,67,125,239,135,190,247,125,239,190,247,125,239,77,107,8,66,8,
+  66,4,73,74,132,199,57,12,99,60,231,190,247,69,125,239,137,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,60,231,60,231,70,0,9,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,67,125,239,136,190,247,125,239,190,
+  247,190,247,182,181,203,90,199,57,138,82,3,73,74,132,203,90,52,165,125,
+  239,190,247,69,125,239,137,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,60,231,60,231,68,0,9,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,68,125,239,134,190,247,125,239,190,247,190,247,117,173,203,90,4,73,74,
+  133,178,148,125,239,255,255,125,239,190,247,68,125,239,137,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,60,231,60,231,89,0,9,60,231,135,251,
+  222,251,222,12,99,121,206,190,247,125,239,190,247,66,125,239,129,190,247,3,
+  125,239,135,190,247,251,222,178,148,8,66,113,140,186,214,125,239,3,190,247,
+  57,125,239,133,190,247,125,239,125,239,190,247,125,239,4,190,247,140,125,239,
+  190,247,121,206,77,107,138,82,207,123,243,156,247,189,121,206,251,222,251,222,
+  60,231,88,0,9,60,231,136,251,222,121,206,142,115,186,214,125,239,190,247,
+  60,231,190,247,65,125,239,129,190,247,3,125,239,139,190,247,190,247,121,206,
+  48,132,247,189,190,247,255,255,125,239,125,239,190,247,190,247,57,125,239,3,
+  190,247,5,125,239,140,190,247,251,222,121,206,12,99,203,90,142,115,178,148,
+  182,181,121,206,251,222,251,222,60,231,84,0,10,60,231,133,186,214,77,107,
+  117,173,125,239,190,247,67,125,239,142,190,247,125,239,190,247,125,239,125,239,
+  190,247,190,247,60,231,125,239,190,247,125,239,125,239,190,247,190,247,58,125,
+  239,132,190,247,190,247,125,239,125,239,6,190,247,138,52,165,12,99,203,90,
+  77,107,178,148,182,181,121,206,251,222,251,222,60,231,90,0,9,60,231,135,
+  186,214,251,222,178,148,142,115,60,231,125,239,190,247,66,125,239,134,190,247,
+  125,239,190,247,190,247,125,239,125,239,4,190,247,132,125,239,125,239,190,247,
+  190,247,57,125,239,132,190,247,190,247,125,239,125,239,4,190,247,141,125,239,
+  190,247,125,239,207,123,203,90,203,90,142,115,178,148,182,181,121,206,251,222,
+  251,222,60,231,86,0,9,60,231,134,251,222,121,206,247,189,12,99,182,181,
+  190,247,66,125,239,140,190,247,190,247,125,239,125,239,190,247,125,239,190,247,
+  190,247,60,231,125,239,190,247,190,247,3,125,239,129,190,247,59,125,239,129,
+  190,247,5,125,239,140,190,247,117,173,77,107,138,82,203,90,207,123,243,156,
+  182,181,121,206,251,222,251,222,60,231,84,0,10,60,231,135,121,206,56,198,
+  48,132,142,115,121,206,190,247,255,255,65,125,239,129,190,247,3,125,239,133,
+  190,247,190,247,125,239,190,247,190,247,62,125,239,134,190,247,125,239,190,247,
+  190,247,125,239,125,239,3,190,247,140,56,198,207,123,138,82,203,90,12,99,
+  48,132,52,165,247,189,186,214,251,222,251,222,60,231,78,0,9,60,231,135,
+  251,222,251,222,121,206,117,173,77,107,207,123,56,198,67,125,239,129,190,247,
+  7,125,239,4,190,247,58,125,239,149,190,247,125,239,190,247,190,247,125,239,
+  190,247,190,247,60,231,121,206,207,123,12,99,8,66,12,99,142,115,113,140,
+  182,181,56,198,186,214,251,222,60,231,60,231,94,0,10,60,231,135,251,222,
+  121,206,247,189,52,165,12,99,142,115,182,181,64,125,239,136,190,247,125,239,
+  190,247,125,239,125,239,190,247,190,247,125,239,3,190,247,3,125,239,130,190,
+  247,190,247,56,125,239,146,190,247,125,239,190,247,190,247,125,239,190,247,60,
+  231,247,189,142,115,138,82,73,74,12,99,12,99,48,132,243,156,247,189,121,
+  206,251,222,3,60,231,74,0,10,60,231,141,251,222,186,214,121,206,182,181,
+  243,156,207,123,12,99,207,123,52,165,56,198,186,214,125,239,190,247,127,125,
+  239,5,125,239,144,60,231,186,214,56,198,52,165,207,123,12,99,138,82,138,
+  82,203,90,77,107,48,132,243,156,182,181,56,198,251,222,251,222,3,60,231,
+  72,0,11,60,231,136,251,222,186,214,56,198,117,173,178,148,207,123,12,99,
+  77,107,3,12,99,131,77,107,12,99,77,107,127,12,99,4,12,99,143,77,
+  107,77,107,12,99,203,90,138,82,203,90,203,90,77,107,207,123,178,148,117,
+  173,56,198,186,214,251,222,251,222,3,60,231,68,0,12,60,231,139,251,222,
+  186,214,56,198,117,173,243,156,113,140,207,123,77,107,12,99,12,99,203,90,
+  127,12,99,5,12,99,143,203,90,203,90,12,99,12,99,203,90,203,90,77,
+  107,142,115,48,132,243,156,117,173,56,198,186,214,251,222,251,222,4,60,231,
+  53,0,12,60,231,135,251,222,251,222,121,206,247,189,182,181,52,165,113,140,
+  3,48,132,127,207,123,10,207,123,138,48,132,48,132,113,140,178,148,52,165,
+  182,181,56,198,186,214,251,222,251,222,5,60,231,54,0,13,60,231,136,251,
+  222,251,222,121,206,56,198,56,198,182,181,117,173,117,173,127,52,165,5,52,
+  165,130,243,156,243,156,6,52,165,135,117,173,182,181,247,189,121,206,186,214,
+  251,222,251,222,6,60,231,56,0,15,60,231,133,251,222,186,214,121,206,56,
+  198,56,198,3,247,189,130,56,198,56,198,127,247,189,3,247,189,139,56,198,
+  56,198,247,189,247,189,56,198,247,189,56,198,121,206,186,214,186,214,251,222,
+  8,60,231,27,0,16,60,231,4,251,222,127,186,214,12,186,214,131,251,222,
+  186,214,186,214,4,251,222,8,60,231,31,0,16,60,231,130,251,222,60,231,
+  3,251,222,129,60,231,127,251,222,13,251,222,3,60,231,129,251,222,8,60,
+  231,8,0,127,60,231,47,60,231
+};
+const GuiConst_INT8U GuiBitmap_6[19682] =
+{
+  124,1,185,0,50,0,5,255,255,131,190,247,121,206,56,198,7,182,181,129,
+  117,173,127,182,181,127,182,181,99,182,181,139,117,173,117,173,182,181,247,189,
+  186,214,125,239,255,255,255,255,190,247,255,255,255,255,47,0,3,255,255,133,
+  190,247,121,206,247,189,182,181,56,198,3,251,222,127,60,231,127,60,231,106,
+  60,231,137,186,214,56,198,247,189,247,189,121,206,190,247,255,255,190,247,255,
+  255,45,0,137,255,255,255,255,60,231,56,198,182,181,121,206,251,222,125,239,
+  251,222,127,60,231,127,60,231,110,60,231,135,251,222,121,206,182,181,56,198,
+  190,247,255,255,255,255,43,0,133,255,255,190,247,56,198,182,181,186,214,127,
+  60,231,127,60,231,111,60,231,138,251,222,60,231,60,231,125,239,60,231,251,
+  222,182,181,56,198,255,255,255,255,49,0,135,255,255,121,206,182,181,186,214,
+  125,239,60,231,251,222,127,60,231,127,60,231,108,60,231,139,125,239,125,239,
+  60,231,251,222,251,222,60,231,60,231,251,222,182,181,186,214,255,255,47,0,
+  134,190,247,247,189,121,206,60,231,60,231,251,222,127,60,231,127,60,231,108,
+  60,231,134,251,222,251,222,60,231,60,231,125,239,125,239,3,60,231,131,121,
+  206,182,181,190,247,33,0,136,121,206,182,181,251,222,60,231,251,222,60,231,
+  125,239,251,222,127,60,231,127,60,231,116,60,231,130,182,181,186,214,29,0,
+  131,56,198,56,198,125,239,3,60,231,129,251,222,127,60,231,127,60,231,117,
+  60,231,130,121,206,247,189,23,0,131,182,181,251,222,251,222,127,60,231,127,
+  60,231,121,60,231,130,251,222,182,181,27,0,130,182,181,251,222,127,60,231,
+  38,60,231,129,251,222,127,60,231,83,60,231,130,251,222,182,181,21,0,130,
+  182,181,251,222,127,60,231,127,60,231,122,60,231,130,251,222,182,181,17,0,
+  129,182,181,127,60,231,127,60,231,124,60,231,1,182,181,25,0,129,182,181,
+  127,60,231,36,60,231,130,251,222,251,222,127,60,231,86,60,231,1,182,181,
+  23,0,129,182,181,17,60,231,127,251,222,21,251,222,127,60,231,86,60,231,
+  1,182,181,37,0,129,182,181,20,60,231,3,251,222,127,186,214,14,186,214,
+  133,251,222,251,222,186,214,251,222,251,222,127,60,231,82,60,231,1,182,181,
+  50,0,129,117,173,18,60,231,132,251,222,56,198,243,156,207,123,127,12,99,
+  11,12,99,135,77,107,142,115,113,140,117,173,56,198,121,206,121,206,3,251,
+  222,127,60,231,81,60,231,1,182,181,82,0,129,182,181,17,60,231,141,251,
+  222,178,148,77,107,48,132,52,165,121,206,186,214,60,231,190,247,190,247,125,
+  239,190,247,190,247,127,125,239,141,125,239,125,239,121,206,121,206,52,165,207,
+  123,77,107,48,132,247,189,247,189,121,206,186,214,251,222,3,60,231,130,251,
+  222,125,239,127,60,231,76,60,231,1,182,181,77,0,129,182,181,16,60,231,
+  138,247,189,48,132,142,115,117,173,60,231,190,247,190,247,60,231,125,239,190,
+  247,3,125,239,129,190,247,127,125,239,4,125,239,141,190,247,60,231,182,181,
+  142,115,12,99,52,165,182,181,56,198,121,206,251,222,251,222,60,231,251,222,
+  127,60,231,77,60,231,1,182,181,73,0,129,182,181,12,60,231,135,251,222,
+  60,231,60,231,251,222,48,132,142,115,56,198,3,190,247,131,125,239,190,247,
+  190,247,127,125,239,7,125,239,130,190,247,125,239,3,190,247,136,56,198,142,
+  115,142,115,178,148,182,181,247,189,121,206,251,222,127,60,231,79,60,231,1,
+  182,181,78,0,129,182,181,12,60,231,135,251,222,60,231,251,222,178,148,142,
+  115,56,198,255,255,4,125,239,131,190,247,125,239,125,239,3,190,247,127,125,
+  239,4,125,239,141,190,247,125,239,60,231,190,247,255,255,121,206,142,115,142,
+  115,178,148,117,173,56,198,186,214,251,222,127,60,231,78,60,231,1,182,181,
+  86,0,129,182,181,12,60,231,139,251,222,60,231,56,198,77,107,117,173,190,
+  247,125,239,125,239,190,247,125,239,190,247,3,125,239,133,190,247,190,247,125,
+  239,125,239,190,247,127,125,239,133,125,239,190,247,190,247,125,239,255,255,3,
+  125,239,135,182,181,12,99,207,123,178,148,182,181,121,206,186,214,127,60,231,
+  78,60,231,1,182,181,86,0,129,182,181,12,60,231,136,251,222,251,222,243,
+  156,48,132,60,231,190,247,125,239,190,247,3,125,239,132,190,247,125,239,125,
+  239,190,247,3,125,239,129,190,247,127,125,239,134,125,239,125,239,60,231,125,
+  239,190,247,190,247,3,125,239,135,207,123,77,107,48,132,52,165,247,189,121,
+  206,251,222,127,60,231,77,60,231,1,182,181,82,0,129,182,181,12,60,231,
+  134,251,222,251,222,207,123,52,165,190,247,190,247,3,125,239,132,255,255,125,
+  239,190,247,190,247,5,125,239,129,190,247,127,125,239,129,125,239,3,190,247,
+  140,125,239,125,239,190,247,125,239,190,247,52,165,12,99,142,115,178,148,182,
+  181,56,198,186,214,127,60,231,77,60,231,1,182,181,69,0,129,182,181,12,
+  60,231,136,251,222,251,222,12,99,121,206,190,247,125,239,125,239,190,247,7,
+  125,239,4,190,247,127,125,239,4,125,239,130,190,247,190,247,3,125,239,135,
+  121,206,77,107,77,107,113,140,117,173,56,198,186,214,127,60,231,77,60,231,
+  1,182,181,130,0,129,182,181,12,60,231,138,251,222,186,214,12,99,186,214,
+  60,231,190,247,190,247,125,239,190,247,190,247,25,125,239,152,190,247,125,239,
+  125,239,190,247,125,239,190,247,190,247,125,239,126,239,190,247,126,247,125,239,
+  190,255,190,247,124,231,189,239,188,239,189,239,125,239,190,247,124,239,189,247,
+  190,239,126,239,8,125,239,136,189,247,125,239,126,239,126,239,125,239,190,239,
+  189,239,190,239,80,125,239,136,186,214,12,99,77,107,48,132,52,165,56,198,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,116,0,129,182,181,12,60,
+  231,134,251,222,186,214,12,99,60,231,125,239,190,247,3,125,239,129,190,247,
+  27,125,239,130,190,247,190,247,4,125,239,144,191,239,61,223,190,239,191,247,
+  61,239,61,239,191,247,127,239,125,239,126,239,62,239,191,247,189,247,188,239,
+  189,239,190,247,9,125,239,129,126,247,3,126,239,131,125,239,189,239,189,239,
+  80,125,239,136,60,231,77,107,12,99,207,123,52,165,56,198,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,116,0,129,182,181,12,60,231,133,251,222,
+  186,214,12,99,190,247,190,247,31,125,239,151,190,247,190,247,125,239,125,239,
+  190,247,190,247,125,239,125,223,255,239,190,239,125,239,189,247,190,255,189,247,
+  125,239,125,247,191,255,63,247,126,239,189,247,189,247,189,239,124,231,8,125,
+  239,136,127,247,126,247,190,247,125,239,190,247,126,239,190,247,190,247,81,125,
+  239,135,77,107,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,115,0,129,182,181,12,60,231,134,251,222,186,214,12,99,
+  190,247,125,239,125,239,3,190,247,26,125,239,132,190,247,190,247,125,239,125,
+  239,4,190,247,144,190,239,124,239,188,247,186,247,115,206,46,173,111,173,111,
+  173,246,222,249,230,190,255,190,247,125,239,188,239,190,247,189,247,8,125,239,
+  134,191,255,58,231,252,255,251,255,253,255,190,239,83,125,239,135,77,107,203,
+  90,207,123,52,165,56,198,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  120,0,129,182,181,12,60,231,131,251,222,186,214,12,99,3,125,239,133,190,
+  247,190,247,125,239,125,239,190,247,27,125,239,130,190,247,190,247,3,125,239,
+  144,253,255,56,239,237,164,3,99,1,99,65,107,0,99,64,99,1,83,4,
+  91,243,181,124,239,189,247,125,239,190,247,126,247,8,125,239,136,123,239,6,
+  99,194,90,195,90,48,165,125,239,191,247,190,247,81,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  128,0,129,182,181,12,60,231,135,251,222,186,214,12,99,190,247,125,239,125,
+  239,190,247,3,125,239,129,190,247,24,125,239,152,190,247,125,239,190,247,190,
+  247,125,239,125,239,190,247,190,247,246,238,135,123,64,82,65,107,64,107,64,
+  99,64,99,0,99,64,91,1,83,180,206,253,247,189,239,125,239,126,239,126,
+  247,8,125,239,136,251,247,194,90,64,107,65,99,111,165,189,239,126,239,125,
+  247,80,125,239,135,190,247,77,107,12,99,207,123,52,165,247,189,186,214,127,
+  60,231,77,60,231,1,182,181,126,0,129,182,181,12,60,231,133,251,222,186,
+  214,12,99,190,247,190,247,5,125,239,129,190,247,24,125,239,152,190,247,125,
+  239,190,247,190,247,125,239,190,247,190,247,60,231,38,132,1,99,65,107,65,
+  107,0,99,2,99,195,90,5,99,1,99,68,99,122,239,255,255,126,231,190,
+  239,125,247,190,255,8,125,239,136,252,247,194,90,64,115,64,107,111,173,189,
+  239,126,239,190,247,80,125,239,136,190,247,77,107,12,99,207,123,243,156,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,112,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,4,125,239,4,190,247,27,125,239,149,190,
+  247,125,239,190,247,60,231,182,181,64,99,0,91,65,107,1,99,169,148,55,
+  239,188,255,125,247,179,230,239,172,190,255,127,239,127,239,254,247,124,239,188,
+  247,9,125,239,135,196,98,64,115,0,107,175,173,125,239,126,239,190,255,81,
+  125,239,135,12,99,203,90,207,123,52,165,56,198,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,220,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,32,125,239,152,190,239,126,239,190,247,189,239,125,239,190,247,250,255,133,
+  123,0,107,64,107,192,82,239,156,189,247,190,247,189,247,125,247,126,255,125,
+  247,190,239,191,239,126,247,126,247,125,247,189,239,3,126,247,189,125,239,191,
+  247,125,239,189,239,189,239,125,247,65,91,64,99,1,107,110,173,125,247,190,
+  239,125,239,63,239,62,247,127,247,127,247,126,231,126,231,126,247,189,255,62,
+  239,126,255,188,247,190,231,189,231,127,247,189,247,190,247,62,239,126,231,126,
+  239,190,247,126,247,126,247,191,247,125,223,190,239,125,239,190,255,125,247,126,
+  247,190,255,125,239,190,239,126,239,126,247,125,247,191,255,61,231,191,239,190,
+  239,125,247,189,239,190,247,62,247,126,247,125,231,190,239,125,239,125,247,33,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,222,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,32,125,239,216,190,239,126,239,190,247,125,239,125,231,125,239,246,222,2,
+  99,0,107,0,99,197,107,247,214,190,247,190,247,189,247,189,247,190,255,126,
+  247,126,231,125,231,190,255,189,255,57,239,51,190,111,165,111,165,116,206,121,
+  239,123,239,254,255,60,231,127,247,125,247,65,91,64,99,1,107,110,173,125,
+  247,190,239,125,239,252,255,251,255,122,247,188,247,190,239,126,231,190,247,123,
+  247,189,255,189,255,121,239,127,239,190,239,127,255,187,247,123,239,126,247,254,
+  255,187,239,182,214,182,214,58,239,124,239,191,239,189,247,123,239,248,222,181,
+  214,57,239,123,247,190,247,62,239,189,239,252,255,186,255,122,247,191,255,126,
+  239,60,239,58,239,181,206,247,222,123,247,254,255,190,239,125,231,126,239,126,
+  247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,222,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,32,125,239,216,190,239,126,239,190,247,125,239,190,239,125,239,242,
+  189,1,99,0,107,0,99,170,148,252,255,126,239,190,239,125,239,126,247,189,
+  247,190,247,190,239,190,247,187,255,111,181,134,115,194,82,129,99,0,91,66,
+  99,68,107,241,189,252,255,126,247,127,247,125,247,65,91,64,99,1,107,110,
+  173,125,247,190,239,125,239,193,82,193,90,196,98,112,173,124,239,190,247,124,
+  239,114,173,194,90,194,90,132,107,187,239,251,239,48,173,2,99,2,91,53,
+  206,246,222,105,132,1,91,1,99,194,98,109,148,189,255,246,222,136,115,129,
+  82,65,99,1,99,41,132,123,239,127,247,189,239,111,165,67,99,194,90,177,
+  181,58,239,43,132,3,91,1,83,194,90,40,132,52,206,254,255,126,239,126,
+  239,126,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,220,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,33,125,239,215,126,247,190,247,125,239,191,247,189,247,47,
+  165,1,107,0,99,66,99,110,173,124,247,62,239,190,247,125,239,126,247,189,
+  247,125,231,126,239,124,247,176,189,68,115,192,90,65,99,64,99,64,99,0,
+  91,66,107,67,107,115,206,190,255,254,230,125,247,65,91,64,99,1,107,110,
+  173,125,247,190,239,125,239,128,107,64,107,192,90,111,173,188,239,190,239,188,
+  247,48,165,65,107,0,99,194,90,189,247,253,255,48,181,65,107,64,99,42,
+  165,3,99,192,82,64,99,64,99,128,115,2,107,110,173,67,107,193,90,64,
+  99,128,99,64,99,64,99,177,181,189,247,125,239,46,165,1,99,0,99,40,
+  157,66,99,64,99,64,99,129,99,0,99,192,90,200,131,122,239,125,239,126,
+  239,190,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,222,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,32,125,239,216,189,239,190,247,190,247,125,239,190,239,125,
+  239,107,140,0,99,0,99,66,99,115,206,125,239,127,247,190,239,189,239,126,
+  239,189,239,125,231,255,255,248,230,68,115,0,99,0,99,1,99,199,123,198,
+  123,1,99,0,99,192,90,134,115,251,255,126,247,125,247,65,91,64,99,1,
+  107,110,173,125,247,190,239,125,239,0,99,64,107,1,99,112,181,189,247,125,
+  231,188,247,111,165,0,99,64,115,193,98,126,247,125,247,112,181,0,107,192,
+  90,64,107,2,99,194,82,132,107,64,107,64,107,192,98,66,107,1,99,2,
+  91,67,99,0,91,64,107,0,99,41,132,252,247,189,247,112,181,2,107,64,
+  107,64,99,64,99,0,91,1,99,1,91,64,107,64,107,2,107,181,214,189,
+  239,190,239,124,239,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,222,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,32,125,239,216,189,239,190,247,126,247,125,239,126,
+  239,124,247,41,132,0,99,64,107,193,90,181,214,126,247,127,247,125,231,189,
+  247,126,247,189,239,190,247,125,247,177,181,192,98,64,107,66,107,174,181,188,
+  255,186,255,201,139,66,107,64,99,131,107,116,206,190,255,125,247,65,91,64,
+  99,1,107,110,173,125,247,190,239,125,239,65,107,65,107,1,107,112,181,190,
+  247,126,239,253,247,111,165,64,107,64,107,192,90,190,247,189,247,110,181,64,
+  107,129,107,65,107,236,164,58,247,248,230,69,115,65,115,65,107,193,98,236,
+  164,120,239,56,231,135,115,1,107,1,107,196,98,188,247,188,247,112,181,194,
+  98,65,107,1,99,199,123,56,231,189,255,172,156,1,99,64,107,192,98,177,
+  189,124,239,190,247,188,239,33,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,222,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,32,125,239,216,189,239,126,247,125,247,190,
+  247,126,239,189,247,41,132,64,107,64,107,1,91,181,214,126,247,62,231,124,
+  231,189,239,190,247,125,239,126,239,59,239,105,140,128,107,64,99,195,90,123,
+  247,191,247,189,247,116,206,66,107,0,91,192,82,177,181,125,247,125,247,65,
+  91,64,99,1,107,110,173,125,247,190,239,125,239,0,99,0,99,1,99,111,
+  173,124,239,62,239,189,247,112,173,193,98,65,115,2,91,127,239,126,239,48,
+  181,1,99,194,98,2,99,120,239,126,247,126,255,173,156,1,99,64,107,1,
+  99,123,247,190,247,254,247,46,157,192,98,0,107,4,99,123,239,125,247,112,
+  181,66,115,64,115,2,99,121,239,190,247,127,247,57,231,195,98,0,99,64,
+  107,176,181,125,247,190,247,189,239,33,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,222,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,32,125,239,216,189,239,125,247,125,
+  247,190,247,126,239,189,247,41,132,64,107,64,99,67,107,117,206,191,247,126,
+  239,254,247,124,231,125,239,126,239,126,239,189,255,68,107,64,99,128,107,71,
+  115,127,247,126,223,189,239,55,231,1,91,64,99,65,99,107,132,126,247,125,
+  247,65,91,64,99,1,107,110,173,125,247,190,239,125,239,65,99,0,91,65,
+  107,110,173,125,247,127,247,125,247,48,173,1,99,128,107,64,91,125,231,189,
+  231,111,173,64,99,2,99,1,91,251,255,126,239,190,247,174,173,64,99,64,
+  99,65,99,125,247,126,239,125,231,110,165,128,107,64,107,193,82,252,247,127,
+  247,46,173,64,107,0,99,2,91,252,255,125,231,125,231,125,247,4,99,64,
+  107,64,99,46,165,126,247,127,247,126,239,33,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,220,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,215,190,247,125,
+  239,189,247,125,239,191,239,126,239,41,132,64,107,64,107,65,99,115,206,125,
+  247,127,239,126,239,125,239,190,255,189,239,125,239,252,255,1,91,65,115,1,
+  107,39,132,126,247,125,239,125,239,189,255,1,91,0,99,1,99,167,132,126,
+  239,189,255,64,91,64,107,193,98,111,173,124,239,188,239,190,239,0,107,0,
+  107,0,99,175,173,188,239,191,247,188,255,111,173,1,99,64,107,192,90,189,
+  247,189,239,112,173,64,107,0,107,65,99,125,255,126,239,188,239,111,173,64,
+  99,0,107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,
+  247,189,239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,
+  91,64,99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,220,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,215,126,239,125,
+  247,189,247,189,239,127,239,126,247,46,165,128,115,0,107,1,99,46,165,189,
+  247,127,239,190,239,190,247,125,239,125,231,191,247,188,247,192,90,64,107,1,
+  107,104,140,126,247,190,247,189,247,188,255,1,91,0,99,192,98,103,132,126,
+  247,190,255,64,91,64,107,2,107,176,181,190,247,125,239,125,239,0,107,65,
+  107,1,99,111,165,189,239,127,239,188,247,112,173,1,99,64,115,0,99,190,
+  247,125,231,47,165,64,99,0,107,65,99,125,255,126,239,188,239,111,173,64,
+  99,0,107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,
+  247,189,239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,
+  91,64,99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,220,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,215,126,239,126,
+  247,125,247,125,239,126,231,125,239,242,189,0,91,65,107,66,107,41,132,253,
+  255,126,239,125,231,190,247,191,247,126,231,126,239,123,239,67,107,64,115,0,
+  107,104,132,126,239,126,239,125,239,251,247,1,91,64,107,66,115,40,132,126,
+  247,62,247,64,91,64,107,193,98,48,173,191,247,190,239,125,231,0,99,0,
+  99,1,99,111,173,191,247,62,231,189,239,47,165,1,91,64,107,1,99,190,
+  247,189,239,112,165,64,99,0,107,65,99,125,255,126,239,188,239,111,173,64,
+  99,0,107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,
+  247,189,239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,
+  91,64,99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,218,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,33,125,239,214,126,239,125,
+  247,189,247,190,239,126,239,247,222,194,90,0,107,0,99,2,91,247,222,190,
+  247,125,239,125,231,62,231,126,239,190,247,189,247,68,107,0,107,65,107,133,
+  107,189,239,63,239,126,247,187,247,1,91,64,107,0,107,106,148,189,255,127,
+  247,0,83,64,99,67,107,47,165,61,239,125,231,191,247,65,107,0,99,65,
+  107,111,173,189,247,62,231,254,255,112,165,1,99,64,107,0,99,125,247,189,
+  239,112,173,64,107,64,107,65,99,125,255,126,239,188,239,111,173,64,99,0,
+  107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,
+  239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,
+  99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,220,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,32,125,239,215,125,231,126,247,125,
+  247,189,247,190,239,126,239,123,239,135,115,0,107,64,99,0,83,236,156,58,
+  231,254,255,190,247,126,239,189,247,122,231,124,247,41,132,64,107,65,107,194,
+  82,186,239,126,247,189,247,50,190,2,99,128,107,0,99,176,181,188,247,127,
+  247,0,91,64,99,2,107,46,165,254,255,253,247,61,239,0,91,0,99,65,
+  107,44,165,188,247,190,247,187,247,237,156,66,99,64,107,65,99,125,239,125,
+  239,48,165,64,99,64,107,65,99,125,255,126,239,188,239,111,173,64,99,0,
+  107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,
+  239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,
+  99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,220,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,32,125,239,215,190,239,190,247,126,
+  247,189,247,125,239,62,231,188,247,112,173,193,98,128,107,64,99,193,82,172,
+  148,181,214,185,247,252,255,242,197,172,148,185,222,241,189,64,99,0,99,1,
+  91,174,173,188,255,121,239,105,132,2,99,0,99,0,91,183,222,188,239,125,
+  247,65,91,0,99,1,107,169,148,119,239,121,231,190,255,133,115,1,99,192,
+  90,198,131,185,247,252,255,242,189,194,90,193,90,0,99,65,107,189,247,190,
+  239,112,173,64,99,64,107,65,99,125,255,126,239,188,239,111,173,64,99,0,
+  107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,
+  239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,
+  99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,220,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,32,125,239,215,189,231,126,247,126,
+  255,189,255,190,247,127,239,190,247,57,231,70,115,0,91,128,107,192,90,193,
+  90,4,107,3,99,3,99,2,107,193,90,180,189,247,222,66,99,1,99,130,
+  107,192,90,134,115,39,124,0,91,2,99,0,99,103,140,61,239,190,239,189,
+  247,66,99,193,106,1,107,0,99,67,99,200,115,125,247,200,115,2,99,64,
+  107,0,99,39,132,200,131,3,107,0,107,66,107,0,107,1,99,60,239,190,
+  239,112,173,64,107,0,107,65,99,125,255,126,239,188,239,111,173,64,99,0,
+  107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,
+  239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,
+  99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,220,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,32,125,239,215,190,239,126,239,125,
+  247,124,247,189,239,126,239,61,231,252,247,247,230,132,107,0,91,129,107,1,
+  107,65,107,0,99,0,99,0,115,65,107,240,156,251,255,171,165,1,99,0,
+  99,64,107,65,107,0,83,128,99,193,98,1,99,178,214,191,255,126,223,188,
+  255,196,115,2,115,1,107,64,99,64,99,134,107,189,255,176,181,2,99,64,
+  107,64,107,1,99,3,99,1,107,164,156,167,140,129,115,192,90,186,214,60,
+  223,112,173,64,99,0,107,65,99,125,255,126,239,188,239,111,173,64,99,0,
+  107,0,107,125,239,190,239,125,247,110,173,1,107,64,99,65,91,125,247,189,
+  239,111,173,1,107,64,107,65,99,125,247,189,239,126,239,125,247,65,91,64,
+  99,1,107,110,173,125,247,190,239,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,206,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,40,125,239,208,190,255,183,214,106,
+  132,2,91,65,99,64,99,0,99,0,107,0,91,133,107,178,173,190,255,125,
+  239,239,148,3,91,64,91,65,99,1,99,194,82,201,123,117,206,124,239,125,
+  239,190,239,126,247,183,214,198,115,192,82,65,99,193,82,137,107,188,239,186,
+  247,201,123,193,90,64,107,64,107,192,90,201,123,186,247,47,198,3,99,195,
+  90,50,198,185,255,47,173,4,99,1,91,5,83,121,231,254,255,123,247,111,
+  173,2,83,1,91,1,91,190,247,126,247,189,247,47,157,3,91,193,74,69,
+  99,186,247,188,239,113,165,196,82,2,83,68,99,185,247,189,255,127,247,186,
+  247,69,99,193,74,3,91,47,157,189,247,126,247,190,247,33,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,206,0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,
+  208,62,239,255,255,187,239,247,222,50,198,111,173,47,173,177,189,181,222,122,
+  247,254,255,190,247,126,239,124,247,248,230,50,198,46,173,176,189,116,206,121,
+  239,253,255,254,255,125,239,125,231,61,231,255,255,122,239,181,214,180,222,56,
+  239,123,239,189,247,190,247,123,239,181,214,110,173,110,173,117,214,58,231,190,
+  247,188,247,188,247,124,247,190,255,127,255,126,247,124,247,187,247,123,231,255,
+  255,255,238,127,247,190,255,187,247,251,255,188,255,126,239,62,239,127,247,124,
+  239,250,247,251,255,57,231,191,255,125,239,124,239,188,247,252,255,57,231,254,
+  255,61,239,127,247,191,255,57,231,251,255,250,247,124,239,127,247,62,239,126,
+  239,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,204,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,40,125,239,168,62,231,191,247,190,239,190,247,190,239,125,239,125,
+  239,126,247,126,255,126,247,125,239,125,239,189,239,190,255,190,255,126,255,189,
+  255,125,247,189,255,190,255,125,239,125,239,190,247,190,247,126,239,126,239,126,
+  255,191,255,61,247,190,255,190,247,124,231,127,231,191,247,125,239,125,247,125,
+  247,125,239,191,247,127,231,3,126,239,165,62,231,62,231,63,239,191,239,190,
+  247,253,247,125,239,62,231,127,247,190,247,254,255,125,247,126,247,190,239,127,
+  239,62,231,126,239,189,247,254,255,191,255,63,247,190,247,126,239,191,255,127,
+  247,191,255,126,247,62,239,190,247,63,247,191,255,254,255,189,247,126,239,62,
+  231,127,239,190,239,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,193,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,40,125,239,129,189,247,3,125,239,3,126,239,131,
+  126,231,126,247,126,239,4,189,239,154,126,247,127,247,191,247,62,239,126,239,
+  127,247,126,239,126,239,190,247,60,231,253,239,125,239,125,239,126,247,62,247,
+  125,239,189,239,188,239,125,231,126,239,61,231,191,255,191,255,61,231,126,239,
+  125,231,3,189,239,129,188,239,3,189,239,161,124,231,187,231,124,231,255,247,
+  189,247,188,239,253,247,125,239,126,247,188,239,190,239,126,231,191,247,125,239,
+  124,231,190,255,127,247,189,239,190,239,126,239,61,231,191,247,125,239,189,239,
+  124,231,127,247,190,255,124,231,125,239,191,247,126,231,190,239,188,239,33,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,200,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  40,125,239,132,188,247,189,247,190,255,190,255,3,125,239,137,189,239,125,239,
+  189,247,190,247,189,239,124,231,124,239,125,239,125,239,3,126,239,130,125,239,
+  125,239,3,190,247,184,124,231,189,247,190,247,125,239,190,255,190,247,125,239,
+  189,239,188,239,189,247,189,247,125,247,125,247,189,247,189,247,188,239,125,247,
+  190,247,190,247,125,247,124,239,125,247,190,247,126,247,190,239,126,239,127,239,
+  61,231,60,231,189,239,126,239,127,239,188,239,189,239,125,239,191,247,254,247,
+  188,239,188,239,124,239,125,231,190,247,189,239,189,239,124,231,188,239,253,247,
+  189,247,124,239,188,239,188,239,254,247,191,247,125,239,189,239,188,239,33,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,194,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  40,125,239,129,190,255,4,125,247,143,189,247,189,247,188,247,125,239,125,239,
+  126,239,127,239,127,239,126,239,125,239,189,247,124,239,189,239,189,247,189,239,
+  3,125,239,139,190,247,127,239,126,239,190,247,189,247,189,247,125,239,126,239,
+  127,247,125,247,125,247,4,126,247,169,125,247,125,247,189,255,125,247,61,239,
+  190,255,253,255,124,247,124,247,126,247,126,239,127,239,127,247,190,247,190,247,
+  125,239,125,239,190,239,125,239,126,247,127,247,61,231,125,239,125,239,189,239,
+  190,247,127,247,126,239,125,231,254,247,124,231,189,239,125,239,125,239,190,247,
+  189,239,125,239,125,239,61,231,127,247,126,247,34,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,198,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,42,125,239,143,126,239,
+  125,239,125,239,190,247,125,239,190,247,190,247,191,247,127,247,62,239,62,239,
+  191,247,190,247,125,239,125,247,3,189,247,157,125,239,189,247,190,239,125,239,
+  61,239,126,239,190,247,125,239,125,239,126,247,191,255,126,247,126,247,191,247,
+  190,247,125,239,125,239,190,247,191,247,190,247,188,239,189,247,190,247,125,239,
+  124,239,188,247,188,247,124,239,190,247,3,124,239,156,189,247,124,239,189,239,
+  189,239,126,247,126,247,190,247,125,239,190,247,191,247,190,247,125,239,190,255,
+  125,247,126,239,190,239,126,239,126,239,126,247,190,255,125,239,190,247,191,247,
+  190,247,125,239,190,247,126,247,126,247,33,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,206,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,208,190,231,190,231,
+  190,239,189,239,189,239,190,239,125,231,126,239,125,239,125,239,125,247,189,247,
+  189,247,125,247,125,239,190,247,125,247,125,247,126,247,125,247,125,239,125,239,
+  190,247,189,239,189,255,124,247,189,247,189,247,190,247,125,239,125,247,125,247,
+  126,231,126,239,125,231,189,239,189,239,125,231,126,239,126,239,189,239,126,239,
+  63,239,127,239,190,239,189,239,126,239,127,239,189,255,124,239,190,255,126,247,
+  126,239,126,239,190,247,125,239,190,255,189,247,189,255,189,247,189,247,125,239,
+  191,247,126,239,188,255,124,247,190,247,62,231,191,247,190,247,189,247,188,247,
+  126,239,191,247,125,239,189,247,189,247,189,255,189,247,190,255,33,125,239,135,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,
+  1,182,181,45,0,129,182,181,12,60,231,131,251,222,186,214,12,99,127,125,
+  239,26,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,0,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,134,0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,
+  133,190,247,125,239,125,239,190,247,190,247,4,125,239,133,190,247,125,239,190,
+  247,125,239,190,247,20,125,239,141,190,247,125,239,125,239,190,247,125,239,190,
+  247,190,247,125,239,190,247,190,247,125,239,125,239,190,247,9,125,239,143,60,
+  231,190,247,125,239,190,247,125,239,190,247,125,239,190,247,190,247,125,239,125,
+  239,190,247,125,239,190,247,190,247,42,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,152,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,40,125,239,145,190,247,125,239,190,
+  247,190,247,125,239,125,239,190,247,190,247,255,255,190,247,125,239,125,239,190,
+  247,190,247,125,239,190,247,125,239,4,190,247,131,125,239,125,239,190,247,8,
+  125,239,133,190,247,190,247,125,239,190,247,190,247,4,125,239,135,255,255,125,
+  239,60,231,125,239,190,247,125,239,190,247,8,125,239,129,190,247,3,125,239,
+  129,190,247,4,125,239,135,190,247,125,239,125,239,255,255,60,231,125,239,255,
+  255,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,143,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,41,125,239,130,190,247,190,247,3,125,239,3,190,247,137,117,173,
+  207,123,142,115,142,115,77,107,77,107,142,115,207,123,121,206,4,125,239,129,
+  190,247,10,125,239,132,190,247,125,239,125,239,52,165,3,142,115,136,77,107,
+  207,123,142,115,207,123,60,231,60,231,125,239,190,247,8,125,239,132,190,247,
+  125,239,190,247,125,239,3,190,247,130,52,165,77,107,4,142,115,131,207,123,
+  142,115,251,222,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,143,0,129,182,181,12,60,231,131,
+  251,222,186,214,12,99,41,125,239,132,190,247,125,239,125,239,190,247,4,125,
+  239,129,77,107,3,73,74,135,8,66,138,82,73,74,12,99,251,222,255,255,
+  125,239,3,190,247,10,125,239,142,190,247,190,247,125,239,12,99,73,74,8,
+  66,73,74,73,74,8,66,8,66,142,115,190,247,60,231,190,247,10,125,239,
+  135,190,247,190,247,125,239,125,239,255,255,251,222,138,82,4,73,74,132,8,
+  66,138,82,142,115,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,136,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,41,125,239,138,190,247,125,239,190,247,190,
+  247,125,239,190,247,190,247,247,189,73,74,8,66,4,73,74,137,8,66,182,
+  181,125,239,190,247,125,239,190,247,125,239,125,239,190,247,8,125,239,133,190,
+  247,60,231,190,247,117,173,8,66,6,73,74,133,56,198,190,247,125,239,125,
+  239,190,247,10,125,239,129,190,247,3,125,239,129,243,156,7,73,74,130,56,
+  198,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,146,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,41,125,239,136,190,247,125,239,190,247,125,239,125,239,190,
+  247,190,247,142,115,5,73,74,137,8,66,77,107,125,239,190,247,125,239,190,
+  247,190,247,125,239,190,247,9,125,239,132,190,247,125,239,125,239,12,99,4,
+  73,74,136,8,66,73,74,207,123,125,239,190,247,125,239,190,247,190,247,8,
+  125,239,135,190,247,125,239,190,247,60,231,190,247,60,231,203,90,4,73,74,
+  132,8,66,73,74,113,140,190,247,42,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,136,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,41,125,239,138,190,247,125,239,190,
+  247,125,239,125,239,190,247,186,214,73,74,73,74,138,82,4,73,74,129,117,
+  173,6,125,239,129,190,247,10,125,239,130,190,247,121,206,6,73,74,134,138,
+  82,56,198,125,239,190,247,125,239,190,247,9,125,239,137,190,247,125,239,190,
+  247,60,231,190,247,247,189,8,66,73,74,138,82,3,73,74,132,138,82,251,
+  222,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,124,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,43,125,239,133,190,247,125,239,190,247,125,239,117,
+  173,6,73,74,129,203,90,4,190,247,131,125,239,190,247,190,247,12,125,239,
+  131,178,148,73,74,8,66,4,73,74,133,77,107,125,239,190,247,60,231,255,
+  255,10,125,239,134,190,247,125,239,125,239,190,247,125,239,207,123,6,73,74,
+  132,77,107,125,239,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,116,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,45,125,239,138,190,247,125,239,12,
+  99,8,66,73,74,8,66,73,74,73,74,8,66,52,165,17,125,239,131,190,
+  247,125,239,12,99,5,73,74,134,199,57,56,198,125,239,190,247,125,239,190,
+  247,15,125,239,129,138,82,3,73,74,135,8,66,73,74,8,66,121,206,125,
+  239,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,121,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,40,125,239,3,190,247,135,125,239,125,239,190,247,
+  251,222,138,82,73,74,8,66,3,73,74,131,138,82,121,206,190,247,17,125,
+  239,131,121,206,138,82,8,66,4,73,74,133,138,82,251,222,125,239,190,247,
+  190,247,12,125,239,133,190,247,125,239,125,239,121,206,138,82,5,73,74,131,
+  203,90,60,231,190,247,43,125,239,135,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,120,0,129,182,181,12,60,
+  231,131,251,222,186,214,12,99,45,125,239,133,190,247,247,189,73,74,73,74,
+  8,66,3,73,74,131,77,107,190,247,190,247,17,125,239,131,117,173,8,66,
+  8,66,4,73,74,135,207,123,190,247,190,247,125,239,190,247,125,239,190,247,
+  10,125,239,132,190,247,125,239,125,239,243,156,6,73,74,133,48,132,190,247,
+  125,239,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,121,0,129,182,181,12,60,
+  231,131,251,222,186,214,12,99,40,125,239,4,190,247,132,125,239,125,239,243,
+  156,8,66,3,73,74,132,8,66,73,74,243,156,190,247,18,125,239,130,113,
+  140,8,66,5,73,74,131,52,165,190,247,190,247,3,125,239,130,190,247,190,
+  247,9,125,239,132,190,247,125,239,190,247,142,115,6,73,74,133,247,189,190,
+  247,125,239,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,114,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,40,125,239,129,190,247,5,125,239,129,207,
+  123,6,73,74,131,121,206,125,239,190,247,16,125,239,130,190,247,142,115,6,
+  73,74,129,186,214,4,125,239,131,190,247,125,239,190,247,8,125,239,133,190,
+  247,125,239,190,247,190,247,203,90,6,73,74,129,60,231,3,125,239,129,190,
+  247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,112,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,45,125,239,130,190,247,77,107,5,73,74,132,8,66,60,231,125,
+  239,190,247,17,125,239,129,203,90,5,73,74,135,138,82,125,239,125,239,190,
+  247,190,247,125,239,190,247,10,125,239,133,190,247,125,239,190,247,125,239,138,
+  82,5,73,74,132,138,82,190,247,125,239,190,247,43,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  109,0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,134,190,
+  247,190,247,125,239,190,247,125,239,125,239,3,73,74,132,8,66,8,66,73,
+  74,73,74,19,125,239,129,60,231,6,73,74,131,12,99,190,247,125,239,4,
+  190,247,10,125,239,132,190,247,125,239,190,247,251,222,6,73,74,130,77,107,
+  190,247,45,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,121,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,41,125,239,134,190,247,125,239,190,247,125,239,125,239,8,66,
+  5,73,74,129,12,99,3,190,247,16,125,239,130,251,222,8,66,3,73,74,
+  138,8,66,73,74,142,115,125,239,190,247,125,239,125,239,190,247,125,239,190,
+  247,11,125,239,130,190,247,121,206,6,73,74,133,48,132,125,239,190,247,60,
+  231,190,247,42,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,111,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,40,125,239,3,190,247,133,125,239,190,247,125,239,73,74,
+  8,66,4,73,74,131,142,115,190,247,190,247,17,125,239,129,56,198,5,73,
+  74,130,8,66,142,115,19,125,239,132,56,198,73,74,73,74,8,66,3,73,
+  74,134,243,156,190,247,190,247,125,239,190,247,190,247,41,125,239,135,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,
+  181,112,0,129,182,181,12,60,231,131,251,222,186,214,12,99,41,125,239,134,
+  190,247,125,239,190,247,190,247,251,222,138,82,5,73,74,132,142,115,125,239,
+  190,247,190,247,16,125,239,129,56,198,3,73,74,132,8,66,73,74,73,74,
+  178,148,16,125,239,132,190,247,190,247,125,239,56,198,6,73,74,129,243,156,
+  3,125,239,129,190,247,42,125,239,135,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,101,0,129,182,181,12,60,
+  231,131,251,222,186,214,12,99,41,125,239,133,190,247,125,239,190,247,125,239,
+  121,206,6,73,74,132,142,115,125,239,125,239,190,247,16,125,239,129,56,198,
+  6,73,74,129,243,156,16,125,239,3,190,247,129,56,198,6,73,74,132,243,
+  156,125,239,125,239,190,247,43,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,112,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,41,125,239,129,190,247,3,125,239,130,121,
+  206,8,66,5,73,74,132,142,115,190,247,125,239,190,247,16,125,239,132,121,
+  206,73,74,73,74,8,66,3,73,74,129,243,156,18,125,239,130,190,247,56,
+  198,3,73,74,135,8,66,73,74,73,74,243,156,190,247,125,239,190,247,43,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,106,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,40,125,239,134,190,247,125,239,190,247,125,239,190,247,60,231,6,73,74,
+  132,142,115,190,247,125,239,190,247,16,125,239,129,56,198,5,73,74,130,8,
+  66,48,132,19,125,239,129,56,198,6,73,74,134,243,156,190,247,125,239,190,
+  247,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,108,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,40,125,239,134,190,247,125,239,190,247,125,239,190,
+  247,190,247,6,73,74,130,77,107,190,247,18,125,239,129,121,206,5,73,74,
+  130,8,66,142,115,16,125,239,133,190,247,125,239,125,239,56,198,8,66,5,
+  73,74,130,178,148,190,247,3,125,239,129,190,247,41,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  118,0,129,182,181,12,60,231,131,251,222,186,214,12,99,42,125,239,134,190,
+  247,125,239,190,247,125,239,73,74,8,66,4,73,74,131,203,90,125,239,190,
+  247,18,125,239,135,138,82,73,74,73,74,8,66,73,74,138,82,142,115,16,
+  125,239,134,190,247,125,239,190,247,121,206,73,74,8,66,4,73,74,134,207,
+  123,190,247,190,247,125,239,190,247,190,247,41,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,108,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,44,125,239,131,190,247,125,
+  239,138,82,4,73,74,132,8,66,138,82,125,239,190,247,17,125,239,131,190,
+  247,73,74,8,66,3,73,74,130,8,66,203,90,18,125,239,131,190,247,186,
+  214,138,82,4,73,74,134,8,66,142,115,125,239,190,247,125,239,190,247,42,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,126,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,42,125,239,140,190,247,125,239,190,247,190,247,77,107,73,74,138,82,8,
+  66,138,82,8,66,73,74,186,214,18,125,239,130,190,247,203,90,3,73,74,
+  136,8,66,73,74,73,74,60,231,255,255,60,231,125,239,190,247,12,125,239,
+  131,190,247,190,247,125,239,5,73,74,135,8,66,73,74,125,239,190,247,125,
+  239,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,112,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,43,125,239,132,190,247,125,239,125,239,48,132,5,
+  73,74,132,138,82,117,173,125,239,190,247,17,125,239,129,142,115,6,73,74,
+  132,56,198,125,239,190,247,190,247,13,125,239,133,190,247,125,239,190,247,12,
+  99,138,82,5,73,74,133,186,214,125,239,125,239,190,247,190,247,41,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,114,0,129,182,181,12,60,231,131,251,222,186,214,12,99,43,
+  125,239,132,190,247,125,239,125,239,117,173,6,73,74,130,48,132,190,247,18,
+  125,239,129,243,156,6,73,74,130,178,148,125,239,3,190,247,130,125,239,190,
+  247,9,125,239,134,190,247,190,247,125,239,190,247,48,132,138,82,5,73,74,
+  133,52,165,125,239,125,239,190,247,190,247,41,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,122,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,135,190,247,125,
+  239,125,239,190,247,125,239,125,239,121,206,5,73,74,130,8,66,12,99,19,
+  125,239,131,56,198,73,74,8,66,4,73,74,135,77,107,190,247,125,239,60,
+  231,255,255,125,239,255,255,9,125,239,133,190,247,190,247,125,239,125,239,182,
+  181,6,73,74,129,207,123,3,125,239,129,190,247,41,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  124,0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,136,190,
+  247,125,239,125,239,190,247,125,239,125,239,60,231,138,82,6,73,74,130,56,
+  198,190,247,16,125,239,132,190,247,251,222,73,74,8,66,5,73,74,134,186,
+  214,190,247,125,239,190,247,125,239,190,247,10,125,239,133,190,247,190,247,125,
+  239,186,214,8,66,4,73,74,132,8,66,203,90,251,222,190,247,43,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,130,0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,
+  125,239,130,190,247,190,247,3,125,239,131,190,247,190,247,207,123,5,73,74,
+  131,8,66,113,140,190,247,16,125,239,132,190,247,125,239,77,107,8,66,4,
+  73,74,134,8,66,178,148,190,247,190,247,125,239,190,247,11,125,239,142,190,
+  247,190,247,125,239,125,239,12,99,73,74,73,74,8,66,73,74,8,66,8,
+  66,117,173,190,247,190,247,42,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,122,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,40,125,239,136,190,247,125,239,190,247,125,
+  239,125,239,190,247,190,247,182,181,5,73,74,131,8,66,203,90,186,214,18,
+  125,239,129,117,173,6,73,74,135,203,90,186,214,190,247,125,239,190,247,125,
+  239,190,247,9,125,239,133,190,247,125,239,190,247,125,239,243,156,5,73,74,
+  132,8,66,77,107,251,222,190,247,42,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,124,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,40,125,239,129,190,247,5,125,239,
+  138,190,247,251,222,138,82,73,74,73,74,138,82,8,66,73,74,8,66,52,
+  165,18,125,239,133,186,214,138,82,8,66,138,82,8,66,3,73,74,134,52,
+  165,125,239,190,247,125,239,190,247,190,247,9,125,239,133,190,247,125,239,190,
+  247,125,239,121,206,6,73,74,130,8,66,56,198,43,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  138,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,132,113,
+  140,73,74,73,74,8,66,3,73,74,135,203,90,60,231,125,239,190,247,190,
+  247,125,239,190,247,10,125,239,134,190,247,125,239,190,247,207,123,73,74,8,
+  66,3,73,74,133,138,82,73,74,125,239,125,239,190,247,11,125,239,134,190,
+  247,125,239,125,239,190,247,60,231,207,123,6,73,74,136,203,90,190,247,125,
+  239,125,239,190,247,125,239,125,239,190,247,36,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,148,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,140,186,214,73,
+  74,73,74,138,82,73,74,8,66,73,74,73,74,178,148,190,247,60,231,190,
+  247,3,125,239,129,190,247,8,125,239,141,190,247,125,239,125,239,247,189,73,
+  74,138,82,8,66,73,74,73,74,8,66,73,74,243,156,190,247,11,125,239,
+  136,190,247,125,239,190,247,190,247,125,239,190,247,117,173,8,66,5,73,74,
+  133,138,82,52,165,190,247,125,239,190,247,3,125,239,130,190,247,190,247,34,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,139,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,48,125,239,131,190,247,113,140,8,66,5,73,74,136,138,82,186,214,125,
+  239,190,247,190,247,125,239,190,247,190,247,9,125,239,132,190,247,125,239,190,
+  247,207,123,4,73,74,134,8,66,138,82,203,90,60,231,125,239,190,247,9,
+  125,239,4,190,247,135,125,239,190,247,60,231,77,107,73,74,73,74,8,66,
+  3,73,74,129,12,99,4,125,239,132,190,247,125,239,190,247,190,247,34,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,154,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  49,125,239,131,251,222,138,82,8,66,4,73,74,135,8,66,48,132,190,247,
+  125,239,190,247,125,239,190,247,9,125,239,144,190,247,125,239,190,247,190,247,
+  56,198,8,66,138,82,73,74,73,74,138,82,73,74,8,66,243,156,190,247,
+  125,239,190,247,9,125,239,150,190,247,125,239,190,247,190,247,125,239,255,255,
+  182,181,73,74,138,82,8,66,73,74,73,74,8,66,73,74,182,181,190,247,
+  190,247,125,239,190,247,125,239,190,247,190,247,34,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,144,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,49,125,239,133,190,247,
+  113,140,73,74,73,74,8,66,4,73,74,133,251,222,190,247,125,239,125,239,
+  190,247,9,125,239,134,190,247,125,239,190,247,125,239,125,239,207,123,6,73,
+  74,130,203,90,251,222,11,125,239,151,190,247,125,239,125,239,190,247,60,231,
+  190,247,60,231,12,99,8,66,73,74,73,74,8,66,73,74,73,74,203,90,
+  60,231,190,247,125,239,190,247,125,239,190,247,125,239,190,247,33,125,239,135,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,
+  1,182,181,134,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,
+  239,132,190,247,125,239,186,214,138,82,5,73,74,135,8,66,243,156,255,255,
+  125,239,190,247,125,239,190,247,9,125,239,133,190,247,125,239,190,247,125,239,
+  121,206,7,73,74,130,182,181,190,247,11,125,239,129,190,247,3,125,239,140,
+  190,247,190,247,117,173,8,66,73,74,73,74,8,66,73,74,8,66,73,74,
+  247,189,190,247,5,125,239,129,190,247,33,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,136,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,49,125,239,133,190,247,190,247,
+  48,132,73,74,138,82,4,73,74,134,12,99,60,231,125,239,190,247,125,239,
+  190,247,11,125,239,132,190,247,125,239,190,247,207,123,6,73,74,131,142,115,
+  125,239,190,247,8,125,239,134,190,247,125,239,190,247,190,247,125,239,190,247,
+  3,125,239,131,77,107,73,74,138,82,3,73,74,130,138,82,207,123,3,125,
+  239,130,190,247,190,247,35,125,239,135,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,141,0,129,182,181,12,60,
+  231,131,251,222,186,214,12,99,48,125,239,132,190,247,125,239,190,247,186,214,
+  6,73,74,133,8,66,56,198,125,239,125,239,190,247,11,125,239,142,255,255,
+  60,231,255,255,60,231,56,198,73,74,8,66,73,74,8,66,73,74,73,74,
+  8,66,186,214,190,247,8,125,239,138,190,247,190,247,125,239,190,247,125,239,
+  190,247,125,239,190,247,190,247,117,173,5,73,74,133,8,66,73,74,60,231,
+  190,247,125,239,3,190,247,34,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,122,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,49,125,239,132,190,247,125,239,125,239,207,
+  123,5,73,74,134,138,82,207,123,190,247,125,239,125,239,190,247,8,125,239,
+  136,190,247,125,239,125,239,190,247,125,239,190,247,125,239,12,99,6,73,74,
+  130,243,156,126,239,17,125,239,130,190,247,12,99,6,73,74,134,117,173,190,
+  247,125,239,190,247,125,239,190,247,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,124,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,48,125,239,133,190,247,125,239,125,
+  239,190,247,182,181,6,73,74,131,77,107,60,231,190,247,11,125,239,136,190,
+  247,125,239,190,247,125,239,190,247,190,247,52,165,8,66,4,73,74,131,8,
+  66,77,107,61,231,16,125,239,131,190,247,125,239,178,148,6,73,74,135,48,
+  132,125,239,125,239,190,247,125,239,190,247,190,247,33,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  128,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,134,190,
+  247,125,239,125,239,190,247,60,231,203,90,4,73,74,133,8,66,138,82,186,
+  214,190,247,190,247,10,125,239,130,190,247,190,247,3,125,239,130,190,247,60,
+  231,4,73,74,132,138,82,9,74,74,74,60,231,16,125,239,131,190,247,125,
+  239,121,206,6,73,74,135,203,90,60,231,190,247,125,239,190,247,125,239,190,
+  247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,114,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,52,125,239,130,190,247,207,123,6,73,74,131,182,181,125,239,190,
+  247,13,125,239,135,190,247,125,239,125,239,190,247,77,107,8,66,9,66,4,
+  73,74,129,57,198,16,125,239,134,190,247,125,239,190,247,203,90,73,74,8,
+  66,3,73,74,133,8,66,251,222,190,247,125,239,190,247,35,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,116,0,129,182,181,12,60,231,131,251,222,186,214,12,99,50,125,239,
+  132,190,247,125,239,125,239,52,165,6,73,74,132,243,156,125,239,190,247,190,
+  247,8,125,239,129,190,247,3,125,239,140,190,247,190,247,125,239,125,239,178,
+  148,73,74,9,66,73,74,9,74,73,74,73,74,52,165,17,125,239,131,190,
+  247,190,247,48,132,6,73,74,129,247,189,38,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,132,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,135,190,247,125,
+  239,190,247,190,247,60,231,121,206,8,66,5,73,74,132,48,132,125,239,125,
+  239,190,247,8,125,239,140,190,247,125,239,190,247,190,247,125,239,190,247,125,
+  239,125,239,182,181,138,82,73,74,74,74,3,73,74,129,113,140,17,125,239,
+  131,190,247,125,239,117,173,6,73,74,134,52,165,125,239,190,247,125,239,190,
+  247,190,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,121,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,48,125,239,134,190,247,125,239,125,239,190,247,125,239,60,
+  231,6,73,74,130,12,99,190,247,10,125,239,139,190,247,125,239,125,239,190,
+  247,125,239,190,247,125,239,190,247,121,206,9,74,9,74,3,73,74,130,9,
+  74,207,123,17,125,239,131,190,247,125,239,56,198,6,73,74,130,48,132,125,
+  239,4,190,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,117,0,129,182,181,12,60,231,131,
+  251,222,186,214,12,99,48,125,239,129,190,247,5,125,239,6,73,74,132,138,
+  82,190,247,125,239,190,247,8,125,239,130,190,247,190,247,3,125,239,133,190,
+  247,125,239,125,239,126,247,8,66,5,73,74,129,78,115,17,125,239,131,190,
+  247,190,247,186,214,6,73,74,134,142,115,125,239,190,247,125,239,125,239,190,
+  247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,99,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,49,125,239,134,190,247,190,247,125,239,190,247,125,239,203,90,6,
+  73,74,19,125,239,131,190,247,73,74,8,66,4,73,74,129,138,82,17,125,
+  239,131,190,247,125,239,125,239,6,73,74,132,142,115,125,239,125,239,190,247,
+  35,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,86,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,52,125,239,131,190,247,190,247,77,107,6,73,74,19,125,239,130,61,
+  231,138,82,4,73,74,130,9,66,73,74,20,125,239,6,73,74,132,142,115,
+  125,239,125,239,190,247,35,125,239,135,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,101,0,129,182,181,12,60,
+  231,131,251,222,186,214,12,99,48,125,239,135,190,247,190,247,125,239,190,247,
+  125,239,190,247,142,115,6,73,74,130,125,239,190,247,17,125,239,132,126,239,
+  13,107,138,82,9,66,4,73,74,19,125,239,129,190,247,6,73,74,132,142,
+  115,125,239,125,239,190,247,35,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,101,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,48,125,239,135,190,247,190,247,125,239,190,
+  247,125,239,190,247,142,115,6,73,74,19,125,239,133,190,247,77,107,138,82,
+  9,74,9,74,3,73,74,16,125,239,129,190,247,3,125,239,6,73,74,132,
+  142,115,125,239,125,239,190,247,35,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,93,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,51,125,239,132,190,247,125,239,190,247,
+  142,115,6,73,74,20,125,239,129,138,82,5,73,74,129,9,66,16,125,239,
+  132,190,247,125,239,190,247,125,239,6,73,74,132,142,115,125,239,125,239,190,
+  247,35,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,101,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,48,125,239,129,190,247,3,125,239,131,190,247,190,247,12,99,6,
+  73,74,19,125,239,132,126,239,73,74,73,74,74,74,3,73,74,129,74,74,
+  18,125,239,131,190,247,125,239,138,82,5,73,74,132,142,115,125,239,125,239,
+  190,247,35,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,105,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,48,125,239,3,190,247,132,125,239,190,247,125,239,138,82,6,
+  73,74,130,125,239,190,247,17,125,239,129,126,247,3,73,74,132,9,74,73,
+  74,73,74,12,99,17,125,239,131,190,247,125,239,251,222,6,73,74,132,142,
+  115,125,239,125,239,190,247,35,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,108,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,50,125,239,132,190,247,125,239,190,247,125,
+  239,5,73,74,132,138,82,138,82,190,247,190,247,17,125,239,130,251,222,8,
+  66,3,73,74,131,74,74,73,74,142,115,17,125,239,132,190,247,125,239,186,
+  214,8,66,5,73,74,132,142,115,125,239,125,239,190,247,35,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,118,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,
+  135,190,247,125,239,190,247,125,239,190,247,186,214,8,66,3,73,74,133,138,
+  82,8,66,207,123,190,247,190,247,10,125,239,136,190,247,125,239,190,247,190,
+  247,125,239,190,247,125,239,56,198,6,73,74,129,48,132,19,125,239,130,56,
+  198,8,66,5,73,74,131,243,156,125,239,190,247,36,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  117,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,134,190,
+  247,125,239,125,239,190,247,60,231,247,189,6,73,74,131,48,132,125,239,190,
+  247,9,125,239,3,190,247,134,125,239,125,239,190,247,190,247,125,239,117,173,
+  6,73,74,129,178,148,17,125,239,131,190,247,125,239,243,156,6,73,74,133,
+  117,173,125,239,190,247,125,239,190,247,34,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,107,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,51,125,239,131,190,247,125,239,
+  178,148,4,73,74,131,8,66,73,74,243,156,11,125,239,133,190,247,125,239,
+  190,247,125,239,125,239,3,190,247,129,207,123,5,73,74,130,8,66,247,189,
+  16,125,239,3,190,247,129,142,115,5,73,74,130,8,66,56,198,38,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,118,0,129,182,181,12,60,231,131,251,222,186,214,12,99,50,
+  125,239,132,190,247,125,239,190,247,203,90,6,73,74,131,121,206,125,239,190,
+  247,10,125,239,132,190,247,125,239,125,239,190,247,3,125,239,131,203,90,73,
+  74,8,66,3,73,74,130,8,66,251,222,16,125,239,135,190,247,60,231,60,
+  231,138,82,8,66,138,82,8,66,3,73,74,129,60,231,38,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,116,0,129,182,181,12,60,231,131,251,222,186,214,12,99,50,125,239,
+  132,190,247,125,239,251,222,8,66,5,73,74,132,138,82,125,239,125,239,190,
+  247,10,125,239,131,190,247,125,239,190,247,3,125,239,132,56,198,73,74,73,
+  74,8,66,3,73,74,129,203,90,19,125,239,137,117,173,73,74,8,66,138,
+  82,73,74,73,74,8,66,77,107,190,247,38,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,129,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,134,190,247,125,
+  239,125,239,190,247,243,156,8,66,5,73,74,132,77,107,190,247,125,239,190,
+  247,9,125,239,136,190,247,190,247,125,239,190,247,125,239,190,247,190,247,48,
+  132,3,73,74,133,138,82,73,74,8,66,48,132,190,247,16,125,239,131,190,
+  247,190,247,142,115,5,73,74,132,8,66,243,156,190,247,125,239,4,190,247,
+  33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,120,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,48,125,239,133,190,247,125,239,125,239,251,222,203,90,6,73,74,133,
+  117,173,190,247,125,239,190,247,190,247,11,125,239,133,190,247,125,239,190,247,
+  186,214,138,82,6,73,74,129,247,189,17,125,239,134,190,247,121,206,138,82,
+  73,74,73,74,8,66,3,73,74,129,121,206,3,125,239,130,190,247,190,247,
+  34,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,121,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,49,125,239,132,190,247,190,247,247,189,8,66,6,73,74,133,60,231,
+  125,239,190,247,125,239,190,247,9,125,239,4,190,247,131,125,239,117,173,8,
+  66,5,73,74,129,138,82,18,125,239,143,190,247,113,140,8,66,73,74,8,
+  66,138,82,73,74,73,74,203,90,190,247,125,239,190,247,125,239,125,239,190,
+  247,34,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,161,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,44,125,239,3,190,247,145,125,239,125,239,190,247,125,239,203,90,
+  73,74,138,82,8,66,73,74,73,74,8,66,48,132,125,239,190,247,190,247,
+  125,239,190,247,8,125,239,130,190,247,125,239,3,190,247,138,60,231,138,82,
+  73,74,73,74,8,66,138,82,73,74,138,82,48,132,190,247,10,125,239,138,
+  190,247,125,239,190,247,125,239,125,239,190,247,125,239,251,222,138,82,8,66,
+  3,73,74,137,8,66,73,74,52,165,60,231,190,247,125,239,190,247,125,239,
+  190,247,34,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,136,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,46,125,239,134,190,247,190,247,125,239,255,255,117,173,138,82,
+  6,73,74,132,247,189,190,247,125,239,190,247,12,125,239,132,190,247,125,239,
+  190,247,243,156,6,73,74,131,8,66,121,206,190,247,9,125,239,139,190,247,
+  125,239,190,247,125,239,190,247,190,247,125,239,190,247,113,140,8,66,138,82,
+  5,73,74,135,251,222,255,255,190,247,125,239,190,247,125,239,190,247,34,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,152,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  47,125,239,143,190,247,125,239,251,222,12,99,8,66,73,74,8,66,73,74,
+  73,74,8,66,142,115,125,239,190,247,125,239,190,247,11,125,239,134,190,247,
+  125,239,125,239,251,222,203,90,8,66,3,73,74,132,8,66,73,74,142,115,
+  255,255,10,125,239,139,190,247,125,239,190,247,125,239,125,239,190,247,190,247,
+  186,214,138,82,8,66,138,82,3,73,74,137,8,66,113,140,190,247,255,255,
+  125,239,125,239,190,247,125,239,190,247,34,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,150,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,43,125,239,130,190,247,190,247,
+  3,125,239,133,190,247,243,156,8,66,8,66,138,82,4,73,74,134,182,181,
+  190,247,125,239,190,247,125,239,190,247,9,125,239,133,190,247,190,247,125,239,
+  255,255,243,156,4,73,74,135,8,66,73,74,73,74,56,198,190,247,125,239,
+  190,247,10,125,239,129,190,247,3,125,239,133,190,247,113,140,73,74,73,74,
+  8,66,4,73,74,129,251,222,3,125,239,132,190,247,190,247,125,239,190,247,
+  34,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,150,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,40,125,239,133,190,247,125,239,125,239,190,247,190,247,4,125,239,129,
+  12,99,6,73,74,129,207,123,3,125,239,132,190,247,125,239,190,247,190,247,
+  8,125,239,133,190,247,125,239,190,247,251,222,203,90,6,73,74,132,142,115,
+  125,239,125,239,190,247,10,125,239,137,190,247,190,247,125,239,125,239,190,247,
+  186,214,73,74,73,74,138,82,4,73,74,129,113,140,3,190,247,134,125,239,
+  190,247,125,239,125,239,190,247,190,247,33,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,139,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,129,190,247,4,125,
+  239,3,190,247,129,182,181,6,73,74,137,8,66,247,189,190,247,125,239,190,
+  247,125,239,190,247,125,239,190,247,8,125,239,132,190,247,125,239,255,255,243,
+  156,7,73,74,132,56,198,125,239,125,239,190,247,11,125,239,134,190,247,60,
+  231,190,247,125,239,113,140,8,66,6,73,74,132,186,214,125,239,190,247,190,
+  247,3,125,239,130,190,247,190,247,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,152,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,40,125,239,130,190,247,190,247,3,
+  125,239,133,190,247,125,239,125,239,77,107,8,66,5,73,74,130,142,115,125,
+  239,3,190,247,130,125,239,190,247,10,125,239,132,190,247,125,239,125,239,12,
+  99,6,73,74,134,48,132,190,247,125,239,190,247,125,239,190,247,8,125,239,
+  144,190,247,125,239,190,247,125,239,190,247,186,214,203,90,73,74,73,74,8,
+  66,73,74,73,74,138,82,113,140,190,247,190,247,4,125,239,130,190,247,190,
+  247,35,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,142,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,41,125,239,135,190,247,190,247,125,239,125,239,190,247,125,239,251,
+  222,7,73,74,130,56,198,190,247,3,125,239,131,255,255,60,231,190,247,9,
+  125,239,132,190,247,125,239,56,198,8,66,6,73,74,133,251,222,125,239,190,
+  247,125,239,190,247,12,125,239,132,190,247,125,239,247,189,8,66,6,73,74,
+  139,251,222,125,239,125,239,190,247,190,247,125,239,125,239,190,247,125,239,125,
+  239,190,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,118,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,41,125,239,135,190,247,125,239,190,247,125,239,125,239,190,
+  247,178,148,3,73,74,133,8,66,73,74,8,66,77,107,60,231,17,125,239,
+  132,190,247,48,132,138,82,8,66,4,73,74,134,207,123,125,239,190,247,60,
+  231,125,239,190,247,13,125,239,131,255,255,77,107,138,82,5,73,74,129,113,
+  140,44,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,117,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,41,125,239,130,190,247,60,231,3,190,247,130,60,231,12,99,6,
+  73,74,130,117,173,255,255,16,125,239,132,190,247,125,239,12,99,8,66,5,
+  73,74,133,182,181,190,247,125,239,125,239,190,247,10,125,239,4,190,247,132,
+  251,222,138,82,73,74,8,66,4,73,74,131,56,198,125,239,190,247,42,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,122,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  40,125,239,135,190,247,190,247,125,239,190,247,125,239,190,247,251,222,7,73,
+  74,129,251,222,17,125,239,133,190,247,121,206,73,74,8,66,138,82,3,73,
+  74,134,203,90,60,231,190,247,60,231,190,247,190,247,11,125,239,132,60,231,
+  125,239,190,247,247,189,6,73,74,133,12,99,125,239,125,239,190,247,190,247,
+  41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,120,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,40,125,239,4,190,247,132,125,239,125,239,247,189,8,66,4,73,74,
+  131,8,66,142,115,255,255,17,125,239,141,190,247,117,173,8,66,73,74,73,
+  74,8,66,73,74,73,74,48,132,190,247,190,247,125,239,190,247,11,125,239,
+  4,190,247,129,243,156,4,73,74,133,8,66,8,66,243,156,125,239,190,247,
+  43,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,112,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,42,125,239,133,190,247,125,239,190,247,125,239,243,156,6,73,74,129,
+  243,156,18,125,239,131,60,231,113,140,8,66,5,73,74,132,182,181,125,239,
+  125,239,190,247,13,125,239,133,190,247,190,247,60,231,48,132,8,66,4,73,
+  74,133,138,82,56,198,125,239,190,247,190,247,42,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,125,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,42,125,239,136,190,247,
+  125,239,190,247,125,239,247,189,243,156,243,156,52,165,3,243,156,131,251,222,
+  125,239,190,247,16,125,239,137,190,247,182,181,243,156,52,165,243,156,243,156,
+  52,165,52,165,251,222,5,190,247,11,125,239,134,190,247,190,247,125,239,117,
+  173,243,156,52,165,4,243,156,129,60,231,3,125,239,129,190,247,41,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,115,0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,
+  125,239,3,190,247,131,125,239,125,239,190,247,7,125,239,129,190,247,18,125,
+  239,129,255,255,8,125,239,133,190,247,190,247,125,239,190,247,190,247,11,125,
+  239,143,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,247,190,247,
+  125,239,190,247,190,247,125,239,125,239,190,247,41,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,134,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,41,125,239,133,190,247,
+  125,239,190,247,125,239,125,239,3,190,247,134,125,239,190,247,125,239,190,247,
+  125,239,190,247,18,125,239,131,190,247,190,247,125,239,3,190,247,137,125,239,
+  190,247,125,239,190,247,125,239,190,247,125,239,190,247,190,247,9,125,239,129,
+  190,247,3,125,239,129,190,247,3,125,239,135,190,247,125,239,190,247,125,239,
+  190,247,125,239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,68,0,129,182,181,12,60,
+  231,131,251,222,186,214,12,99,33,125,239,134,190,247,125,239,190,247,125,239,
+  190,247,190,247,78,125,239,131,190,247,60,231,190,247,33,125,239,135,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,
+  181,56,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,130,
+  190,247,121,206,84,243,156,129,52,165,34,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,58,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,33,125,239,129,243,156,83,73,
+  74,131,8,66,138,82,60,231,33,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,70,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,32,125,239,130,190,247,243,156,4,73,
+  74,129,8,66,76,73,74,133,8,66,73,74,8,66,73,74,190,247,33,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,51,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  33,125,239,129,243,156,85,73,74,34,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,59,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,32,125,239,130,190,247,243,156,80,
+  73,74,129,138,82,4,73,74,34,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,63,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,32,125,239,132,190,247,243,156,73,74,
+  8,66,76,73,74,129,8,66,6,73,74,34,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,57,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,33,125,239,129,243,156,80,
+  73,74,129,8,66,4,73,74,34,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,60,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,33,125,239,131,243,156,73,74,138,82,
+  81,73,74,130,8,66,73,74,34,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,71,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,32,125,239,132,190,247,243,156,73,74,
+  138,82,76,73,74,132,8,66,73,74,73,74,8,66,3,73,74,33,125,239,
+  136,190,247,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,70,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,32,125,239,131,190,247,243,156,8,66,79,73,74,134,138,82,73,74,73,
+  74,8,66,73,74,190,247,32,125,239,136,190,247,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,66,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,33,125,239,130,52,165,138,82,77,
+  73,74,129,138,82,5,73,74,130,203,90,60,231,32,125,239,136,190,247,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,74,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,
+  131,190,247,125,239,60,231,77,190,247,136,125,239,190,247,190,247,125,239,190,
+  247,125,239,60,231,255,255,32,125,239,136,190,247,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,68,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,33,125,239,3,190,247,3,125,239,
+  129,190,247,73,125,239,129,190,247,3,125,239,130,190,247,190,247,34,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,68,0,129,182,181,12,60,231,131,251,222,186,214,12,99,37,
+  125,239,131,190,247,125,239,125,239,73,190,247,129,125,239,3,190,247,131,125,
+  239,190,247,190,247,33,125,239,135,12,99,203,90,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,70,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,32,125,239,129,190,247,3,125,239,130,190,247,190,
+  247,76,125,239,133,190,247,125,239,125,239,190,247,190,247,34,125,239,135,12,
+  99,203,90,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,77,0,129,182,181,12,60,231,138,251,222,186,214,12,99,121,206,125,
+  239,190,247,125,239,190,247,125,239,190,247,127,125,239,10,125,239,144,60,231,
+  255,255,125,239,125,239,190,247,125,239,125,239,190,247,121,206,77,107,138,82,
+  142,115,178,148,247,189,121,206,251,222,127,60,231,76,60,231,1,182,181,77,
+  0,129,182,181,12,60,231,138,251,222,186,214,77,107,121,206,125,239,125,239,
+  190,247,190,247,60,231,190,247,127,125,239,10,125,239,144,255,255,125,239,125,
+  239,190,247,125,239,125,239,190,247,125,239,121,206,77,107,203,90,142,115,178,
+  148,182,181,121,206,251,222,127,60,231,76,60,231,1,182,181,67,0,129,182,
+  181,12,60,231,134,251,222,186,214,142,115,52,165,190,247,190,247,3,125,239,
+  129,190,247,127,125,239,13,125,239,130,190,247,190,247,3,125,239,136,52,165,
+  12,99,203,90,142,115,178,148,182,181,121,206,251,222,127,60,231,76,60,231,
+  1,182,181,62,0,129,182,181,12,60,231,137,251,222,186,214,113,140,207,123,
+  60,231,190,247,60,231,255,255,190,247,127,125,239,12,125,239,7,190,247,136,
+  207,123,138,82,138,82,142,115,178,148,182,181,121,206,186,214,127,60,231,76,
+  60,231,1,182,181,79,0,129,182,181,11,60,231,136,251,222,251,222,186,214,
+  117,173,77,107,182,181,190,247,190,247,3,125,239,129,190,247,127,125,239,9,
+  125,239,144,190,247,125,239,190,247,190,247,60,231,190,247,190,247,247,189,12,
+  99,138,82,12,99,207,123,243,156,247,189,121,206,251,222,127,60,231,76,60,
+  231,1,182,181,67,0,129,182,181,11,60,231,3,251,222,136,56,198,48,132,
+  142,115,56,198,255,255,125,239,125,239,190,247,127,125,239,13,125,239,3,190,
+  247,138,56,198,142,115,138,82,138,82,12,99,48,132,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,65,0,129,182,181,13,60,231,134,
+  251,222,121,206,247,189,12,99,142,115,121,206,127,125,239,14,125,239,142,190,
+  247,125,239,190,247,190,247,56,198,48,132,203,90,73,74,203,90,142,115,113,
+  140,182,181,56,198,186,214,127,60,231,77,60,231,1,182,181,81,0,129,182,
+  181,8,60,231,129,251,222,4,60,231,137,186,214,121,206,247,189,52,165,77,
+  107,142,115,182,181,125,239,190,247,127,125,239,10,125,239,144,190,247,125,239,
+  125,239,190,247,247,189,142,115,203,90,73,74,138,82,77,107,48,132,52,165,
+  56,198,121,206,186,214,251,222,127,60,231,76,60,231,1,182,181,87,0,129,
+  182,181,13,60,231,144,251,222,251,222,121,206,182,181,178,148,142,115,12,99,
+  207,123,52,165,121,206,186,214,60,231,190,247,125,239,125,239,190,247,127,125,
+  239,3,125,239,143,121,206,56,198,52,165,207,123,12,99,138,82,73,74,138,
+  82,77,107,207,123,243,156,182,181,56,198,186,214,251,222,127,60,231,77,60,
+  231,1,182,181,81,0,129,182,181,13,60,231,142,251,222,251,222,186,214,56,
+  198,182,181,178,148,207,123,77,107,12,99,77,107,12,99,77,107,77,107,12,
+  99,4,77,107,127,12,99,132,12,99,12,99,77,107,12,99,3,138,82,136,
+  203,90,77,107,207,123,178,148,117,173,56,198,186,214,251,222,127,60,231,78,
+  60,231,1,182,181,69,0,129,182,181,14,60,231,141,251,222,251,222,121,206,
+  247,189,117,173,178,148,48,132,142,115,77,107,12,99,12,99,203,90,203,90,
+  127,12,99,9,12,99,137,77,107,77,107,142,115,48,132,243,156,117,173,56,
+  198,186,214,251,222,127,60,231,79,60,231,1,182,181,59,0,129,182,181,16,
+  60,231,136,251,222,121,206,56,198,182,181,52,165,178,148,113,140,48,132,127,
+  207,123,12,207,123,137,48,132,48,132,178,148,243,156,182,181,56,198,186,214,
+  251,222,251,222,127,60,231,79,60,231,1,182,181,52,0,129,182,181,16,60,
+  231,135,251,222,251,222,186,214,121,206,247,189,182,181,117,173,127,52,165,14,
+  52,165,133,117,173,182,181,247,189,56,198,186,214,3,251,222,127,60,231,79,
+  60,231,1,182,181,60,0,130,182,181,251,222,17,60,231,131,251,222,186,214,
+  121,206,3,56,198,131,247,189,247,189,56,198,3,247,189,129,56,198,127,247,
+  189,4,247,189,3,56,198,132,121,206,121,206,186,214,251,222,127,60,231,82,
+  60,231,1,182,181,47,0,130,182,181,251,222,14,60,231,130,251,222,251,222,
+  3,60,231,132,251,222,186,214,186,214,251,222,127,186,214,16,186,214,129,251,
+  222,127,60,231,82,60,231,130,251,222,182,181,41,0,130,182,181,251,222,14,
+  60,231,129,125,239,7,60,231,5,251,222,130,60,231,60,231,127,251,222,7,
+  251,222,127,60,231,86,60,231,130,251,222,182,181,29,0,130,182,181,186,214,
+  4,60,231,129,251,222,127,60,231,127,60,231,116,60,231,131,125,239,186,214,
+  182,181,39,0,133,56,198,56,198,60,231,60,231,251,222,127,60,231,127,60,
+  231,109,60,231,131,251,222,60,231,125,239,6,60,231,131,251,222,121,206,247,
+  189,29,0,134,186,214,182,181,251,222,125,239,251,222,125,239,127,60,231,127,
+  60,231,118,60,231,130,247,189,186,214,31,0,131,125,239,247,189,121,206,127,
+  60,231,127,60,231,111,60,231,129,125,239,8,60,231,131,121,206,182,181,190,
+  247,37,0,135,255,255,186,214,247,189,186,214,125,239,60,231,251,222,127,60,
+  231,127,60,231,114,60,231,133,125,239,251,222,182,181,186,214,255,255,41,0,
+  135,255,255,190,247,56,198,182,181,186,214,60,231,125,239,127,60,231,127,60,
+  231,112,60,231,135,125,239,60,231,186,214,182,181,56,198,255,255,255,255,45,
+  0,137,255,255,255,255,60,231,247,189,247,189,186,214,60,231,60,231,251,222,
+  127,60,231,127,60,231,110,60,231,135,251,222,121,206,247,189,247,189,190,247,
+  255,255,255,255,47,0,4,255,255,135,186,214,182,181,182,181,121,206,186,214,
+  251,222,251,222,127,60,231,127,60,231,103,60,231,129,125,239,3,251,222,132,
+  121,206,182,181,247,189,186,214,4,255,255,31,0,5,255,255,131,190,247,186,
+  214,247,189,127,182,181,127,182,181,110,182,181,131,56,198,186,214,190,247,5,
+  255,255
+};
+const GuiConst_INT8U GuiBitmap_7[21526] =
+{
+  124,1,185,0,50,0,5,255,255,131,190,247,121,206,56,198,7,182,181,129,
+  117,173,127,182,181,127,182,181,99,182,181,139,117,173,117,173,182,181,247,189,
+  186,214,125,239,255,255,255,255,190,247,255,255,255,255,47,0,3,255,255,133,
+  190,247,121,206,247,189,182,181,56,198,3,251,222,127,60,231,127,60,231,106,
+  60,231,137,186,214,56,198,247,189,247,189,121,206,190,247,255,255,190,247,255,
+  255,45,0,137,255,255,255,255,60,231,56,198,182,181,121,206,251,222,125,239,
+  251,222,127,60,231,127,60,231,110,60,231,135,251,222,121,206,182,181,56,198,
+  190,247,255,255,255,255,43,0,133,255,255,190,247,56,198,182,181,186,214,127,
+  60,231,127,60,231,111,60,231,138,251,222,60,231,60,231,125,239,60,231,251,
+  222,182,181,56,198,255,255,255,255,49,0,135,255,255,121,206,182,181,186,214,
+  125,239,60,231,251,222,127,60,231,127,60,231,108,60,231,139,125,239,125,239,
+  60,231,251,222,251,222,60,231,60,231,251,222,182,181,186,214,255,255,47,0,
+  134,190,247,247,189,121,206,60,231,60,231,251,222,127,60,231,127,60,231,108,
+  60,231,134,251,222,251,222,60,231,60,231,125,239,125,239,3,60,231,131,121,
+  206,182,181,190,247,33,0,136,121,206,182,181,251,222,60,231,251,222,60,231,
+  125,239,251,222,127,60,231,127,60,231,116,60,231,130,182,181,186,214,29,0,
+  131,56,198,56,198,125,239,3,60,231,129,251,222,127,60,231,127,60,231,117,
+  60,231,130,121,206,247,189,35,0,131,182,181,251,222,251,222,127,60,231,88,
+  60,231,129,125,239,127,60,231,6,60,231,129,251,222,25,60,231,130,251,222,
+  182,181,34,0,130,182,181,251,222,127,60,231,94,60,231,129,251,222,127,60,
+  231,131,60,231,125,239,125,239,24,60,231,130,251,222,182,181,21,0,130,182,
+  181,251,222,127,60,231,127,60,231,122,60,231,130,251,222,182,181,29,0,129,
+  182,181,127,60,231,91,60,231,129,251,222,127,60,231,7,60,231,129,125,239,
+  24,60,231,1,182,181,23,0,129,182,181,127,60,231,127,60,231,98,60,231,
+  3,251,222,23,60,231,1,182,181,46,0,129,182,181,127,60,231,88,60,231,
+  3,251,222,130,60,231,60,231,127,251,222,4,251,222,129,60,231,3,251,222,
+  132,60,231,60,231,251,222,251,222,19,60,231,1,182,181,47,0,129,182,181,
+  127,60,231,86,60,231,132,251,222,251,222,60,231,251,222,127,186,214,12,186,
+  214,135,121,206,186,214,251,222,186,214,186,214,251,222,251,222,15,60,231,1,
+  182,181,64,0,129,117,173,127,60,231,85,60,231,137,251,222,186,214,186,214,
+  178,148,207,123,77,107,12,99,12,99,77,107,127,12,99,5,12,99,3,77,
+  107,137,142,115,178,148,182,181,56,198,121,206,186,214,186,214,251,222,251,222,
+  13,60,231,1,182,181,75,0,129,182,181,127,60,231,81,60,231,142,251,222,
+  60,231,186,214,125,239,251,222,243,156,12,99,207,123,52,165,56,198,186,214,
+  60,231,190,247,190,247,127,125,239,5,125,239,139,186,214,56,198,52,165,48,
+  132,12,99,48,132,182,181,56,198,56,198,251,222,186,214,13,60,231,1,182,
+  181,82,0,129,182,181,127,60,231,80,60,231,142,251,222,125,239,251,222,60,
+  231,121,206,142,115,77,107,182,181,125,239,190,247,190,247,125,239,125,239,190,
+  247,127,125,239,3,125,239,3,190,247,141,125,239,190,247,125,239,251,222,56,
+  198,142,115,77,107,178,148,182,181,56,198,186,214,186,214,251,222,11,60,231,
+  1,182,181,79,0,129,182,181,127,60,231,81,60,231,141,251,222,60,231,251,
+  222,207,123,142,115,56,198,125,239,125,239,190,247,125,239,60,231,125,239,190,
+  247,127,125,239,5,125,239,130,190,247,125,239,3,190,247,138,125,239,56,198,
+  48,132,77,107,178,148,52,165,121,206,121,206,251,222,251,222,10,60,231,1,
+  182,181,64,0,129,182,181,127,60,231,83,60,231,133,113,140,142,115,121,206,
+  255,255,125,239,6,190,247,127,125,239,3,125,239,3,190,247,4,125,239,138,
+  190,247,255,255,56,198,142,115,142,115,113,140,117,173,56,198,186,214,251,222,
+  10,60,231,1,182,181,69,0,129,182,181,127,60,231,80,60,231,135,251,222,
+  60,231,247,189,77,107,182,181,190,247,60,231,127,125,239,10,125,239,129,190,
+  247,4,125,239,129,190,247,3,125,239,137,190,247,182,181,77,107,207,123,178,
+  148,182,181,121,206,186,214,251,222,9,60,231,1,182,181,86,0,129,182,181,
+  127,60,231,81,60,231,138,251,222,178,148,48,132,60,231,190,247,125,239,190,
+  247,190,247,125,239,190,247,3,125,239,130,190,247,190,247,127,125,239,132,125,
+  239,190,247,190,247,125,239,3,190,247,140,125,239,190,247,125,239,190,247,125,
+  239,207,123,77,107,48,132,52,165,247,189,186,214,251,222,9,60,231,1,182,
+  181,83,0,129,182,181,127,60,231,80,60,231,133,251,222,251,222,142,115,243,
+  156,190,247,3,125,239,4,190,247,131,125,239,125,239,190,247,127,125,239,134,
+  125,239,125,239,60,231,125,239,125,239,190,247,3,125,239,139,190,247,190,247,
+  125,239,190,247,243,156,12,99,142,115,178,148,117,173,121,206,251,222,9,60,
+  231,1,182,181,80,0,129,182,181,127,60,231,81,60,231,134,121,206,77,107,
+  121,206,190,247,125,239,190,247,6,125,239,130,190,247,190,247,127,125,239,138,
+  125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,247,125,239,125,239,
+  3,190,247,135,121,206,77,107,12,99,113,140,117,173,56,198,186,214,9,60,
+  231,1,182,181,123,0,129,182,181,127,60,231,81,60,231,134,121,206,12,99,
+  251,222,125,239,125,239,190,247,25,125,239,136,190,247,125,239,190,247,126,239,
+  126,239,125,239,191,247,125,239,3,125,247,134,189,255,189,255,125,247,189,239,
+  189,239,125,239,3,190,247,12,125,239,3,125,247,133,189,247,254,247,125,239,
+  126,247,127,247,24,125,239,3,125,247,133,189,247,254,247,125,239,126,247,127,
+  247,51,125,239,136,186,214,12,99,12,99,48,132,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,127,0,129,182,181,127,60,231,80,60,231,132,251,
+  222,121,206,12,99,60,231,3,190,247,26,125,239,145,190,247,190,247,126,239,
+  190,247,126,239,126,239,190,247,127,239,127,239,126,239,126,239,125,239,125,239,
+  190,239,125,239,190,247,190,247,14,125,239,135,190,255,125,247,189,247,124,239,
+  125,239,190,247,190,247,25,125,239,135,190,255,125,247,189,247,124,239,125,239,
+  190,247,190,247,50,125,239,138,190,247,125,239,251,222,77,107,12,99,48,132,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,130,0,129,182,181,127,
+  60,231,80,60,231,132,251,222,121,206,77,107,125,239,3,190,247,25,125,239,
+  145,190,247,190,247,61,239,125,239,190,255,189,255,124,239,189,247,126,231,126,
+  231,190,239,190,247,125,247,190,247,127,247,62,231,190,247,15,125,239,136,190,
+  247,60,231,189,247,190,247,126,239,190,239,125,239,189,239,24,125,239,136,190,
+  247,60,231,189,247,190,247,126,239,190,239,125,239,189,239,48,125,239,3,190,
+  247,136,60,231,77,107,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,138,0,129,182,181,127,60,231,80,60,231,135,251,222,186,214,
+  77,107,125,239,125,239,190,247,190,247,25,125,239,144,61,239,126,239,190,247,
+  254,255,186,239,55,231,181,214,181,214,181,206,116,198,246,222,186,247,252,255,
+  124,247,125,239,191,247,3,125,239,130,190,247,190,247,12,125,239,135,190,247,
+  190,247,126,247,62,239,191,247,189,239,188,231,25,125,239,135,190,247,190,247,
+  126,247,62,239,191,247,189,239,188,231,48,125,239,139,190,247,125,239,190,247,
+  125,239,77,107,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,144,0,129,182,181,127,60,231,80,60,231,131,251,222,186,214,77,107,
+  3,125,239,130,190,247,190,247,24,125,239,144,126,239,190,247,125,247,117,198,
+  4,91,193,82,193,82,2,91,0,99,65,107,1,99,2,99,106,148,182,214,
+  188,247,190,247,3,125,239,133,190,247,190,247,125,239,125,239,190,247,8,125,
+  239,136,127,239,190,247,125,239,190,255,127,247,127,247,126,239,254,247,24,125,
+  239,136,127,239,190,247,125,239,190,255,127,247,127,247,126,239,254,247,50,125,
+  239,137,190,247,125,239,77,107,203,90,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,129,0,129,182,181,127,60,231,80,60,231,135,251,222,
+  186,214,12,99,190,247,125,239,125,239,190,247,26,125,239,143,190,247,254,255,
+  181,206,1,83,64,91,64,99,0,99,64,115,0,107,64,107,64,107,193,98,
+  4,99,237,156,251,255,3,190,247,4,125,239,129,190,247,8,125,239,135,62,
+  239,189,247,187,247,252,255,60,247,127,247,61,231,25,125,239,135,62,239,189,
+  247,187,247,252,255,60,247,127,247,61,231,53,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,138,0,129,182,181,
+  127,60,231,80,60,231,135,251,222,186,214,12,99,190,247,125,239,190,247,190,
+  247,25,125,239,138,126,239,126,247,124,247,181,214,66,91,64,99,0,99,2,
+  107,3,99,2,99,3,65,107,134,0,99,67,107,44,165,125,239,125,239,190,
+  247,3,125,239,130,190,247,190,247,8,125,239,136,255,255,121,239,114,198,235,
+  156,173,148,124,247,190,255,190,239,24,125,239,136,255,255,121,239,114,198,235,
+  156,173,148,124,247,190,255,190,239,52,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,146,0,129,182,181,127,60,
+  231,80,60,231,135,251,222,251,222,12,99,190,247,125,239,190,247,190,247,26,
+  125,239,150,190,247,124,239,182,214,3,99,192,90,1,107,170,164,118,198,246,
+  214,239,181,132,115,0,99,64,107,0,91,65,107,251,222,125,239,190,247,125,
+  239,125,239,190,247,190,247,9,125,239,136,124,239,107,132,1,91,0,91,40,
+  132,187,255,124,247,189,239,24,125,239,136,124,239,107,132,1,91,0,91,40,
+  132,187,255,124,247,189,239,48,125,239,139,190,247,125,239,190,247,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,246,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,27,125,239,176,189,247,126,239,189,247,118,214,64,99,0,107,1,99,110,
+  173,126,247,189,247,189,247,58,223,42,124,0,83,64,107,1,107,234,140,254,
+  255,60,239,127,247,126,239,124,231,191,255,124,239,252,255,60,239,127,247,126,
+  239,190,239,127,239,61,239,188,247,126,247,40,132,0,107,64,107,40,132,125,
+  247,190,247,62,231,253,239,125,231,127,239,127,239,127,247,191,255,125,239,126,
+  247,3,126,239,173,190,239,125,239,189,247,190,247,126,239,127,231,190,239,190,
+  247,189,247,189,247,190,247,126,239,125,231,126,247,40,132,0,107,64,107,40,
+  132,125,247,190,247,62,231,252,239,125,231,191,247,62,239,126,247,125,247,126,
+  255,126,255,189,247,126,239,127,239,125,247,189,247,125,239,61,239,254,247,127,
+  247,61,231,126,239,191,247,62,239,191,247,125,239,189,239,25,125,239,138,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,
+  60,231,1,182,181,248,0,129,182,181,127,60,231,80,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,64,
+  99,0,107,1,99,110,173,126,247,125,239,190,247,253,247,51,198,66,99,64,
+  99,0,107,67,99,188,255,190,255,127,239,125,239,253,255,124,239,117,206,109,
+  165,176,181,51,190,56,223,188,247,126,247,191,255,189,247,123,247,169,148,193,
+  106,0,107,105,148,123,239,188,247,190,255,61,231,190,247,190,255,124,247,57,
+  231,242,181,111,173,176,173,117,206,187,247,254,255,124,239,190,247,125,239,125,
+  239,190,247,253,255,183,222,113,181,47,173,112,181,52,206,122,239,252,255,123,
+  247,169,148,193,106,0,107,105,148,123,239,188,247,190,255,189,239,125,239,126,
+  247,254,255,121,239,241,189,176,181,46,165,116,198,58,239,125,247,189,247,125,
+  247,191,255,254,255,122,239,187,247,252,255,253,255,122,239,117,206,247,214,188,
+  247,190,247,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,248,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,224,189,
+  247,126,239,189,247,118,214,64,99,0,107,1,99,110,173,190,247,125,239,126,
+  239,190,247,187,247,133,115,0,99,0,107,1,91,184,222,191,247,126,239,253,
+  255,180,214,71,115,3,99,130,107,192,82,192,82,132,107,176,173,189,255,125,
+  239,50,165,3,91,0,91,0,107,64,107,0,91,69,107,2,91,40,132,63,
+  239,255,255,122,247,45,165,67,99,193,82,65,99,64,91,2,91,40,132,55,
+  231,189,255,126,239,126,239,254,255,57,231,37,132,66,107,65,107,0,99,64,
+  107,65,107,68,107,170,148,3,91,0,91,0,107,64,107,0,91,69,107,2,
+  91,40,132,62,231,255,255,187,247,111,181,133,115,0,91,0,91,130,107,193,
+  82,135,115,113,181,252,255,189,247,60,239,54,198,5,91,194,82,175,181,244,
+  222,69,107,66,99,128,74,182,214,126,247,25,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,248,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,64,99,0,107,1,
+  99,110,173,190,247,189,247,126,239,61,231,254,255,105,140,1,99,64,107,65,
+  99,117,206,253,230,125,239,246,222,132,115,1,99,0,99,192,90,0,99,64,
+  99,0,91,68,107,244,197,252,255,49,157,1,91,64,99,1,107,64,107,0,
+  91,2,91,0,91,103,148,127,239,188,247,236,156,66,107,0,91,65,99,0,
+  99,64,107,64,99,0,99,41,140,187,255,127,247,61,231,252,255,136,115,65,
+  115,1,107,193,106,1,107,66,107,128,90,69,115,110,181,1,91,64,99,1,
+  107,64,107,0,91,2,91,0,91,103,148,63,239,189,247,112,181,66,107,192,
+  90,64,107,0,99,0,99,128,107,192,90,134,115,51,198,189,247,125,239,181,
+  214,192,82,66,99,132,115,196,123,0,107,64,107,2,99,186,255,125,247,25,
+  125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,8,60,231,1,182,181,248,0,129,182,181,127,60,231,80,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,
+  247,118,214,64,99,0,107,1,99,110,173,126,239,189,247,190,247,62,239,190,
+  255,46,165,1,99,64,107,0,99,47,165,191,255,123,239,40,132,0,99,0,
+  99,131,115,238,172,45,173,1,99,64,99,0,99,200,123,251,255,112,157,65,
+  91,64,99,0,107,64,107,0,83,66,99,64,99,166,148,190,247,51,198,192,
+  98,64,107,192,90,105,140,109,181,198,131,128,115,192,98,3,107,52,206,125,
+  247,254,255,176,173,1,91,64,107,64,99,2,99,38,124,103,132,132,107,170,
+  148,175,173,65,91,64,99,0,107,64,107,0,83,66,99,64,99,166,148,191,
+  255,248,222,3,99,0,99,64,107,194,98,40,140,135,123,64,107,64,107,192,
+  98,135,115,188,239,190,247,180,206,64,99,192,98,66,107,0,107,65,107,193,
+  90,197,90,188,255,190,255,25,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,248,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,
+  125,239,224,189,247,126,239,189,247,118,214,64,99,0,107,1,99,110,173,126,
+  247,125,239,190,239,191,247,125,247,112,181,1,99,64,107,0,99,176,181,61,
+  239,247,222,0,91,0,107,65,107,240,189,126,247,188,255,237,172,65,115,64,
+  107,194,90,185,239,56,215,117,206,39,132,131,98,2,107,40,132,117,206,181,
+  214,248,230,188,231,236,156,0,107,0,107,199,123,121,239,189,255,123,247,192,
+  98,129,115,193,98,238,164,189,239,188,239,40,132,128,107,192,90,195,90,243,
+  189,123,239,188,247,187,247,59,231,251,230,117,206,39,132,131,98,2,107,40,
+  132,117,206,181,214,248,230,125,247,176,181,64,99,64,107,66,107,47,181,123,
+  255,188,247,102,140,64,107,64,107,2,99,248,222,190,247,117,214,64,107,66,
+  115,192,98,67,115,109,173,55,231,115,181,125,247,125,247,25,125,239,138,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,
+  60,231,1,182,181,248,0,129,182,181,127,60,231,80,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,64,
+  99,0,107,1,99,110,173,191,247,124,239,188,239,126,239,125,247,47,173,1,
+  99,64,107,0,99,110,173,126,247,176,181,0,99,65,115,193,90,253,255,127,
+  231,126,247,117,222,1,99,0,99,193,90,182,206,190,247,189,255,40,132,1,
+  99,0,99,105,140,188,247,188,239,125,239,253,239,130,82,0,107,65,115,110,
+  173,255,247,126,239,126,247,168,148,0,107,0,107,200,123,188,239,253,247,4,
+  99,0,107,64,99,133,107,123,247,126,247,124,239,254,255,59,231,125,239,189,
+  255,40,132,1,99,0,99,105,140,188,247,188,239,125,239,254,255,41,132,128,
+  99,192,90,3,107,122,247,191,255,61,231,115,198,193,90,64,107,64,99,112,
+  173,125,239,182,214,0,99,0,99,2,99,176,181,252,255,123,231,189,239,255,
+  255,126,239,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,248,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,224,189,
+  247,126,239,189,247,118,214,64,99,0,107,1,99,110,173,191,247,189,239,188,
+  239,125,239,189,255,46,165,66,107,0,99,1,99,111,173,125,247,171,148,64,
+  107,1,115,41,132,126,231,190,223,125,231,182,214,1,99,128,107,1,91,119,
+  206,63,239,126,247,39,124,65,107,64,99,40,124,189,239,125,231,127,231,249,
+  214,69,107,0,107,0,107,181,214,126,231,127,231,126,239,103,132,0,99,64,
+  107,40,124,253,247,119,198,196,98,64,123,0,91,236,156,125,255,127,247,127,
+  239,125,239,190,247,127,247,126,247,39,124,65,107,64,99,40,124,189,239,125,
+  231,127,231,124,247,5,99,64,99,128,107,133,115,123,247,125,231,190,231,58,
+  223,195,90,64,107,64,107,107,140,126,247,118,214,1,107,128,115,193,90,183,
+  214,126,239,190,231,189,231,125,231,62,231,25,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,246,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,28,125,239,223,127,239,188,239,182,214,0,99,0,107,1,99,46,
+  173,189,247,125,239,127,247,127,247,189,247,235,148,0,91,64,99,65,99,113,
+  173,189,247,40,124,64,91,0,107,1,107,64,107,65,107,64,107,64,107,64,
+  115,0,99,194,90,182,214,190,247,124,247,103,132,64,107,128,107,41,140,126,
+  247,125,239,190,247,116,206,3,91,64,107,65,107,192,90,64,107,64,107,0,
+  115,64,115,0,115,192,98,104,140,188,255,182,214,193,82,0,107,0,107,47,
+  173,191,247,125,231,188,239,191,255,126,247,124,239,124,247,103,132,64,107,128,
+  107,41,140,126,247,125,239,190,247,125,247,64,91,65,107,1,107,103,140,126,
+  255,62,239,188,247,126,239,64,91,0,107,1,107,103,132,126,255,118,214,64,
+  99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,189,239,25,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,248,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,27,125,239,224,190,247,127,247,188,239,118,
+  214,0,99,0,107,1,99,111,181,189,239,189,247,253,230,191,255,123,239,105,
+  140,0,99,64,107,1,91,118,214,125,247,105,132,64,99,64,107,193,98,2,
+  107,1,91,2,99,1,99,0,91,66,99,3,91,251,255,124,239,190,255,40,
+  132,192,98,64,107,41,132,126,247,189,239,126,239,181,214,194,90,64,99,0,
+  99,3,99,194,82,2,91,2,107,1,99,130,98,4,107,111,173,124,247,117,
+  206,66,99,0,107,64,107,111,181,190,247,190,239,190,247,61,239,190,247,189,
+  239,190,255,40,132,192,98,64,107,41,132,126,247,189,239,126,239,125,247,64,
+  99,192,98,192,98,103,132,190,255,127,247,188,239,189,247,64,91,65,115,192,
+  98,104,132,125,247,118,214,64,99,0,99,64,99,118,214,126,247,189,239,126,
+  239,125,239,189,239,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,248,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,
+  224,189,247,62,239,188,239,118,206,64,99,65,107,1,99,175,181,125,239,190,
+  247,191,247,61,239,122,247,3,99,64,107,0,107,2,91,187,247,125,255,41,
+  140,128,107,64,107,39,132,115,206,118,206,119,214,119,214,118,214,118,206,53,
+  190,125,247,191,247,125,247,170,148,1,107,0,99,40,124,190,247,190,247,126,
+  239,118,214,2,99,128,107,1,99,176,181,182,214,182,214,116,206,246,222,118,
+  214,117,206,58,231,126,239,118,198,66,99,64,115,128,107,109,165,125,239,61,
+  231,191,247,125,239,125,239,124,231,125,247,170,148,1,107,0,99,40,124,190,
+  247,190,247,126,239,125,247,66,99,64,107,130,115,102,132,189,247,62,231,189,
+  239,188,247,0,91,64,107,192,98,104,132,125,247,118,214,1,99,0,99,64,
+  99,118,214,126,247,189,239,126,239,125,239,189,239,25,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,248,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,27,125,239,224,189,247,126,239,189,247,118,214,64,99,0,
+  99,0,91,109,173,126,239,60,231,125,247,189,255,50,198,1,99,64,107,64,
+  107,199,115,253,255,126,255,107,148,128,107,0,91,200,123,253,255,189,247,190,
+  247,126,239,125,239,188,239,253,247,124,239,190,247,124,239,40,132,1,99,65,
+  107,106,140,125,239,60,231,191,239,183,222,193,90,64,99,66,99,117,206,191,
+  247,125,231,189,239,125,231,190,247,125,239,126,239,126,239,249,222,193,90,64,
+  107,64,99,169,140,254,255,127,239,126,247,191,255,125,239,190,239,124,239,40,
+  132,1,99,65,107,106,140,125,239,60,231,191,239,189,247,67,99,64,99,0,
+  99,132,107,252,247,63,231,190,239,121,239,1,99,0,99,65,107,170,140,189,
+  247,118,206,1,99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,189,
+  239,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,248,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,224,189,247,126,
+  239,189,247,118,206,1,99,64,107,64,107,173,181,126,247,189,247,253,255,182,
+  222,4,107,0,99,128,107,0,107,176,181,124,247,61,247,112,181,0,99,64,
+  107,70,107,123,239,190,247,125,239,126,239,190,247,189,239,124,231,255,255,61,
+  239,189,247,104,132,1,107,0,99,199,123,189,247,253,247,126,239,123,247,68,
+  107,64,99,66,107,48,165,190,247,125,231,190,239,190,239,125,239,190,247,62,
+  231,126,231,188,239,131,90,64,115,0,99,69,107,249,230,126,247,126,255,190,
+  255,60,239,191,239,189,247,104,132,1,107,0,99,199,123,189,247,253,247,126,
+  239,188,247,105,140,128,107,0,99,66,99,121,231,191,247,125,231,114,198,67,
+  107,64,107,193,98,176,173,189,247,119,214,1,99,0,99,64,99,118,214,126,
+  247,189,239,126,239,125,239,189,239,25,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,248,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,27,125,239,224,124,239,126,239,189,247,118,206,1,99,64,107,64,107,233,
+  148,118,214,51,198,111,181,70,115,193,90,129,107,192,90,68,115,187,247,190,
+  247,126,247,248,222,193,82,65,107,2,99,111,173,123,247,189,255,189,255,59,
+  239,119,206,188,247,191,255,63,239,188,239,104,132,66,107,64,107,66,107,247,
+  222,186,247,58,239,126,247,106,140,64,99,1,107,135,115,56,231,252,247,188,
+  247,253,255,246,222,58,231,191,255,126,239,189,247,136,115,64,107,0,107,193,
+  90,46,165,58,239,252,255,121,247,249,222,126,239,188,239,104,132,66,107,64,
+  107,66,107,247,222,186,247,58,239,189,239,177,181,64,99,0,99,2,91,174,
+  173,123,247,187,247,103,132,2,99,64,107,129,90,247,214,188,239,183,214,1,
+  99,0,99,64,99,118,214,126,247,189,239,126,239,125,239,189,239,25,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,248,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,27,125,239,224,189,247,127,239,190,247,118,
+  214,1,99,0,107,0,91,67,99,195,90,67,107,192,90,66,107,1,99,0,
+  99,3,99,117,222,125,247,125,239,126,239,188,247,200,123,0,99,192,90,67,
+  107,104,132,173,173,43,165,197,123,2,91,118,231,123,239,190,247,190,247,236,
+  148,193,90,128,115,192,90,4,99,68,107,41,140,127,239,242,189,65,107,0,
+  107,128,82,133,115,235,148,111,173,41,140,68,107,107,140,124,247,188,239,189,
+  247,113,181,66,107,64,107,0,99,1,91,199,123,39,132,133,115,42,124,60,
+  231,190,247,236,148,193,90,128,115,192,90,4,99,68,107,41,140,126,239,120,
+  214,131,115,0,107,1,99,1,91,199,123,133,115,0,91,193,98,0,107,41,
+  140,124,239,124,231,182,214,0,99,0,99,64,99,118,214,126,247,189,239,126,
+  239,125,239,189,239,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,248,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,
+  224,189,247,126,239,125,239,54,206,65,99,65,107,64,99,193,90,0,91,64,
+  99,64,107,0,99,0,99,131,115,50,206,126,255,126,247,126,239,190,239,189,
+  247,51,198,1,99,129,115,0,107,2,99,1,99,1,107,65,107,192,90,175,
+  189,188,247,63,239,62,231,50,190,2,99,64,107,64,107,1,99,0,99,38,
+  140,63,231,251,255,38,140,64,115,128,115,0,91,66,107,3,107,65,115,0,
+  99,69,115,123,247,188,239,189,247,58,239,198,123,0,107,128,115,64,91,0,
+  91,64,107,64,91,194,82,187,239,62,231,50,190,2,99,64,107,64,107,1,
+  99,0,99,38,140,127,239,191,255,43,173,1,107,65,107,64,99,1,99,64,
+  99,64,99,2,107,0,107,179,222,189,247,189,239,118,206,64,99,0,99,64,
+  99,118,214,126,247,189,239,126,239,125,239,189,239,25,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,248,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,27,125,239,224,190,239,189,239,188,247,116,198,5,91,193,
+  82,1,91,65,99,64,99,1,99,2,91,135,107,47,165,249,222,189,247,125,
+  239,189,231,190,247,125,239,126,247,189,255,243,197,135,115,194,90,64,99,65,
+  99,1,91,195,90,107,132,182,206,188,247,189,247,124,247,187,255,237,156,194,
+  82,66,99,193,90,2,99,169,148,125,239,253,247,56,223,172,148,195,90,1,
+  91,0,99,64,99,2,91,69,107,112,173,123,247,190,255,125,239,125,231,124,
+  231,38,132,1,99,0,91,129,107,1,99,193,90,171,148,246,238,124,247,187,
+  255,237,156,194,82,66,99,193,90,2,99,169,148,189,239,254,255,122,231,238,
+  156,4,91,193,82,0,99,64,107,64,91,198,115,53,198,191,247,62,239,189,
+  247,116,206,3,91,194,82,69,99,52,198,189,247,125,239,190,247,189,239,189,
+  239,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,248,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,224,62,239,126,
+  239,190,247,253,255,122,239,186,247,246,222,180,214,116,214,246,222,56,239,122,
+  239,188,247,190,255,191,247,126,239,124,231,190,239,126,239,62,239,190,255,188,
+  255,247,222,116,206,110,173,111,173,242,197,247,222,187,247,189,247,125,239,125,
+  239,127,247,190,247,123,239,56,223,181,206,182,214,122,247,252,255,126,239,125,
+  239,254,255,123,239,183,222,242,197,47,173,46,173,246,222,121,239,188,255,190,
+  255,126,247,190,247,190,239,124,231,186,255,181,214,112,173,46,165,241,181,182,
+  214,123,247,189,255,127,247,190,247,123,239,56,223,181,206,182,214,122,247,252,
+  255,61,231,125,239,254,255,188,247,248,222,243,197,112,181,111,181,116,214,122,
+  239,190,255,127,239,127,239,191,255,189,255,187,255,250,255,57,239,253,255,255,
+  255,61,239,125,239,124,231,189,239,25,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,237,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,27,125,239,135,126,239,191,247,125,239,126,247,190,247,191,255,60,239,3,
+  125,247,143,126,247,190,247,126,247,126,247,126,239,126,247,125,239,190,247,126,
+  247,62,239,126,239,191,255,255,255,189,247,190,255,3,125,247,141,190,247,125,
+  247,126,247,190,255,62,231,126,231,191,239,191,247,125,239,62,239,127,247,63,
+  239,190,247,3,125,239,3,125,247,155,190,255,60,231,190,247,190,247,61,239,
+  62,239,126,239,125,239,190,239,126,239,190,247,190,239,125,239,190,239,191,247,
+  127,239,62,231,62,231,126,231,191,239,191,247,125,239,62,239,127,247,63,239,
+  191,247,126,239,3,126,247,147,125,247,125,247,125,255,61,247,126,247,126,239,
+  125,231,126,239,126,239,126,247,127,255,190,255,125,247,125,247,61,239,126,239,
+  190,247,125,239,190,247,25,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,238,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,
+  239,141,190,247,189,247,125,239,190,247,125,231,126,239,126,239,191,239,191,247,
+  126,239,125,239,125,239,189,239,3,189,247,132,190,247,125,247,190,247,190,247,
+  3,126,239,161,126,231,125,239,190,247,190,247,125,239,125,239,189,247,189,247,
+  124,239,189,231,190,239,125,231,125,231,191,247,191,247,126,239,126,239,188,239,
+  189,247,253,247,125,239,125,239,190,247,126,239,61,231,127,239,127,239,126,239,
+  126,239,191,247,126,239,125,239,191,255,3,126,239,158,191,239,126,239,61,231,
+  125,231,190,239,189,231,190,239,125,231,125,231,191,247,191,247,126,239,126,239,
+  124,239,189,247,189,247,125,239,125,239,191,247,190,247,125,239,127,255,62,239,
+  189,239,254,247,253,239,189,239,190,247,61,239,62,239,3,126,247,131,190,255,
+  190,247,190,247,26,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,232,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,134,
+  189,247,124,239,125,239,254,247,125,239,189,239,3,125,231,148,189,239,190,239,
+  190,247,189,239,125,239,125,247,125,247,126,247,125,239,125,239,190,247,253,247,
+  189,239,125,231,190,239,125,231,125,231,125,239,189,239,189,239,3,189,247,139,
+  253,247,124,239,189,247,190,247,125,239,124,247,189,247,188,247,189,247,189,247,
+  125,239,3,189,239,154,190,239,190,239,125,231,190,239,189,239,125,231,125,239,
+  126,239,126,247,126,239,189,247,125,247,125,247,126,247,190,247,254,247,189,247,
+  188,239,253,247,124,239,189,247,190,247,125,239,124,247,189,247,188,247,3,189,
+  247,145,189,239,125,239,125,231,189,239,190,239,125,239,190,247,189,239,124,231,
+  189,239,188,239,124,239,253,247,125,247,190,247,189,247,189,247,29,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,232,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,155,126,239,126,247,126,239,191,247,
+  126,239,125,231,125,239,190,239,125,231,189,239,190,239,125,239,125,239,126,247,
+  190,247,190,247,126,247,190,247,125,239,124,239,189,239,188,239,188,239,189,239,
+  190,239,189,239,125,239,5,126,239,145,125,247,61,239,190,255,190,255,125,247,
+  124,247,189,247,188,247,126,239,126,239,61,231,126,239,190,247,125,239,190,239,
+  189,239,188,231,3,189,239,148,125,239,190,247,190,247,126,239,124,247,125,247,
+  190,255,126,247,125,247,125,239,125,247,189,247,125,247,61,239,190,255,190,255,
+  125,247,124,247,189,247,188,247,3,126,239,130,126,247,126,239,4,125,239,138,
+  190,247,126,239,62,239,191,247,190,239,124,231,124,239,189,239,188,239,188,239,
+  3,189,247,130,190,247,126,247,25,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,222,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  27,125,239,136,126,239,191,247,61,239,126,239,191,247,190,247,126,247,125,239,
+  3,190,247,146,125,247,126,247,190,247,126,239,61,239,125,239,190,247,126,247,
+  125,239,125,247,190,247,189,247,189,247,125,239,126,247,126,247,125,239,126,239,
+  3,191,247,3,126,247,135,125,247,190,247,190,247,125,239,191,247,126,239,191,
+  239,4,126,239,131,190,247,125,239,189,247,5,125,239,138,190,247,190,247,190,
+  255,125,247,125,247,126,247,125,247,125,239,126,239,191,247,3,126,247,147,125,
+  247,190,247,190,247,125,239,191,247,126,239,191,247,126,247,126,239,126,247,126,
+  247,190,247,125,239,190,247,190,239,191,247,127,247,61,239,125,239,3,190,247,
+  4,125,239,131,190,247,125,247,190,247,25,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  239,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,27,125,239,138,189,239,189,239,125,239,189,247,125,247,125,239,190,247,
+  125,239,125,247,125,247,3,189,247,3,189,239,132,125,239,125,239,126,247,127,
+  247,4,126,247,200,125,247,189,247,190,247,190,247,189,239,125,239,125,239,189,
+  239,190,247,125,239,189,239,189,239,125,239,126,239,62,231,127,239,189,239,189,
+  239,125,239,189,247,125,247,60,239,125,247,190,247,61,247,190,255,127,247,126,
+  247,190,247,190,247,125,239,124,239,125,239,189,247,189,247,188,239,189,239,190,
+  247,190,247,126,239,190,247,125,239,189,239,189,239,125,239,126,239,62,231,127,
+  239,189,239,189,247,125,239,189,247,189,247,125,247,190,255,125,255,189,239,189,
+  239,124,239,189,247,190,255,190,247,125,239,125,239,126,239,126,239,127,239,126,
+  239,127,247,126,247,124,239,190,247,25,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,55,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,127,125,239,21,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,0,0,0,0,0,0,
+  0,0,0,0,0,0,0,0,84,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,11,125,239,134,190,247,125,239,125,239,
+  190,247,125,239,190,247,116,125,239,134,190,247,190,247,125,239,190,247,125,239,
+  190,247,9,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,82,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,129,190,247,
+  4,125,239,129,190,247,113,125,239,135,190,247,190,247,125,239,190,247,125,239,
+  190,247,190,247,10,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,81,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,133,
+  190,247,125,239,125,239,255,255,251,222,114,190,247,3,125,239,132,190,247,190,
+  247,251,222,255,255,10,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,80,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,15,125,239,
+  132,60,231,203,90,73,74,8,66,114,73,74,134,8,66,73,74,73,74,203,
+  90,60,231,190,247,9,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,90,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,11,125,239,
+  136,190,247,125,239,125,239,190,247,125,239,73,74,73,74,138,82,113,73,74,
+  135,138,82,73,74,73,74,8,66,8,66,125,239,190,247,9,125,239,138,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,
+  60,231,1,182,181,73,0,129,182,181,127,60,231,80,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,11,125,239,129,190,247,4,125,239,118,73,74,132,
+  138,82,73,74,73,74,190,247,10,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,63,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  16,125,239,119,73,74,130,8,66,73,74,11,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,74,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,13,125,239,131,190,247,190,247,125,239,119,73,74,132,8,66,73,
+  74,125,239,190,247,9,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,73,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,107,73,74,129,8,66,13,73,74,11,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,79,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,
+  190,247,4,73,74,129,8,66,103,73,74,129,138,82,12,73,74,11,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,79,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,9,73,74,129,138,82,103,73,74,129,8,66,7,73,74,11,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,85,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,
+  8,73,74,129,142,115,36,243,156,3,52,165,64,243,156,129,142,115,8,73,
+  74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,97,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,6,73,74,131,8,66,138,82,243,156,32,125,239,130,190,
+  247,190,247,66,125,239,132,190,247,190,247,60,231,243,156,8,73,74,11,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,103,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,
+  190,247,6,73,74,131,8,66,73,74,243,156,27,190,247,3,125,239,6,190,
+  247,3,125,239,60,190,247,133,125,239,125,239,190,247,125,239,243,156,8,73,
+  74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,110,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,5,73,74,134,138,82,73,74,73,74,243,156,125,239,125,
+  239,25,190,247,130,125,239,125,239,3,190,247,4,125,239,63,190,247,4,125,
+  239,131,52,165,73,74,138,82,6,73,74,11,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,125,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,131,178,
+  148,190,247,190,247,24,125,239,131,190,247,125,239,125,239,3,190,247,138,125,
+  239,60,231,121,206,251,222,125,239,190,247,190,247,125,239,125,239,190,247,57,
+  125,239,133,190,247,190,247,125,239,125,239,52,165,8,73,74,11,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,107,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,
+  8,73,74,129,243,156,26,125,239,129,190,247,5,125,239,134,190,247,178,148,
+  73,74,243,156,125,239,190,247,62,125,239,132,190,247,125,239,125,239,243,156,
+  8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,111,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,
+  247,125,239,190,247,190,247,8,73,74,129,243,156,28,125,239,136,190,247,190,
+  247,125,239,125,239,60,231,207,123,73,74,113,140,3,125,239,129,190,247,60,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,115,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,
+  74,129,243,156,27,125,239,141,190,247,190,247,125,239,125,239,190,247,125,239,
+  142,115,73,74,142,115,125,239,125,239,190,247,190,247,60,125,239,132,190,247,
+  125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,119,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,26,
+  125,239,130,190,247,190,247,3,125,239,139,190,247,190,247,77,107,73,74,12,
+  99,190,247,125,239,190,247,190,247,125,239,190,247,58,125,239,132,190,247,125,
+  239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,117,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,
+  239,129,190,247,3,125,239,139,190,247,125,239,138,82,73,74,138,82,190,247,
+  190,247,125,239,190,247,125,239,190,247,58,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,112,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,3,190,
+  247,131,125,239,190,247,125,239,3,73,74,130,60,231,190,247,3,125,239,129,
+  190,247,58,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,115,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,26,125,239,135,190,247,190,247,125,239,190,247,125,
+  239,190,247,125,239,3,73,74,132,186,214,190,247,125,239,190,247,60,125,239,
+  132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,111,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,
+  243,156,29,125,239,129,190,247,3,125,239,136,8,66,73,74,73,74,56,198,
+  125,239,125,239,190,247,190,247,59,125,239,132,190,247,125,239,125,239,243,156,
+  8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,130,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,
+  247,125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,139,190,247,190,
+  247,125,239,190,247,125,239,125,239,121,206,8,66,73,74,73,74,182,181,4,
+  190,247,18,125,239,134,190,247,125,239,190,247,190,247,125,239,190,247,35,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,119,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,
+  129,243,156,26,125,239,131,190,247,190,247,125,239,3,190,247,129,121,206,3,
+  73,74,129,52,165,24,125,239,132,60,231,178,148,138,82,243,156,35,125,239,
+  132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,133,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,
+  243,156,27,125,239,130,190,247,125,239,3,190,247,129,56,198,3,73,74,133,
+  113,140,190,247,125,239,190,247,190,247,17,125,239,136,190,247,60,231,190,247,
+  190,247,243,156,8,66,48,132,190,247,34,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,136,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,140,190,
+  247,125,239,190,247,125,239,125,239,182,181,73,74,203,90,73,74,207,123,190,
+  247,125,239,3,190,247,16,125,239,136,190,247,125,239,190,247,190,247,52,165,
+  73,74,207,123,60,231,34,125,239,132,190,247,125,239,125,239,243,156,8,73,
+  74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,127,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,8,73,74,129,243,156,27,125,239,129,190,247,3,125,239,
+  135,190,247,52,165,73,74,207,123,138,82,12,99,190,247,21,125,239,135,190,
+  247,190,247,125,239,243,156,73,74,142,115,190,247,34,125,239,132,190,247,125,
+  239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,129,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,
+  239,130,190,247,125,239,3,190,247,136,178,148,73,74,113,140,73,74,138,82,
+  125,239,125,239,190,247,18,125,239,129,190,247,3,125,239,131,243,156,73,74,
+  203,90,35,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,129,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,27,125,239,141,190,247,125,239,190,247,125,239,190,
+  247,113,140,73,74,52,165,73,74,73,74,60,231,190,247,190,247,21,125,239,
+  133,190,247,113,140,73,74,73,74,190,247,34,125,239,132,190,247,125,239,125,
+  239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,131,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,129,
+  190,247,4,125,239,138,48,132,8,66,56,198,138,82,73,74,251,222,125,239,
+  125,239,190,247,190,247,17,125,239,134,190,247,190,247,125,239,142,115,73,74,
+  73,74,35,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,145,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,26,125,239,150,190,247,125,239,190,247,125,239,190,
+  247,125,239,207,123,73,74,121,206,142,115,73,74,56,198,190,247,125,239,125,
+  239,190,247,125,239,190,247,125,239,125,239,190,247,190,247,14,125,239,132,142,
+  115,73,74,73,74,121,206,34,125,239,132,190,247,125,239,125,239,243,156,8,
+  73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,137,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,
+  125,239,190,247,190,247,8,73,74,129,243,156,29,125,239,137,190,247,190,247,
+  125,239,77,107,73,74,56,198,142,115,8,66,182,181,4,125,239,132,190,247,
+  125,239,125,239,190,247,3,125,239,129,190,247,12,125,239,132,142,115,73,74,
+  73,74,56,198,34,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,
+  125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,8,60,231,1,182,181,145,0,129,182,181,127,60,231,80,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,
+  247,190,247,8,73,74,129,243,156,26,125,239,4,190,247,139,125,239,125,239,
+  203,90,73,74,251,222,178,148,73,74,52,165,125,239,125,239,190,247,3,125,
+  239,133,190,247,190,247,125,239,125,239,190,247,9,125,239,3,190,247,133,125,
+  239,142,115,73,74,73,74,182,181,34,125,239,132,190,247,125,239,125,239,243,
+  156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,142,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,
+  190,247,125,239,190,247,190,247,8,73,74,129,243,156,29,125,239,140,190,247,
+  125,239,190,247,138,82,73,74,125,239,52,165,73,74,178,148,125,239,190,247,
+  190,247,3,125,239,129,190,247,4,125,239,129,190,247,8,125,239,3,190,247,
+  133,125,239,142,115,73,74,73,74,52,165,34,125,239,132,190,247,125,239,125,
+  239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,141,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,140,
+  190,247,125,239,125,239,190,247,190,247,73,74,73,74,125,239,182,181,8,66,
+  207,123,190,247,3,125,239,130,190,247,125,239,4,190,247,130,125,239,190,247,
+  12,125,239,132,142,115,73,74,73,74,243,156,34,125,239,132,190,247,125,239,
+  125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,144,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,
+  125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,
+  3,190,247,148,125,239,125,239,60,231,8,66,138,82,190,247,121,206,73,74,
+  77,107,190,247,125,239,125,239,190,247,190,247,125,239,190,247,125,239,125,239,
+  190,247,190,247,13,125,239,132,142,115,73,74,73,74,113,140,34,125,239,132,
+  190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,150,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,
+  156,28,125,239,150,190,247,125,239,125,239,186,214,73,74,77,107,60,231,251,
+  222,73,74,138,82,125,239,190,247,125,239,190,247,125,239,125,239,190,247,125,
+  239,190,247,190,247,60,231,190,247,8,125,239,3,190,247,133,125,239,142,115,
+  73,74,73,74,207,123,34,125,239,132,190,247,125,239,125,239,243,156,8,73,
+  74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,151,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,8,73,74,129,243,156,26,125,239,146,190,247,125,239,190,
+  247,190,247,125,239,56,198,73,74,207,123,125,239,190,247,138,82,73,74,125,
+  239,190,247,125,239,125,239,190,247,190,247,3,125,239,131,243,156,138,82,48,
+  132,10,125,239,134,190,247,125,239,142,115,73,74,73,74,142,115,34,125,239,
+  132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,175,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,
+  243,156,26,125,239,129,190,247,3,125,239,153,190,247,56,198,73,74,142,115,
+  125,239,125,239,12,99,73,74,251,222,190,247,125,239,125,239,190,247,125,239,
+  125,239,190,247,125,239,243,156,138,82,77,107,190,247,125,239,190,247,190,247,
+  125,239,3,190,247,141,125,239,125,239,190,247,190,247,142,115,73,74,73,74,
+  203,90,190,247,190,247,125,239,190,247,190,247,29,125,239,132,190,247,125,239,
+  125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,165,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,
+  125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,28,125,239,
+  139,190,247,190,247,125,239,117,173,73,74,113,140,190,247,190,247,77,107,73,
+  74,121,206,5,190,247,137,125,239,190,247,125,239,243,156,73,74,138,82,190,
+  247,125,239,190,247,4,125,239,139,190,247,190,247,125,239,190,247,125,239,12,
+  99,73,74,73,74,138,82,125,239,190,247,5,125,239,129,190,247,26,125,239,
+  132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,154,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,
+  243,156,28,125,239,139,190,247,190,247,125,239,243,156,73,74,243,156,125,239,
+  190,247,207,123,73,74,182,181,4,125,239,4,190,247,134,243,156,73,74,73,
+  74,60,231,190,247,190,247,4,125,239,4,190,247,135,125,239,73,74,8,66,
+  138,82,73,74,125,239,255,255,3,190,247,29,125,239,132,190,247,125,239,125,
+  239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,176,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,3,
+  190,247,152,125,239,125,239,243,156,73,74,243,156,190,247,190,247,178,148,73,
+  74,52,165,125,239,190,247,190,247,125,239,190,247,190,247,125,239,125,239,178,
+  148,73,74,73,74,121,206,125,239,125,239,3,190,247,144,125,239,190,247,125,
+  239,190,247,125,239,190,247,73,74,73,74,12,99,73,74,186,214,190,247,125,
+  239,125,239,190,247,190,247,28,125,239,132,190,247,125,239,125,239,243,156,8,
+  73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,166,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,
+  125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,129,190,247,3,125,
+  239,137,190,247,178,148,73,74,52,165,190,247,125,239,52,165,73,74,178,148,
+  5,190,247,3,125,239,134,48,132,8,66,73,74,182,181,125,239,125,239,3,
+  190,247,139,125,239,190,247,125,239,190,247,125,239,190,247,73,74,73,74,77,
+  107,73,74,56,198,3,125,239,130,190,247,190,247,28,125,239,132,190,247,125,
+  239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,162,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,29,125,
+  239,138,190,247,125,239,207,123,73,74,56,198,190,247,125,239,182,181,73,74,
+  48,132,3,125,239,4,190,247,135,125,239,142,115,8,66,73,74,243,156,190,
+  247,190,247,4,125,239,138,190,247,125,239,190,247,125,239,125,239,73,74,73,
+  74,207,123,73,74,247,189,3,190,247,130,125,239,190,247,28,125,239,132,190,
+  247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  163,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,
+  29,125,239,143,190,247,125,239,77,107,73,74,121,206,190,247,125,239,56,198,
+  73,74,77,107,125,239,190,247,190,247,125,239,125,239,3,190,247,134,207,123,
+  73,74,73,74,48,132,190,247,190,247,4,125,239,130,190,247,190,247,3,125,
+  239,133,73,74,8,66,113,140,73,74,52,165,6,125,239,129,190,247,26,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,161,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,
+  129,243,156,28,125,239,139,190,247,190,247,125,239,142,115,73,74,56,198,125,
+  239,190,247,186,214,73,74,203,90,8,125,239,136,142,115,73,74,73,74,142,
+  115,125,239,190,247,125,239,125,239,4,190,247,141,125,239,190,247,125,239,73,
+  74,73,74,243,156,73,74,243,156,125,239,125,239,190,247,125,239,190,247,28,
+  125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,178,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,
+  74,129,243,156,27,125,239,149,190,247,190,247,125,239,190,247,138,82,73,74,
+  251,222,125,239,125,239,190,247,73,74,73,74,190,247,190,247,125,239,190,247,
+  125,239,190,247,125,239,190,247,142,115,3,73,74,3,190,247,148,125,239,190,
+  247,125,239,190,247,125,239,125,239,190,247,125,239,73,74,73,74,243,156,73,
+  74,243,156,125,239,125,239,190,247,125,239,125,239,190,247,190,247,26,125,239,
+  132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,161,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,
+  243,156,26,125,239,129,190,247,4,125,239,130,73,74,73,74,3,125,239,132,
+  190,247,138,82,73,74,60,231,6,125,239,130,190,247,142,115,3,73,74,129,
+  60,231,3,125,239,130,190,247,125,239,4,190,247,140,125,239,73,74,73,74,
+  182,181,138,82,207,123,125,239,125,239,190,247,125,239,125,239,190,247,27,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,172,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,
+  129,243,156,26,125,239,143,190,247,125,239,125,239,190,247,125,239,8,66,73,
+  74,190,247,125,239,125,239,190,247,77,107,73,74,186,214,125,239,3,190,247,
+  3,125,239,133,12,99,73,74,138,82,73,74,121,206,3,125,239,130,190,247,
+  125,239,4,190,247,140,125,239,73,74,73,74,56,198,73,74,142,115,190,247,
+  125,239,125,239,190,247,125,239,190,247,27,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,172,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,27,125,239,3,190,
+  247,131,251,222,73,74,138,82,3,125,239,144,190,247,207,123,73,74,247,189,
+  125,239,190,247,190,247,125,239,125,239,190,247,125,239,138,82,73,74,207,123,
+  73,74,182,181,3,125,239,129,190,247,4,125,239,142,190,247,125,239,73,74,
+  73,74,186,214,8,66,12,99,255,255,190,247,125,239,190,247,125,239,190,247,
+  190,247,26,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,164,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,8,73,74,129,243,156,27,125,239,135,190,247,125,239,60,231,121,206,73,
+  74,77,107,190,247,3,125,239,143,113,140,73,74,117,173,190,247,125,239,190,
+  247,125,239,125,239,190,247,125,239,73,74,73,74,243,156,73,74,178,148,5,
+  190,247,4,125,239,138,251,222,73,74,203,90,125,239,73,74,73,74,125,239,
+  190,247,125,239,190,247,29,125,239,132,190,247,125,239,125,239,243,156,8,73,
+  74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,164,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,8,73,74,129,243,156,26,125,239,129,190,247,3,125,239,
+  139,56,198,73,74,142,115,125,239,125,239,190,247,125,239,52,165,73,74,243,
+  156,190,247,6,125,239,133,73,74,73,74,117,173,73,74,207,123,5,190,247,
+  4,125,239,141,121,206,73,74,77,107,190,247,73,74,73,74,60,231,190,247,
+  125,239,190,247,125,239,190,247,190,247,26,125,239,132,190,247,125,239,125,239,
+  243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,181,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,
+  132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,26,125,239,144,190,
+  247,125,239,190,247,190,247,247,189,73,74,207,123,125,239,125,239,190,247,125,
+  239,182,181,73,74,48,132,125,239,125,239,3,190,247,140,125,239,190,247,73,
+  74,73,74,121,206,73,74,12,99,125,239,125,239,190,247,125,239,190,247,3,
+  125,239,142,190,247,56,198,73,74,142,115,125,239,138,82,138,82,251,222,190,
+  247,190,247,125,239,125,239,190,247,190,247,26,125,239,132,190,247,125,239,125,
+  239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,175,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,28,125,239,134,
+  190,247,125,239,117,173,73,74,48,132,190,247,3,125,239,163,56,198,73,74,
+  142,115,125,239,190,247,190,247,125,239,190,247,125,239,190,247,73,74,73,74,
+  125,239,73,74,138,82,125,239,125,239,190,247,125,239,190,247,125,239,190,247,
+  125,239,190,247,56,198,73,74,142,115,190,247,142,115,8,66,121,206,125,239,
+  190,247,125,239,190,247,28,125,239,132,190,247,125,239,125,239,243,156,8,73,
+  74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,205,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,
+  239,190,247,190,247,8,73,74,129,243,156,11,125,239,133,190,247,125,239,125,
+  239,190,247,190,247,14,125,239,132,243,156,73,74,243,156,190,247,3,125,239,
+  145,251,222,8,66,203,90,190,247,125,239,125,239,190,247,125,239,125,239,190,
+  247,73,74,8,66,125,239,203,90,73,74,251,222,190,247,3,125,239,144,190,
+  247,125,239,190,247,125,239,56,198,73,74,207,123,190,247,142,115,73,74,56,
+  198,125,239,190,247,125,239,125,239,190,247,9,125,239,136,190,247,125,239,190,
+  247,125,239,190,247,190,247,125,239,190,247,10,125,239,132,190,247,125,239,125,
+  239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,206,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,
+  239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,10,125,239,130,
+  190,247,125,239,3,190,247,3,125,239,8,190,247,155,125,239,190,247,125,239,
+  190,247,243,156,73,74,243,156,125,239,125,239,190,247,190,247,125,239,73,74,
+  138,82,125,239,190,247,125,239,190,247,190,247,125,239,251,222,8,66,203,90,
+  190,247,142,115,138,82,56,198,5,190,247,3,125,239,136,56,198,73,74,207,
+  123,125,239,207,123,8,66,117,173,125,239,4,190,247,129,125,239,8,190,247,
+  136,125,239,125,239,190,247,125,239,125,239,190,247,125,239,190,247,10,125,239,
+  132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,196,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,
+  243,156,10,125,239,135,190,247,125,239,190,247,190,247,125,239,190,247,190,247,
+  12,125,239,141,190,247,113,140,73,74,52,165,125,239,190,247,125,239,125,239,
+  60,231,138,82,73,74,60,231,190,247,3,125,239,136,190,247,121,206,8,66,
+  77,107,190,247,48,132,73,74,243,156,3,125,239,141,190,247,125,239,190,247,
+  125,239,190,247,56,198,73,74,142,115,190,247,178,148,73,74,52,165,190,247,
+  13,125,239,131,190,247,125,239,125,239,3,190,247,12,125,239,132,190,247,125,
+  239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,205,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,129,243,156,12,125,
+  239,133,190,247,125,239,190,247,125,239,125,239,10,190,247,136,125,239,125,239,
+  190,247,142,115,73,74,56,198,190,247,125,239,3,190,247,145,77,107,73,74,
+  121,206,125,239,190,247,125,239,190,247,125,239,56,198,138,82,207,123,125,239,
+  52,165,73,74,178,148,190,247,190,247,5,125,239,141,190,247,56,198,73,74,
+  77,107,190,247,52,165,73,74,178,148,255,255,190,247,190,247,125,239,125,239,
+  10,190,247,135,125,239,60,231,190,247,190,247,125,239,125,239,190,247,10,125,
+  239,132,190,247,125,239,125,239,243,156,8,73,74,11,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,207,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,8,73,74,
+  129,243,156,10,125,239,135,190,247,125,239,190,247,125,239,190,247,125,239,190,
+  247,11,125,239,156,190,247,125,239,142,115,73,74,56,198,125,239,190,247,125,
+  239,190,247,125,239,142,115,73,74,52,165,56,198,121,206,56,198,121,206,247,
+  189,52,165,138,82,77,107,125,239,247,189,8,66,142,115,56,198,247,189,121,
+  206,3,56,198,140,121,206,56,198,52,165,138,82,142,115,190,247,182,181,73,
+  74,48,132,125,239,125,239,190,247,12,125,239,134,190,247,125,239,190,247,125,
+  239,125,239,190,247,11,125,239,132,190,247,125,239,125,239,243,156,8,73,74,
+  11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,199,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,
+  190,247,190,247,8,73,74,129,243,156,10,125,239,135,190,247,125,239,190,247,
+  125,239,125,239,190,247,190,247,9,243,156,135,178,148,52,165,52,165,243,156,
+  203,90,73,74,121,206,3,125,239,133,190,247,125,239,113,140,8,66,138,82,
+  3,73,74,140,138,82,73,74,138,82,8,66,142,115,190,247,251,222,73,74,
+  199,57,203,90,73,74,138,82,3,73,74,137,138,82,73,74,73,74,8,66,
+  142,115,190,247,56,198,73,74,12,99,17,243,156,133,251,222,190,247,125,239,
+  125,239,190,247,10,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,
+  125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,8,60,231,1,182,181,201,0,129,182,181,127,60,231,80,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,
+  247,190,247,8,73,74,129,243,156,12,125,239,134,190,247,125,239,125,239,190,
+  247,60,231,138,82,9,73,74,129,138,82,3,73,74,152,138,82,186,214,190,
+  247,125,239,125,239,190,247,125,239,182,181,207,123,142,115,77,107,207,123,142,
+  115,142,115,77,107,142,115,207,123,243,156,60,231,60,231,113,140,142,115,142,
+  115,77,107,3,142,115,129,207,123,3,142,115,135,207,123,243,156,60,231,121,
+  206,73,74,73,74,138,82,13,73,74,132,138,82,73,74,138,82,247,189,3,
+  125,239,129,190,247,10,125,239,132,190,247,125,239,125,239,243,156,8,73,74,
+  11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,179,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,
+  190,247,190,247,8,73,74,129,243,156,10,125,239,130,190,247,190,247,4,125,
+  239,129,255,255,14,243,156,139,178,148,255,255,125,239,190,247,125,239,125,239,
+  190,247,190,247,125,239,125,239,190,247,3,125,239,129,190,247,3,125,239,136,
+  190,247,190,247,60,231,125,239,125,239,190,247,125,239,190,247,3,125,239,129,
+  190,247,3,125,239,130,255,255,60,231,3,243,156,129,52,165,15,243,156,130,
+  251,222,190,247,13,125,239,132,190,247,125,239,125,239,243,156,8,73,74,11,
+  125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,8,60,231,1,182,181,93,0,129,182,181,127,60,231,80,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,
+  247,190,247,6,73,74,131,8,66,73,74,243,156,98,125,239,134,190,247,125,
+  239,125,239,190,247,125,239,243,156,8,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,100,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,4,73,74,135,
+  73,66,8,66,8,66,138,82,243,156,125,239,190,247,97,125,239,3,190,247,
+  132,60,231,243,156,73,74,8,66,6,73,74,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,99,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,4,73,74,135,
+  73,66,73,74,138,74,8,66,73,66,138,74,8,66,99,73,74,133,8,66,
+  138,82,73,74,8,66,138,82,6,73,74,11,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,73,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,12,125,239,132,190,247,125,239,190,247,190,247,4,73,74,129,73,
+  66,116,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,73,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,
+  190,247,125,239,190,247,190,247,107,73,74,129,8,66,13,73,74,11,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,67,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,12,125,239,132,190,247,125,239,190,247,190,
+  247,121,73,74,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,85,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,12,125,239,132,
+  190,247,125,239,190,247,190,247,4,73,74,135,73,66,73,74,73,66,73,66,
+  73,74,73,66,8,66,110,73,74,11,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,79,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,12,125,239,132,190,247,125,239,190,247,190,247,4,73,74,129,8,66,103,
+  73,74,129,138,82,12,73,74,11,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,90,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  12,125,239,132,190,247,125,239,190,247,190,247,48,73,74,129,8,66,21,73,
+  74,129,8,66,45,73,74,129,8,66,3,73,74,130,8,66,190,247,10,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,94,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,12,125,239,135,190,247,125,239,125,239,
+  60,231,138,82,8,66,8,66,41,73,74,131,8,66,73,74,138,82,23,73,
+  74,130,138,82,138,82,48,73,74,129,138,82,11,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,130,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,11,125,239,136,190,247,190,247,125,239,190,247,190,247,52,165,
+  243,156,52,165,34,243,156,130,52,165,52,165,8,243,156,132,178,148,113,140,
+  73,74,138,82,18,73,74,139,8,66,48,132,243,156,178,148,243,156,243,156,
+  52,165,243,156,243,156,52,165,52,165,37,243,156,132,52,165,243,156,243,156,
+  178,148,11,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,142,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,11,125,239,136,190,247,
+  190,247,125,239,190,247,255,255,60,231,125,239,190,247,32,125,239,132,190,247,
+  190,247,125,239,125,239,3,190,247,137,125,239,125,239,190,247,125,239,125,239,
+  190,247,121,206,73,74,8,66,19,73,74,134,56,198,190,247,190,247,125,239,
+  190,247,190,247,6,125,239,129,190,247,34,125,239,129,190,247,3,125,239,130,
+  255,255,190,247,9,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,123,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,11,125,239,129,
+  190,247,4,125,239,3,190,247,33,125,239,136,190,247,190,247,125,239,125,239,
+  190,247,190,247,125,239,125,239,3,190,247,130,125,239,56,198,20,73,74,130,
+  138,82,56,198,5,125,239,3,190,247,132,125,239,125,239,190,247,190,247,36,
+  125,239,130,190,247,190,247,11,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,130,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,16,
+  125,239,131,190,247,125,239,125,239,32,190,247,130,125,239,190,247,6,125,239,
+  135,190,247,125,239,251,222,56,198,52,165,48,132,8,66,19,73,74,135,8,
+  66,77,107,207,123,178,148,117,173,247,189,60,231,4,125,239,131,190,247,190,
+  247,125,239,35,190,247,133,125,239,125,239,190,247,125,239,190,247,9,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,133,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,11,125,239,136,190,247,125,239,190,247,125,
+  239,125,239,190,247,125,239,190,247,34,125,239,3,190,247,133,60,231,56,198,
+  52,165,142,115,203,90,3,73,74,129,138,82,18,73,74,129,8,66,3,73,
+  74,129,8,66,4,73,74,133,12,99,113,140,182,181,186,214,60,231,36,125,
+  239,129,190,247,4,125,239,129,190,247,9,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  110,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,13,125,239,134,190,247,125,239,190,247,125,239,125,239,190,247,32,125,
+  239,133,190,247,125,239,121,206,178,148,12,99,8,73,74,129,8,66,31,73,
+  74,131,203,90,113,140,182,181,35,125,239,132,190,247,125,239,125,239,190,247,
+  10,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,115,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,6,190,247,129,125,
+  239,3,190,247,138,125,239,125,239,190,247,190,247,251,222,247,189,207,123,203,
+  90,73,66,73,66,45,73,74,131,77,107,117,165,251,214,3,125,239,129,190,
+  247,3,125,239,133,190,247,190,247,125,239,125,239,190,247,33,125,239,138,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,
+  60,231,1,182,181,126,0,129,182,181,127,60,231,80,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,36,125,239,146,190,247,125,239,190,247,125,239,125,
+  239,190,247,125,239,125,239,190,247,125,239,251,222,182,181,48,132,138,82,199,
+  57,138,82,73,74,73,66,3,73,74,129,73,66,43,73,74,136,73,66,73,
+  74,142,115,182,173,251,222,190,239,125,239,190,247,3,125,239,130,190,247,190,
+  247,34,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,118,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,38,125,239,143,190,247,125,
+  239,190,247,255,255,60,231,125,239,247,189,48,132,203,90,73,74,8,66,73,
+  74,138,82,8,66,73,66,3,73,74,130,8,66,73,66,47,73,74,138,12,
+  99,207,123,186,214,125,239,190,247,255,255,125,239,125,239,190,247,190,247,33,
+  125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,8,60,231,1,182,181,110,0,129,182,181,127,60,231,80,60,231,
+  133,251,222,186,214,12,99,125,239,190,247,35,125,239,140,190,247,125,239,125,
+  239,190,247,190,247,255,255,186,214,117,173,12,99,138,82,8,66,8,66,52,
+  73,74,141,8,66,73,74,73,74,73,66,8,66,73,74,73,74,138,74,8,
+  66,142,115,52,165,125,239,190,247,36,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,92,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,35,125,239,129,190,247,4,125,239,132,60,231,207,123,73,74,8,66,60,
+  73,74,137,138,82,73,74,8,66,73,74,73,74,203,90,56,198,125,239,190,
+  247,35,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,101,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,37,125,239,4,190,247,129,
+  142,115,8,73,74,130,8,66,73,66,48,73,74,129,73,66,3,73,74,139,
+  8,66,8,66,138,82,138,82,8,66,8,66,56,198,190,247,190,247,125,239,
+  190,247,33,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,106,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,130,190,247,
+  190,247,4,125,239,129,77,107,14,73,74,129,73,66,42,73,74,140,73,66,
+  73,74,73,74,73,66,73,66,73,74,73,74,8,66,8,66,73,74,73,74,
+  121,206,3,125,239,129,190,247,33,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,98,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  35,125,239,135,190,247,190,247,125,239,190,247,125,239,190,247,142,115,10,73,
+  74,130,73,66,73,66,3,73,74,129,73,66,50,73,74,133,138,82,73,74,
+  56,198,125,239,190,247,35,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,76,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,36,125,
+  239,134,190,247,190,247,125,239,190,247,125,239,142,115,68,73,74,133,56,198,
+  190,247,125,239,190,247,190,247,36,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,68,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,40,125,239,131,60,231,
+  142,115,138,82,66,73,74,132,138,82,247,189,125,239,190,247,38,125,239,135,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  78,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,35,125,239,131,190,247,125,239,125,239,3,190,247,129,182,181,65,243,
+  156,134,52,165,52,165,243,156,251,222,190,247,190,247,38,125,239,135,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,76,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  35,125,239,134,190,247,190,247,125,239,190,247,125,239,255,255,68,125,239,130,
+  60,231,190,247,3,125,239,129,190,247,36,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,72,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,38,125,239,133,
+  190,247,125,239,125,239,190,247,190,247,65,125,239,3,190,247,3,125,239,129,
+  190,247,36,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,77,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,35,125,239,132,190,247,125,239,190,247,190,247,
+  4,125,239,64,190,247,134,125,239,190,247,190,247,125,239,190,247,190,247,38,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,73,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,35,125,239,132,190,247,125,239,190,247,125,239,4,190,247,
+  64,125,239,129,190,247,3,125,239,3,190,247,37,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,66,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,37,125,
+  239,129,190,247,71,125,239,133,190,247,125,239,190,247,125,239,190,247,37,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,75,0,129,182,181,127,60,231,80,60,231,135,251,222,251,222,12,99,
+  121,206,190,247,125,239,190,247,127,125,239,10,125,239,133,190,247,125,239,125,
+  239,190,247,125,239,4,190,247,139,125,239,190,247,121,206,77,107,138,82,207,
+  123,243,156,247,189,121,206,251,222,251,222,7,60,231,1,182,181,69,0,129,
+  182,181,127,60,231,80,60,231,136,251,222,121,206,142,115,186,214,125,239,190,
+  247,60,231,190,247,127,125,239,10,125,239,3,190,247,5,125,239,139,190,247,
+  251,222,121,206,12,99,203,90,142,115,178,148,182,181,121,206,251,222,251,222,
+  7,60,231,1,182,181,65,0,129,182,181,127,60,231,81,60,231,133,186,214,
+  77,107,117,173,125,239,190,247,127,125,239,12,125,239,132,190,247,190,247,125,
+  239,125,239,6,190,247,137,52,165,12,99,203,90,77,107,178,148,182,181,121,
+  206,251,222,251,222,7,60,231,1,182,181,75,0,129,182,181,127,60,231,80,
+  60,231,135,186,214,251,222,178,148,142,115,60,231,125,239,190,247,127,125,239,
+  10,125,239,132,190,247,190,247,125,239,125,239,4,190,247,140,125,239,190,247,
+  125,239,207,123,203,90,203,90,142,115,178,148,182,181,121,206,251,222,251,222,
+  7,60,231,1,182,181,65,0,129,182,181,127,60,231,80,60,231,134,251,222,
+  121,206,247,189,12,99,182,181,190,247,127,125,239,14,125,239,129,190,247,5,
+  125,239,139,190,247,117,173,77,107,138,82,203,90,207,123,243,156,182,181,121,
+  206,251,222,251,222,7,60,231,1,182,181,77,0,129,182,181,127,60,231,81,
+  60,231,135,121,206,56,198,48,132,142,115,121,206,190,247,255,255,127,125,239,
+  9,125,239,134,190,247,125,239,190,247,190,247,125,239,125,239,3,190,247,139,
+  56,198,207,123,138,82,203,90,12,99,48,132,52,165,247,189,186,214,251,222,
+  251,222,7,60,231,1,182,181,77,0,129,182,181,127,60,231,80,60,231,135,
+  251,222,251,222,121,206,117,173,77,107,207,123,56,198,127,125,239,10,125,239,
+  147,190,247,125,239,190,247,190,247,125,239,190,247,190,247,60,231,121,206,207,
+  123,12,99,8,66,12,99,142,115,113,140,182,181,56,198,186,214,251,222,8,
+  60,231,1,182,181,75,0,129,182,181,127,60,231,81,60,231,135,251,222,121,
+  206,247,189,52,165,12,99,142,115,182,181,127,125,239,9,125,239,146,190,247,
+  125,239,190,247,190,247,125,239,190,247,60,231,247,189,142,115,138,82,73,74,
+  12,99,12,99,48,132,243,156,247,189,121,206,251,222,9,60,231,1,182,181,
+  83,0,129,182,181,127,60,231,81,60,231,141,251,222,186,214,121,206,182,181,
+  243,156,207,123,12,99,207,123,52,165,56,198,186,214,125,239,190,247,127,125,
+  239,5,125,239,144,60,231,186,214,56,198,52,165,207,123,12,99,138,82,138,
+  82,203,90,77,107,48,132,243,156,182,181,56,198,251,222,251,222,9,60,231,
+  1,182,181,81,0,129,182,181,127,60,231,82,60,231,136,251,222,186,214,56,
+  198,117,173,178,148,207,123,12,99,77,107,3,12,99,131,77,107,12,99,77,
+  107,127,12,99,4,12,99,143,77,107,77,107,12,99,203,90,138,82,203,90,
+  203,90,77,107,207,123,178,148,117,173,56,198,186,214,251,222,251,222,9,60,
+  231,1,182,181,77,0,129,182,181,127,60,231,83,60,231,139,251,222,186,214,
+  56,198,117,173,243,156,113,140,207,123,77,107,12,99,12,99,203,90,127,12,
+  99,5,12,99,143,203,90,203,90,12,99,12,99,203,90,203,90,77,107,142,
+  115,48,132,243,156,117,173,56,198,186,214,251,222,251,222,10,60,231,1,182,
+  181,62,0,129,182,181,127,60,231,83,60,231,135,251,222,251,222,121,206,247,
+  189,182,181,52,165,113,140,3,48,132,127,207,123,10,207,123,138,48,132,48,
+  132,113,140,178,148,52,165,182,181,56,198,186,214,251,222,251,222,11,60,231,
+  1,182,181,63,0,129,182,181,127,60,231,84,60,231,136,251,222,251,222,121,
+  206,56,198,56,198,182,181,117,173,117,173,127,52,165,5,52,165,130,243,156,
+  243,156,6,52,165,135,117,173,182,181,247,189,121,206,186,214,251,222,251,222,
+  12,60,231,1,182,181,67,0,130,182,181,251,222,127,60,231,85,60,231,133,
+  251,222,186,214,121,206,56,198,56,198,3,247,189,130,56,198,56,198,127,247,
+  189,3,247,189,139,56,198,56,198,247,189,247,189,56,198,247,189,56,198,121,
+  206,186,214,186,214,251,222,14,60,231,1,182,181,40,0,130,182,181,251,222,
+  127,60,231,86,60,231,4,251,222,127,186,214,12,186,214,131,251,222,186,214,
+  186,214,4,251,222,13,60,231,130,251,222,182,181,44,0,130,182,181,251,222,
+  127,60,231,86,60,231,130,251,222,60,231,3,251,222,129,60,231,127,251,222,
+  13,251,222,3,60,231,129,251,222,13,60,231,130,251,222,182,181,29,0,130,
+  182,181,186,214,4,60,231,129,251,222,127,60,231,127,60,231,116,60,231,131,
+  125,239,186,214,182,181,39,0,133,56,198,56,198,60,231,60,231,251,222,127,
+  60,231,127,60,231,109,60,231,131,251,222,60,231,125,239,6,60,231,131,251,
+  222,121,206,247,189,29,0,134,186,214,182,181,251,222,125,239,251,222,125,239,
+  127,60,231,127,60,231,118,60,231,130,247,189,186,214,31,0,131,125,239,247,
+  189,121,206,127,60,231,127,60,231,111,60,231,129,125,239,8,60,231,131,121,
+  206,182,181,190,247,37,0,135,255,255,186,214,247,189,186,214,125,239,60,231,
+  251,222,127,60,231,127,60,231,114,60,231,133,125,239,251,222,182,181,186,214,
+  255,255,41,0,135,255,255,190,247,56,198,182,181,186,214,60,231,125,239,127,
+  60,231,127,60,231,112,60,231,135,125,239,60,231,186,214,182,181,56,198,255,
+  255,255,255,45,0,137,255,255,255,255,60,231,247,189,247,189,186,214,60,231,
+  60,231,251,222,127,60,231,127,60,231,110,60,231,135,251,222,121,206,247,189,
+  247,189,190,247,255,255,255,255,47,0,4,255,255,135,186,214,182,181,182,181,
+  121,206,186,214,251,222,251,222,127,60,231,127,60,231,103,60,231,129,125,239,
+  3,251,222,132,121,206,182,181,247,189,186,214,4,255,255,31,0,5,255,255,
+  131,190,247,186,214,247,189,127,182,181,127,182,181,110,182,181,131,56,198,186,
+  214,190,247,5,255,255
+};
+const GuiConst_INT8U GuiBitmap_8[20853] =
+{
+  124,1,185,0,50,0,5,255,255,131,190,247,121,206,56,198,7,182,181,129,
+  117,173,127,182,181,127,182,181,99,182,181,139,117,173,117,173,182,181,247,189,
+  186,214,125,239,255,255,255,255,190,247,255,255,255,255,47,0,3,255,255,133,
+  190,247,121,206,247,189,182,181,56,198,3,251,222,127,60,231,127,60,231,106,
+  60,231,137,186,214,56,198,247,189,247,189,121,206,190,247,255,255,190,247,255,
+  255,45,0,137,255,255,255,255,60,231,56,198,182,181,121,206,251,222,125,239,
+  251,222,127,60,231,127,60,231,110,60,231,135,251,222,121,206,182,181,56,198,
+  190,247,255,255,255,255,43,0,133,255,255,190,247,56,198,182,181,186,214,127,
+  60,231,127,60,231,111,60,231,138,251,222,60,231,60,231,125,239,60,231,251,
+  222,182,181,56,198,255,255,255,255,49,0,135,255,255,121,206,182,181,186,214,
+  125,239,60,231,251,222,127,60,231,127,60,231,108,60,231,139,125,239,125,239,
+  60,231,251,222,251,222,60,231,60,231,251,222,182,181,186,214,255,255,47,0,
+  134,190,247,247,189,121,206,60,231,60,231,251,222,127,60,231,127,60,231,108,
+  60,231,134,251,222,251,222,60,231,60,231,125,239,125,239,3,60,231,131,121,
+  206,182,181,190,247,33,0,136,121,206,182,181,251,222,60,231,251,222,60,231,
+  125,239,251,222,127,60,231,127,60,231,116,60,231,130,182,181,186,214,29,0,
+  131,56,198,56,198,125,239,3,60,231,129,251,222,127,60,231,127,60,231,117,
+  60,231,130,121,206,247,189,23,0,131,182,181,251,222,251,222,127,60,231,127,
+  60,231,121,60,231,130,251,222,182,181,27,0,130,182,181,251,222,127,60,231,
+  38,60,231,129,251,222,127,60,231,83,60,231,130,251,222,182,181,21,0,130,
+  182,181,251,222,127,60,231,127,60,231,122,60,231,130,251,222,182,181,17,0,
+  129,182,181,127,60,231,127,60,231,124,60,231,1,182,181,25,0,129,182,181,
+  127,60,231,36,60,231,130,251,222,251,222,127,60,231,86,60,231,1,182,181,
+  23,0,129,182,181,17,60,231,127,251,222,21,251,222,127,60,231,86,60,231,
+  1,182,181,37,0,129,182,181,20,60,231,3,251,222,127,186,214,14,186,214,
+  133,251,222,251,222,186,214,251,222,251,222,127,60,231,82,60,231,1,182,181,
+  50,0,129,117,173,18,60,231,132,251,222,56,198,243,156,207,123,127,12,99,
+  11,12,99,135,77,107,142,115,113,140,117,173,56,198,121,206,121,206,3,251,
+  222,127,60,231,81,60,231,1,182,181,82,0,129,182,181,17,60,231,141,251,
+  222,178,148,77,107,48,132,52,165,121,206,186,214,60,231,190,247,190,247,125,
+  239,190,247,190,247,127,125,239,141,125,239,125,239,121,206,121,206,52,165,207,
+  123,77,107,48,132,247,189,247,189,121,206,186,214,251,222,3,60,231,130,251,
+  222,125,239,127,60,231,76,60,231,1,182,181,77,0,129,182,181,16,60,231,
+  138,247,189,48,132,142,115,117,173,60,231,190,247,190,247,60,231,125,239,190,
+  247,3,125,239,129,190,247,127,125,239,4,125,239,141,190,247,60,231,182,181,
+  142,115,12,99,52,165,182,181,56,198,121,206,251,222,251,222,60,231,251,222,
+  127,60,231,77,60,231,1,182,181,73,0,129,182,181,12,60,231,135,251,222,
+  60,231,60,231,251,222,48,132,142,115,56,198,3,190,247,131,125,239,190,247,
+  190,247,127,125,239,7,125,239,130,190,247,125,239,3,190,247,136,56,198,142,
+  115,142,115,178,148,182,181,247,189,121,206,251,222,127,60,231,79,60,231,1,
+  182,181,78,0,129,182,181,12,60,231,135,251,222,60,231,251,222,178,148,142,
+  115,56,198,255,255,4,125,239,131,190,247,125,239,125,239,3,190,247,127,125,
+  239,4,125,239,141,190,247,125,239,60,231,190,247,255,255,121,206,142,115,142,
+  115,178,148,117,173,56,198,186,214,251,222,127,60,231,78,60,231,1,182,181,
+  86,0,129,182,181,12,60,231,139,251,222,60,231,56,198,77,107,117,173,190,
+  247,125,239,125,239,190,247,125,239,190,247,3,125,239,133,190,247,190,247,125,
+  239,125,239,190,247,127,125,239,133,125,239,190,247,190,247,125,239,255,255,3,
+  125,239,135,182,181,12,99,207,123,178,148,182,181,121,206,186,214,127,60,231,
+  78,60,231,1,182,181,86,0,129,182,181,12,60,231,136,251,222,251,222,243,
+  156,48,132,60,231,190,247,125,239,190,247,3,125,239,132,190,247,125,239,125,
+  239,190,247,3,125,239,129,190,247,127,125,239,134,125,239,125,239,60,231,125,
+  239,190,247,190,247,3,125,239,135,207,123,77,107,48,132,52,165,247,189,121,
+  206,251,222,127,60,231,77,60,231,1,182,181,82,0,129,182,181,12,60,231,
+  134,251,222,251,222,207,123,52,165,190,247,190,247,3,125,239,132,255,255,125,
+  239,190,247,190,247,5,125,239,129,190,247,127,125,239,129,125,239,3,190,247,
+  140,125,239,125,239,190,247,125,239,190,247,52,165,12,99,142,115,178,148,182,
+  181,56,198,186,214,127,60,231,77,60,231,1,182,181,69,0,129,182,181,12,
+  60,231,136,251,222,251,222,12,99,121,206,190,247,125,239,125,239,190,247,7,
+  125,239,4,190,247,127,125,239,4,125,239,130,190,247,190,247,3,125,239,135,
+  121,206,77,107,77,107,113,140,117,173,56,198,186,214,127,60,231,77,60,231,
+  1,182,181,132,0,129,182,181,12,60,231,138,251,222,186,214,12,99,186,214,
+  60,231,190,247,190,247,125,239,190,247,190,247,25,125,239,143,188,247,125,239,
+  127,247,189,239,189,239,126,239,126,239,189,239,126,239,190,247,188,239,188,247,
+  189,247,126,247,191,247,9,125,239,136,124,255,189,247,125,231,254,247,123,239,
+  189,255,125,247,126,247,24,125,239,136,189,247,190,247,61,239,127,247,126,239,
+  191,247,125,247,188,247,56,125,239,136,186,214,12,99,77,107,48,132,52,165,
+  56,198,186,214,251,222,127,60,231,76,60,231,1,182,181,132,0,129,182,181,
+  12,60,231,134,251,222,186,214,12,99,60,231,125,239,190,247,3,125,239,129,
+  190,247,25,125,239,144,189,247,190,247,126,247,124,231,189,239,190,239,126,247,
+  188,247,127,239,126,239,125,247,189,247,125,247,126,247,126,247,189,247,8,125,
+  239,136,190,255,126,239,191,239,125,223,254,255,125,247,126,239,127,247,24,125,
+  239,136,60,239,190,247,189,247,190,247,125,239,125,239,189,247,190,255,56,125,
+  239,136,60,231,77,107,12,99,207,123,52,165,56,198,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,120,0,129,182,181,12,60,231,133,251,222,186,214,
+  12,99,190,247,190,247,30,125,239,143,124,239,125,239,126,239,189,239,190,239,
+  61,231,125,239,188,247,126,247,126,247,189,247,190,247,61,231,191,247,126,247,
+  9,125,239,136,126,239,61,223,127,231,61,223,189,247,124,239,127,247,63,231,
+  24,125,239,136,190,239,190,239,124,239,189,239,189,247,189,247,190,247,125,231,
+  57,125,239,135,77,107,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,121,0,129,182,181,12,60,231,134,251,222,186,214,
+  12,99,190,247,125,239,125,239,3,190,247,26,125,239,143,189,247,126,239,125,
+  239,189,239,189,239,126,239,254,255,122,239,188,255,251,255,121,231,254,255,61,
+  239,191,247,190,247,9,125,239,136,190,247,126,231,126,231,188,239,246,214,246,
+  222,122,231,190,247,26,125,239,134,190,247,126,247,126,239,125,239,190,239,190,
+  247,57,125,239,135,77,107,203,90,207,123,52,165,56,198,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,128,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,3,125,239,133,190,247,190,247,125,239,125,239,190,247,25,125,239,
+  143,126,247,190,247,189,239,125,239,126,247,123,239,107,132,195,90,2,91,69,
+  99,122,239,190,247,125,239,189,239,126,247,9,125,239,135,190,247,188,239,47,
+  165,2,99,192,90,133,107,54,223,24,125,239,136,190,247,125,231,127,247,127,
+  247,127,255,191,247,126,239,189,239,57,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,130,0,129,182,
+  181,12,60,231,135,251,222,186,214,12,99,190,247,125,239,125,239,190,247,3,
+  125,239,129,190,247,24,125,239,144,190,247,190,247,190,239,189,239,125,239,191,
+  255,252,255,41,124,65,107,64,99,1,83,251,247,191,247,125,239,189,247,126,
+  247,8,125,239,136,189,255,190,255,123,247,196,90,64,107,128,115,128,82,175,
+  181,25,125,239,135,125,247,125,247,189,255,59,239,125,247,189,247,189,239,56,
+  125,239,135,190,247,77,107,12,99,207,123,52,165,247,189,186,214,127,60,231,
+  77,60,231,1,182,181,128,0,129,182,181,12,60,231,133,251,222,186,214,12,
+  99,190,247,190,247,5,125,239,129,190,247,24,125,239,144,126,239,125,239,125,
+  239,254,247,126,247,62,239,188,255,41,132,0,107,128,107,1,91,188,247,126,
+  239,189,247,189,247,126,247,9,125,239,135,190,247,188,247,6,107,0,99,64,
+  107,4,99,178,181,24,125,239,136,61,231,254,255,246,222,114,206,236,156,113,
+  173,59,231,191,247,56,125,239,136,190,247,77,107,12,99,207,123,243,156,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,124,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,4,125,239,4,190,247,24,125,239,144,126,
+  239,190,239,125,239,189,239,126,247,62,247,252,255,40,124,1,115,0,107,2,
+  91,189,255,63,239,189,247,123,239,126,247,8,125,239,136,190,239,126,231,190,
+  239,246,222,233,156,38,132,177,189,189,247,24,125,239,136,191,255,58,231,69,
+  99,0,91,0,91,109,173,253,255,126,239,57,125,239,135,12,99,203,90,207,
+  123,52,165,56,198,186,214,251,222,127,60,231,76,60,231,1,182,181,222,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,
+  247,125,247,126,247,189,239,126,239,189,247,104,132,64,99,64,99,0,99,190,
+  255,189,239,63,231,253,239,63,247,189,239,188,239,127,239,127,247,189,247,125,
+  247,127,247,125,239,127,231,125,231,189,247,190,247,126,247,127,247,191,247,125,
+  239,125,239,254,247,124,231,125,231,190,239,127,239,126,247,126,247,125,239,126,
+  247,127,247,127,247,190,247,189,247,189,247,189,239,127,231,190,231,124,231,190,
+  247,125,239,189,247,125,231,127,239,126,231,188,247,193,90,0,99,67,107,109,
+  173,190,255,62,231,127,239,125,231,125,231,190,239,125,231,191,247,126,247,61,
+  247,190,247,253,230,127,255,62,239,252,239,188,231,63,239,127,255,63,247,125,
+  239,124,231,127,231,127,231,191,247,124,239,189,255,33,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  222,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,216,126,
+  239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,1,99,65,107,65,
+  99,126,255,188,239,191,247,120,223,188,255,187,239,189,247,124,247,189,255,54,
+  206,118,206,122,239,188,247,191,247,60,231,124,239,188,247,251,247,252,255,58,
+  231,253,247,190,247,60,231,190,247,190,247,123,239,246,214,177,181,110,165,178,
+  181,182,214,123,239,190,255,125,239,125,239,126,247,126,247,189,247,252,255,116,
+  206,112,181,111,173,46,165,180,206,188,247,254,255,122,239,132,115,193,98,3,
+  107,45,173,124,247,253,255,124,239,190,247,125,239,189,239,253,247,56,231,177,
+  181,112,181,110,157,245,214,124,255,190,255,188,239,60,231,191,255,124,247,253,
+  255,188,247,254,255,125,239,58,231,182,206,249,230,126,255,33,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,220,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,
+  136,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,3,1,99,
+  205,62,255,253,255,124,239,68,99,195,90,71,107,251,255,176,181,69,107,195,
+  90,67,99,1,91,45,173,123,239,190,255,189,247,112,173,195,82,193,74,69,
+  99,187,247,124,239,190,255,191,255,248,222,236,148,192,82,64,99,64,99,2,
+  91,2,91,44,157,186,247,189,247,62,239,191,255,125,239,245,230,69,115,66,
+  107,1,99,1,99,0,99,66,107,198,123,39,124,133,107,64,99,64,107,0,
+  99,65,107,3,99,193,82,113,157,188,239,255,255,249,222,46,165,67,99,1,
+  91,65,99,128,91,64,99,70,115,183,222,123,239,127,239,61,239,111,165,192,
+  82,3,99,179,214,49,198,130,99,192,74,195,82,188,255,33,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,220,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,
+  177,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,65,99,1,
+  99,1,91,62,255,189,255,188,255,0,91,0,107,0,99,234,164,66,107,0,
+  99,0,91,128,107,64,99,65,107,50,190,124,247,124,247,111,173,65,99,64,
+  99,193,82,188,247,189,247,190,247,58,239,42,132,192,90,64,99,64,99,192,
+  90,64,99,0,99,65,107,45,165,253,255,126,239,125,239,58,231,68,123,3,
+  0,99,164,65,107,0,91,0,99,168,148,103,132,193,90,64,99,0,107,1,
+  99,0,99,1,91,64,99,48,157,252,255,59,239,173,156,66,107,128,74,64,
+  99,65,99,0,83,64,91,65,107,134,123,121,239,126,247,190,247,174,165,129,
+  107,0,91,105,156,195,106,64,107,64,99,105,132,125,255,33,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,222,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,
+  216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,64,99,64,
+  107,64,99,127,255,124,247,124,247,0,99,64,115,64,107,64,107,193,90,67,
+  107,129,107,0,99,65,115,0,107,105,132,125,247,125,247,175,173,1,99,128,
+  107,193,90,126,255,190,247,59,239,46,165,67,107,0,99,64,107,170,148,177,
+  189,66,107,64,99,0,99,3,107,57,231,190,255,252,255,173,148,0,99,64,
+  99,64,99,3,99,39,124,104,132,4,91,50,198,102,132,66,99,0,91,64,
+  107,64,99,64,99,65,99,64,91,114,165,187,247,179,197,194,98,0,107,128,
+  107,67,107,42,140,70,107,0,99,64,107,192,90,172,148,190,255,60,239,175,
+  165,0,99,64,107,0,107,2,107,194,98,3,99,201,123,253,255,33,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,222,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,
+  125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,64,
+  107,64,107,0,91,126,255,125,239,124,247,65,99,0,107,0,99,1,99,241,
+  197,187,255,244,222,68,107,195,98,64,107,131,107,189,255,125,247,111,165,193,
+  98,64,107,2,91,127,255,126,239,252,255,68,99,192,90,129,115,43,165,188,
+  255,62,239,114,206,65,107,64,115,1,99,243,189,124,239,251,255,2,91,65,
+  107,0,91,194,82,246,222,253,255,187,247,122,231,124,239,249,230,53,206,68,
+  107,194,98,3,107,171,156,118,222,117,214,186,214,253,255,106,148,1,107,64,
+  107,66,107,51,206,125,247,123,247,69,107,0,107,0,99,132,107,122,239,255,
+  255,111,165,65,115,128,107,64,107,197,123,241,197,180,214,117,198,187,239,33,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,222,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,
+  132,64,107,64,107,64,99,191,255,190,239,125,239,66,99,0,107,66,107,236,
+  156,124,247,126,255,124,247,237,156,3,99,0,91,0,91,189,255,189,247,111,
+  173,194,106,0,107,1,91,125,239,126,239,182,206,66,99,0,99,1,107,116,
+  214,60,239,127,239,188,255,3,99,0,99,0,99,178,181,124,239,180,214,65,
+  99,192,90,66,107,44,157,123,239,126,239,190,239,125,239,126,239,126,247,187,
+  247,65,91,0,99,1,99,109,173,189,255,190,247,190,239,187,247,130,90,65,
+  115,0,107,198,115,252,255,127,239,126,247,46,165,0,99,128,107,0,91,247,
+  222,124,239,112,173,192,98,65,107,128,82,247,222,190,255,126,239,126,239,127,
+  239,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,222,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,
+  247,104,132,1,107,0,107,64,91,126,247,190,239,125,239,1,91,0,107,0,
+  91,111,173,254,255,126,239,126,247,111,165,64,91,128,107,1,91,124,247,189,
+  239,110,165,3,107,64,107,64,91,188,247,127,239,242,181,1,91,64,107,3,
+  99,187,255,190,239,191,223,126,247,196,98,64,107,0,99,47,165,189,247,242,
+  189,0,99,64,107,1,99,241,189,190,255,127,247,126,239,189,239,126,239,63,
+  231,253,247,0,83,64,99,64,99,173,173,126,247,63,231,126,239,247,222,194,
+  90,64,107,1,107,235,156,187,239,190,231,190,239,49,190,66,107,64,99,64,
+  91,112,173,188,255,112,173,64,107,0,91,68,99,186,239,190,239,125,231,190,
+  239,126,239,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,222,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,239,126,
+  239,189,247,104,132,1,107,0,99,64,99,126,255,189,239,125,239,1,91,0,
+  107,64,107,112,173,125,239,126,239,189,247,111,181,0,99,1,99,64,99,126,
+  239,125,247,111,173,64,91,64,107,1,107,189,247,124,223,112,165,2,99,0,
+  99,64,107,0,99,64,107,64,107,64,115,0,107,128,115,0,91,175,173,187,
+  247,47,165,2,99,64,107,193,90,246,214,60,239,191,247,190,247,60,239,127,
+  247,124,223,189,247,65,99,0,107,64,107,47,181,189,255,190,239,126,247,118,
+  214,1,91,128,107,192,90,111,181,190,255,188,239,126,239,245,222,193,98,0,
+  107,1,99,48,173,189,255,111,165,64,107,1,99,64,91,125,247,126,239,125,
+  239,189,247,126,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,222,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,32,125,239,216,126,239,189,247,125,247,126,247,189,
+  239,126,239,189,247,104,132,1,107,0,99,64,99,126,255,189,239,125,239,1,
+  91,0,107,64,107,112,173,125,239,126,239,189,247,111,181,0,99,1,99,64,
+  99,126,239,125,247,111,173,64,91,64,107,1,107,189,247,254,239,47,157,193,
+  90,129,115,1,99,67,99,194,90,1,99,194,98,3,107,193,98,4,99,116,
+  198,253,255,112,173,1,99,64,107,2,99,116,206,190,247,126,239,124,231,254,
+  255,126,247,190,239,125,247,1,91,0,107,64,107,111,181,125,247,125,231,125,
+  247,118,214,64,91,64,99,1,99,112,181,62,247,190,239,126,239,116,206,2,
+  107,65,115,66,107,47,173,124,247,112,173,64,107,1,99,64,91,125,247,126,
+  239,125,239,189,247,126,247,33,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,222,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,247,125,247,126,
+  247,189,239,126,239,189,247,104,132,1,107,0,99,64,99,126,255,189,239,125,
+  239,1,91,0,107,64,107,112,173,125,239,126,239,189,247,111,181,0,99,1,
+  99,64,99,126,239,125,247,111,173,64,91,64,107,1,107,189,247,189,247,111,
+  173,1,107,64,107,1,91,179,214,182,214,118,206,118,214,117,214,116,206,182,
+  206,124,239,125,247,111,173,0,99,64,107,1,99,115,206,190,247,126,239,189,
+  239,124,231,125,239,126,239,126,247,66,99,65,107,0,99,46,173,125,239,190,
+  231,189,247,119,214,1,99,64,99,65,107,110,173,62,239,191,239,127,247,116,
+  214,1,99,0,99,64,99,112,173,189,255,48,165,64,107,1,99,64,91,125,
+  247,126,239,125,239,189,247,126,247,33,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,222,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,247,125,
+  247,126,247,189,239,126,239,189,247,104,132,1,107,0,99,64,99,126,255,189,
+  239,125,239,1,91,0,107,64,107,112,173,125,239,126,239,189,247,111,181,0,
+  99,1,99,64,99,126,239,125,247,111,173,64,91,64,107,1,107,189,247,125,
+  247,112,181,1,107,0,99,2,91,250,247,125,239,63,239,126,239,125,239,189,
+  247,189,247,126,239,126,247,177,181,65,107,0,107,1,99,241,189,190,255,62,
+  239,190,239,125,231,255,247,126,239,190,255,1,91,1,99,64,99,112,173,190,
+  247,126,231,124,239,184,222,1,99,64,107,64,107,235,156,191,255,127,231,62,
+  239,116,214,65,107,64,107,0,91,177,181,189,255,48,165,64,107,1,99,64,
+  91,125,247,126,239,125,239,189,247,126,247,33,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,222,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,216,126,239,189,
+  247,125,247,126,247,189,239,126,239,189,247,104,132,1,107,0,99,64,99,126,
+  255,189,239,125,239,1,91,0,107,64,107,112,173,125,239,126,239,189,247,111,
+  181,0,99,1,99,64,99,126,239,125,247,111,173,64,91,64,107,1,107,189,
+  247,125,247,182,222,2,107,0,99,2,91,181,206,125,239,63,247,61,231,255,
+  255,125,239,125,231,126,239,127,247,117,206,1,99,64,107,0,99,40,132,124,
+  247,191,255,126,239,255,255,252,222,189,247,253,255,0,83,1,99,65,107,46,
+  165,189,247,190,239,188,247,123,247,3,107,0,99,0,99,197,123,124,247,190,
+  247,189,255,45,165,192,90,128,107,0,91,182,214,125,255,112,173,64,107,1,
+  99,64,91,125,247,126,239,125,239,189,247,126,247,33,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  222,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,216,126,
+  239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,1,107,0,99,64,
+  99,126,255,189,239,125,239,1,91,0,107,64,107,112,173,125,239,126,239,189,
+  247,111,181,0,99,1,99,64,99,126,239,125,247,111,173,64,91,64,107,1,
+  107,189,247,126,239,187,255,69,115,192,98,1,91,235,148,121,239,190,255,253,
+  255,122,239,117,206,188,247,255,247,62,231,58,239,2,99,0,99,64,99,2,
+  99,242,197,188,255,188,255,58,231,123,239,188,247,188,247,1,91,192,90,64,
+  99,105,140,247,222,186,247,121,231,254,255,41,132,2,99,64,107,66,107,116,
+  214,185,247,56,239,197,123,1,99,0,99,68,99,187,247,126,247,48,165,64,
+  107,1,99,64,91,125,247,126,239,125,239,189,247,126,247,33,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,222,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,
+  216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,1,107,0,
+  99,64,99,126,255,189,239,125,239,1,91,0,107,64,107,112,173,125,239,126,
+  239,189,247,111,181,0,99,1,99,64,99,126,239,125,247,111,173,64,91,64,
+  107,1,107,189,247,127,231,124,247,237,164,66,107,0,99,192,74,39,132,237,
+  164,109,173,199,123,4,99,240,181,189,239,61,231,189,255,171,148,1,99,64,
+  99,64,99,2,99,40,132,40,132,4,99,45,165,188,239,124,247,38,124,2,
+  107,64,107,194,98,4,99,193,90,178,173,125,247,243,189,69,107,0,91,192,
+  82,68,115,104,148,134,115,128,74,65,107,193,90,236,148,124,247,125,247,111,
+  165,64,107,1,99,64,91,125,247,126,239,125,239,189,247,126,247,33,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,222,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,
+  125,239,216,126,239,189,247,125,247,126,247,189,239,126,239,189,247,104,132,1,
+  107,0,99,64,99,126,255,189,239,125,239,1,91,0,107,64,107,112,173,125,
+  239,126,239,189,247,111,181,0,99,1,99,64,99,126,239,125,247,111,173,64,
+  91,64,107,1,107,189,247,127,223,254,255,119,247,67,107,64,99,128,99,0,
+  99,66,107,1,107,1,107,192,98,104,132,251,247,191,239,125,247,246,222,67,
+  107,64,99,128,107,64,99,0,99,64,99,0,91,100,132,126,247,126,255,235,
+  156,2,99,64,107,65,115,1,107,64,99,46,149,125,239,252,255,41,124,1,
+  91,192,107,192,98,65,115,0,83,128,107,65,107,4,107,185,247,190,247,126,
+  255,111,165,64,107,1,99,64,91,125,247,126,239,125,239,189,247,126,247,33,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,222,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,32,125,239,216,126,239,190,247,126,239,126,239,125,239,253,247,122,231,45,
+  124,64,99,2,91,132,82,188,247,188,247,185,247,3,91,192,90,3,91,111,
+  173,123,239,255,255,125,239,113,165,4,91,0,91,66,99,123,239,190,247,112,
+  173,194,106,64,115,1,99,251,255,191,247,125,239,188,247,182,214,41,124,194,
+  82,2,99,65,99,65,99,193,90,136,123,244,197,189,247,190,255,125,239,125,
+  231,181,214,134,115,1,99,64,107,64,115,1,99,2,91,236,148,126,239,189,
+  247,57,231,106,132,129,74,2,99,66,99,66,107,51,157,124,239,188,247,56,
+  231,107,140,194,82,0,91,64,99,1,91,3,91,108,140,248,222,124,247,189,
+  255,188,247,50,157,0,91,66,99,4,91,186,247,188,247,189,239,125,231,190,
+  239,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,220,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,33,125,239,215,190,247,126,239,190,247,125,239,189,239,254,255,122,
+  231,187,255,253,255,60,239,191,247,63,239,191,255,59,239,253,255,122,255,189,
+  255,190,247,62,231,126,239,189,247,122,247,251,255,186,247,191,247,124,239,110,
+  173,1,107,64,107,3,99,190,239,125,239,125,239,189,247,252,255,186,247,181,
+  214,176,181,45,165,241,189,245,222,187,255,189,255,125,247,125,239,190,247,190,
+  247,255,255,249,222,116,206,111,181,46,173,50,198,247,222,252,247,127,247,126,
+  239,254,255,122,239,246,222,246,222,246,230,186,255,60,231,191,255,125,247,255,
+  255,123,247,247,222,50,198,110,173,176,181,181,214,122,239,254,255,190,247,124,
+  239,254,255,188,247,187,255,188,255,250,230,255,255,125,239,126,239,190,239,188,
+  239,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,220,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,33,125,239,215,189,239,125,239,190,247,190,247,60,231,189,239,253,
+  247,126,239,126,239,191,239,61,223,191,239,127,231,127,239,63,239,126,255,62,
+  247,126,239,126,239,190,239,190,247,125,247,125,255,127,247,191,247,187,239,41,
+  132,65,107,64,99,193,74,127,231,190,247,190,247,125,239,124,239,190,255,125,
+  247,60,239,190,255,124,239,189,247,191,255,126,247,126,239,126,239,125,239,124,
+  239,62,223,127,239,190,247,125,247,124,239,125,239,191,247,126,231,127,247,125,
+  239,190,247,254,255,189,255,125,239,61,239,127,255,190,247,190,247,61,231,191,
+  255,127,247,190,255,125,247,124,247,124,239,190,255,125,247,125,239,126,247,125,
+  239,125,239,189,239,126,247,127,247,127,247,62,239,62,239,126,239,190,247,189,
+  247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,216,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,32,125,239,160,189,247,189,247,125,239,125,239,190,247,190,247,125,
+  239,125,239,189,247,125,239,124,231,189,231,189,231,190,239,126,239,126,239,190,
+  247,126,239,190,239,189,239,188,231,125,239,125,239,125,247,191,255,118,198,241,
+  181,131,98,193,106,128,107,37,116,124,231,3,125,247,154,126,247,126,247,126,
+  239,126,239,127,239,191,247,126,239,62,231,127,247,191,247,190,247,190,247,253,
+  247,191,239,190,239,61,231,191,247,191,247,126,239,190,239,190,231,189,247,189,
+  247,124,239,124,239,125,239,3,126,239,139,188,247,124,247,124,239,190,247,61,
+  239,126,239,125,239,255,247,191,247,126,247,126,247,3,190,247,138,190,239,125,
+  231,189,239,125,231,190,247,126,239,191,247,125,239,125,239,189,247,33,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,211,0,129,182,181,12,60,231,131,251,222,186,214,12,99,33,
+  125,239,164,189,239,189,247,125,239,125,239,190,247,190,247,126,239,124,239,190,
+  247,190,247,191,247,61,231,126,247,125,247,125,247,188,239,189,239,189,239,190,
+  239,190,239,189,239,189,247,188,239,123,247,104,124,66,107,193,98,65,123,0,
+  99,43,157,189,239,190,255,125,247,125,239,126,247,125,239,3,190,239,143,125,
+  231,190,239,190,239,126,239,125,239,125,239,125,247,189,247,124,239,189,239,190,
+  247,125,239,125,239,125,247,189,239,3,189,247,134,124,239,189,247,189,247,189,
+  239,190,239,190,239,3,189,247,146,190,247,190,247,254,247,125,231,189,231,125,
+  239,124,231,190,247,190,247,124,231,125,231,126,239,126,239,188,239,188,239,124,
+  231,124,231,125,239,3,190,247,33,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,206,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,34,125,239,165,190,247,189,247,125,239,
+  125,239,126,239,126,239,188,247,189,247,126,247,62,247,127,247,126,247,190,255,
+  124,247,124,239,189,239,125,239,126,239,127,239,125,239,125,239,124,239,189,255,
+  104,132,0,91,64,107,128,115,66,115,116,206,126,247,125,239,190,247,125,247,
+  125,239,189,239,125,239,125,239,4,189,239,141,125,239,189,239,190,247,190,247,
+  125,239,124,247,189,247,255,255,125,247,125,247,190,255,125,247,189,247,3,126,
+  247,129,190,247,3,126,239,151,190,239,126,239,126,247,126,247,126,239,125,231,
+  125,239,125,239,190,239,253,247,189,239,188,239,188,239,189,239,189,239,125,239,
+  126,239,126,239,190,239,125,231,191,247,125,239,189,239,35,125,239,135,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,
+  181,217,0,129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,192,
+  191,247,190,247,125,239,189,239,189,247,189,239,190,247,190,247,253,247,189,247,
+  125,239,125,239,189,247,124,239,188,239,189,247,125,239,190,247,126,239,126,247,
+  126,239,61,239,191,247,191,247,126,247,106,132,194,90,194,90,132,107,176,181,
+  255,255,61,239,190,247,190,247,125,239,125,239,190,247,189,247,124,239,124,239,
+  190,247,125,239,125,239,190,247,190,247,125,239,125,239,190,239,189,247,125,247,
+  126,247,125,239,126,247,190,247,125,239,125,247,126,239,190,247,190,247,126,239,
+  125,239,126,247,126,247,125,247,3,126,247,3,190,247,146,126,247,125,247,189,
+  239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,127,247,61,239,126,
+  239,191,255,126,247,125,239,125,239,190,247,33,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,216,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,172,126,239,191,
+  247,125,239,125,239,189,247,125,239,125,239,126,239,62,231,191,247,125,231,190,
+  247,125,239,190,239,126,231,127,239,126,239,125,239,124,239,189,247,188,247,189,
+  247,191,247,62,239,125,239,121,231,182,214,117,206,185,239,255,255,255,230,254,
+  247,125,239,125,239,190,247,190,247,125,247,125,247,126,247,190,247,62,247,126,
+  247,126,247,190,247,4,126,239,152,124,239,189,247,189,239,125,239,190,239,125,
+  239,190,247,190,247,189,239,124,239,189,239,189,247,190,247,126,247,125,247,190,
+  255,189,239,189,239,124,239,189,247,189,247,125,247,189,247,125,247,3,126,239,
+  141,127,247,126,247,125,247,190,247,189,247,188,247,250,230,189,247,124,239,189,
+  247,126,247,126,247,62,239,33,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,83,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,105,125,239,132,190,247,125,239,125,239,255,
+  255,3,125,239,136,186,214,203,90,48,132,125,239,190,247,190,247,125,239,125,
+  239,3,190,247,129,125,239,3,190,247,26,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,78,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,106,125,239,138,190,247,190,247,
+  60,231,255,255,125,239,186,214,203,90,8,66,138,82,178,148,3,125,239,129,
+  190,247,7,125,239,129,190,247,25,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,94,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,104,125,239,152,190,247,125,239,190,247,
+  125,239,190,247,125,239,186,214,138,82,73,74,178,148,12,99,199,57,113,140,
+  190,247,60,231,125,239,190,247,125,239,125,239,190,247,190,247,125,239,125,239,
+  190,247,25,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,90,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,105,125,239,146,190,247,60,231,125,239,190,247,186,214,138,82,
+  138,82,117,173,190,247,56,198,203,90,138,82,48,132,190,247,125,239,190,247,
+  125,239,125,239,3,190,247,130,125,239,190,247,25,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,90,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,104,125,239,150,190,247,
+  125,239,190,247,190,247,60,231,203,90,73,74,113,140,190,247,190,247,125,239,
+  121,206,203,90,73,74,113,140,125,239,190,247,190,247,125,239,125,239,190,247,
+  190,247,27,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,90,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,104,125,239,147,190,247,190,247,125,239,190,247,190,247,121,206,
+  203,90,8,66,117,173,190,247,190,247,60,231,186,214,203,90,73,74,113,140,
+  60,231,190,247,190,247,4,125,239,129,190,247,25,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,88,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,105,125,239,137,190,247,
+  190,247,125,239,125,239,190,247,121,206,138,82,73,74,182,181,3,190,247,135,
+  121,206,203,90,8,66,243,156,186,214,190,247,190,247,3,125,239,129,190,247,
+  25,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,90,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,104,125,239,130,190,247,190,247,3,125,239,142,190,247,125,239,186,214,
+  203,90,8,66,182,181,190,247,60,231,190,247,186,214,203,90,199,57,243,156,
+  60,231,3,190,247,130,125,239,190,247,25,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,119,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,81,125,239,4,190,247,138,125,
+  239,125,239,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,247,9,
+  125,239,132,190,247,190,247,125,239,125,239,3,190,247,145,60,231,77,107,73,
+  74,73,74,117,173,255,255,190,247,125,239,186,214,203,90,8,66,113,140,125,
+  239,125,239,190,247,125,239,190,247,25,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,120,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,80,125,239,129,190,247,5,125,239,
+  137,190,247,125,239,190,247,125,239,255,255,125,239,125,239,190,247,190,247,9,
+  125,239,151,190,247,125,239,125,239,255,255,125,239,125,239,60,231,77,107,73,
+  74,77,107,12,99,73,74,117,173,60,231,190,247,125,239,121,206,77,107,73,
+  74,48,132,190,247,125,239,190,247,26,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,124,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,81,125,239,143,190,247,125,239,190,
+  247,190,247,125,239,125,239,190,247,60,231,117,173,251,222,125,239,190,247,125,
+  239,125,239,190,247,10,125,239,150,255,255,125,239,125,239,60,231,77,107,73,
+  74,77,107,60,231,121,206,203,90,138,82,56,198,125,239,125,239,190,247,121,
+  206,138,82,73,74,113,140,125,239,125,239,190,247,25,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  126,0,129,182,181,12,60,231,131,251,222,186,214,12,99,81,125,239,143,190,
+  247,125,239,190,247,125,239,125,239,190,247,60,231,178,148,8,66,77,107,60,
+  231,60,231,255,255,125,239,190,247,9,125,239,151,255,255,125,239,60,231,125,
+  239,12,99,73,74,142,115,60,231,60,231,190,247,121,206,12,99,8,66,182,
+  181,190,247,190,247,125,239,121,206,138,82,73,74,178,148,125,239,190,247,25,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,124,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,80,125,239,143,190,247,125,239,190,247,125,239,60,231,255,255,60,231,178,
+  148,73,74,138,82,138,82,12,99,125,239,125,239,255,255,9,125,239,129,190,
+  247,3,125,239,147,12,99,73,74,77,107,251,222,125,239,190,247,125,239,190,
+  247,186,214,138,82,73,74,117,173,125,239,190,247,190,247,121,206,138,82,8,
+  66,178,148,26,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,128,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,81,125,239,143,190,247,125,239,125,239,255,255,60,231,113,
+  140,8,66,142,115,125,239,207,123,138,82,77,107,60,231,125,239,190,247,8,
+  125,239,152,190,247,125,239,60,231,12,99,73,74,77,107,125,239,190,247,125,
+  239,190,247,125,239,190,247,125,239,56,198,138,82,73,74,182,181,125,239,125,
+  239,190,247,121,206,203,90,73,74,113,140,25,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,128,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,81,125,239,143,190,247,125,
+  239,190,247,125,239,178,148,73,74,142,115,251,222,190,247,190,247,48,132,138,
+  82,142,115,125,239,60,231,8,125,239,152,190,247,60,231,77,107,73,74,77,
+  107,125,239,190,247,60,231,190,247,60,231,190,247,125,239,125,239,178,148,199,
+  57,138,82,73,74,182,181,125,239,190,247,121,206,203,90,73,74,113,140,25,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,124,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,80,125,239,144,190,247,60,231,255,255,125,239,243,156,8,66,203,90,60,
+  231,190,247,125,239,190,247,125,239,48,132,73,74,77,107,60,231,8,125,239,
+  136,60,231,77,107,73,74,142,115,251,222,190,247,60,231,190,247,4,125,239,
+  139,113,140,73,74,138,82,182,181,203,90,73,74,182,181,121,206,12,99,8,
+  66,113,140,26,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,138,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,80,125,239,146,190,247,125,239,190,247,125,239,182,181,73,
+  74,8,66,182,181,190,247,125,239,125,239,255,255,125,239,113,140,8,66,77,
+  107,60,231,190,247,4,125,239,154,190,247,60,231,77,107,8,66,77,107,125,
+  239,125,239,190,247,125,239,190,247,125,239,190,247,125,239,113,140,73,74,203,
+  90,121,206,190,247,121,206,203,90,73,74,138,82,73,74,113,140,190,247,190,
+  247,25,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,132,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,81,125,239,129,190,247,3,125,239,168,117,173,138,82,73,74,182,
+  181,190,247,125,239,60,231,190,247,190,247,113,140,138,82,77,107,251,222,190,
+  247,190,247,255,255,190,247,251,222,142,115,8,66,48,132,251,222,125,239,125,
+  239,190,247,190,247,125,239,190,247,190,247,48,132,8,66,12,99,121,206,190,
+  247,190,247,125,239,121,206,203,90,73,74,113,140,28,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  136,0,129,182,181,12,60,231,131,251,222,186,214,12,99,80,125,239,138,190,
+  247,125,239,190,247,125,239,190,247,190,247,117,173,73,74,73,74,117,173,3,
+  190,247,143,125,239,125,239,113,140,138,82,77,107,125,239,125,239,60,231,60,
+  231,142,115,73,74,77,107,251,222,125,239,255,255,3,125,239,144,190,247,125,
+  239,48,132,203,90,73,74,186,214,190,247,190,247,125,239,190,247,190,247,121,
+  206,178,148,125,239,190,247,190,247,26,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,138,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,80,125,239,157,190,247,125,239,190,
+  247,190,247,60,231,255,255,125,239,182,181,73,74,73,74,117,173,190,247,125,
+  239,125,239,190,247,190,247,48,132,138,82,12,99,125,239,60,231,12,99,138,
+  82,12,99,125,239,125,239,255,255,125,239,190,247,3,125,239,132,113,140,8,
+  66,73,74,251,222,3,125,239,137,190,247,125,239,190,247,60,231,255,255,60,
+  231,190,247,60,231,190,247,25,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,136,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,81,125,239,151,190,247,125,239,125,239,190,
+  247,190,247,125,239,125,239,182,181,73,74,73,74,117,173,190,247,125,239,60,
+  231,125,239,255,255,113,140,73,74,12,99,142,115,73,74,77,107,60,231,3,
+  125,239,129,190,247,3,125,239,145,113,140,73,74,12,99,186,214,125,239,125,
+  239,190,247,190,247,125,239,190,247,125,239,190,247,125,239,190,247,125,239,190,
+  247,190,247,25,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,128,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,81,125,239,153,190,247,125,239,125,239,190,247,190,247,125,
+  239,190,247,182,181,8,66,138,82,73,74,182,181,190,247,190,247,125,239,125,
+  239,60,231,113,140,138,82,199,57,77,107,60,231,125,239,190,247,190,247,4,
+  125,239,134,113,140,73,74,203,90,121,206,190,247,125,239,3,190,247,134,125,
+  239,125,239,190,247,190,247,125,239,190,247,28,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,136,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,80,125,239,142,190,247,125,
+  239,190,247,190,247,60,231,190,247,125,239,182,181,8,66,138,82,77,107,73,
+  74,73,74,117,173,3,125,239,137,190,247,60,231,178,148,8,66,207,123,251,
+  222,125,239,125,239,190,247,3,125,239,146,113,140,8,66,138,82,121,206,190,
+  247,190,247,125,239,190,247,190,247,251,222,255,255,190,247,125,239,125,239,190,
+  247,125,239,190,247,190,247,26,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,130,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,81,125,239,167,190,247,190,247,125,239,190,
+  247,190,247,182,181,73,74,138,82,117,173,190,247,48,132,73,74,138,82,117,
+  173,190,247,125,239,60,231,255,255,60,231,178,148,73,74,77,107,125,239,190,
+  247,125,239,190,247,125,239,113,140,73,74,138,82,186,214,190,247,190,247,125,
+  239,190,247,125,239,125,239,255,255,60,231,4,125,239,129,190,247,28,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,126,0,129,182,181,12,60,231,131,251,222,186,214,12,99,72,
+  125,239,168,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,247,60,
+  231,190,247,125,239,125,239,190,247,117,173,73,74,73,74,117,173,190,247,125,
+  239,125,239,113,140,8,66,73,74,182,181,190,247,190,247,125,239,190,247,125,
+  239,113,140,73,74,12,99,60,231,190,247,125,239,113,140,8,66,138,82,121,
+  206,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,120,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,74,125,239,152,190,247,125,239,125,239,190,247,125,239,125,
+  239,190,247,60,231,125,239,125,239,117,173,138,82,138,82,117,173,125,239,125,
+  239,190,247,125,239,190,247,178,148,73,74,73,74,182,181,125,239,3,190,247,
+  139,125,239,113,140,73,74,77,107,60,231,113,140,199,57,203,90,251,222,125,
+  239,190,247,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,115,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,72,125,239,3,190,247,131,125,239,125,239,190,247,4,125,
+  239,133,190,247,182,181,138,82,73,74,52,165,3,190,247,149,125,239,190,247,
+  125,239,125,239,113,140,73,74,138,82,117,173,190,247,60,231,190,247,255,255,
+  125,239,113,140,73,74,138,82,73,74,203,90,186,214,251,222,190,247,42,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,114,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  76,125,239,138,190,247,190,247,125,239,190,247,125,239,125,239,182,181,73,74,
+  73,74,117,173,4,125,239,150,190,247,125,239,190,247,190,247,60,231,113,140,
+  8,66,138,82,182,181,125,239,60,231,190,247,190,247,125,239,113,140,73,74,
+  73,74,56,198,125,239,255,255,190,247,190,247,41,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,110,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,75,125,239,129,190,247,
+  3,125,239,135,190,247,190,247,117,173,138,82,73,74,117,173,190,247,3,125,
+  239,148,190,247,190,247,125,239,190,247,125,239,255,255,125,239,113,140,73,74,
+  8,66,247,189,125,239,60,231,190,247,190,247,60,231,113,140,73,74,142,115,
+  60,231,44,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,119,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,72,125,239,4,190,247,163,125,239,125,239,190,247,125,239,117,
+  173,138,82,73,74,117,173,190,247,190,247,125,239,190,247,125,239,190,247,60,
+  231,178,148,251,222,125,239,190,247,190,247,125,239,113,140,73,74,8,66,182,
+  181,190,247,190,247,125,239,125,239,190,247,48,132,73,74,12,99,60,231,190,
+  247,42,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,114,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,77,125,239,134,190,247,125,239,182,181,73,74,138,82,52,165,3,
+  125,239,154,190,247,125,239,190,247,190,247,243,156,73,74,77,107,60,231,190,
+  247,125,239,190,247,125,239,113,140,73,74,138,82,117,173,125,239,190,247,125,
+  239,190,247,255,255,207,123,138,82,12,99,251,222,190,247,41,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,126,0,129,182,181,12,60,231,131,251,222,186,214,12,99,72,125,239,
+  168,190,247,125,239,125,239,190,247,190,247,125,239,182,181,73,74,73,74,117,
+  173,190,247,125,239,125,239,190,247,125,239,190,247,125,239,190,247,190,247,113,
+  140,73,74,77,107,60,231,190,247,125,239,190,247,125,239,113,140,8,66,138,
+  82,182,181,190,247,125,239,125,239,190,247,125,239,113,140,73,74,142,115,60,
+  231,41,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,154,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,64,125,239,151,190,247,125,239,190,247,125,239,125,239,190,247,125,
+  239,190,247,60,231,190,247,125,239,125,239,190,247,117,173,73,74,73,74,182,
+  181,125,239,125,239,60,231,190,247,125,239,190,247,3,125,239,144,255,255,125,
+  239,178,148,8,66,142,115,251,222,190,247,190,247,60,231,125,239,113,140,73,
+  74,138,82,182,181,125,239,190,247,3,125,239,139,113,140,73,74,77,107,60,
+  231,125,239,190,247,125,239,125,239,190,247,125,239,190,247,33,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,150,0,129,182,181,12,60,231,131,251,222,186,214,12,99,66,125,239,
+  143,190,247,125,239,125,239,190,247,125,239,125,239,190,247,60,231,125,239,125,
+  239,117,173,138,82,138,82,117,173,125,239,3,190,247,163,125,239,190,247,60,
+  231,190,247,190,247,125,239,60,231,125,239,125,239,178,148,73,74,142,115,251,
+  222,255,255,190,247,125,239,125,239,113,140,73,74,138,82,182,181,125,239,255,
+  255,190,247,125,239,60,231,113,140,73,74,77,107,251,222,255,255,190,247,125,
+  239,125,239,190,247,34,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,149,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,64,125,239,3,190,247,131,125,239,125,239,190,247,
+  4,125,239,153,190,247,182,181,138,82,73,74,52,165,190,247,190,247,125,239,
+  60,231,190,247,190,247,186,214,142,115,182,181,125,239,190,247,190,247,125,239,
+  255,255,60,231,178,148,8,66,142,115,251,222,255,255,3,190,247,146,178,148,
+  8,66,138,82,117,173,125,239,125,239,190,247,125,239,125,239,113,140,73,74,
+  142,115,251,222,190,247,190,247,125,239,125,239,190,247,33,125,239,135,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,
+  181,148,0,129,182,181,12,60,231,131,251,222,186,214,12,99,68,125,239,138,
+  190,247,190,247,125,239,190,247,125,239,125,239,182,181,73,74,73,74,117,173,
+  3,125,239,167,255,255,190,247,125,239,190,247,251,222,203,90,73,74,182,181,
+  60,231,190,247,125,239,125,239,255,255,125,239,178,148,73,74,77,107,60,231,
+  125,239,125,239,190,247,60,231,178,148,8,66,138,82,182,181,125,239,125,239,
+  190,247,125,239,125,239,178,148,73,74,12,99,60,231,190,247,125,239,190,247,
+  190,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,146,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,67,125,239,129,190,247,3,125,239,149,190,247,190,247,117,173,
+  138,82,73,74,117,173,190,247,125,239,125,239,190,247,60,231,190,247,125,239,
+  125,239,190,247,121,206,203,90,73,74,182,181,125,239,190,247,4,125,239,152,
+  113,140,203,90,121,206,190,247,125,239,125,239,255,255,60,231,113,140,8,66,
+  138,82,182,181,125,239,190,247,125,239,190,247,60,231,48,132,138,82,77,107,
+  60,231,125,239,190,247,60,231,33,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,151,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,64,125,239,4,190,247,141,125,239,125,
+  239,190,247,125,239,117,173,138,82,73,74,117,173,190,247,190,247,125,239,190,
+  247,125,239,3,190,247,164,125,239,125,239,255,255,121,206,203,90,73,74,117,
+  173,125,239,190,247,190,247,60,231,255,255,125,239,186,214,190,247,190,247,125,
+  239,190,247,125,239,190,247,121,206,138,82,73,74,73,74,117,173,190,247,190,
+  247,125,239,190,247,190,247,48,132,8,66,77,107,190,247,60,231,190,247,33,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,146,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,69,125,239,134,190,247,125,239,182,181,73,74,138,82,52,165,3,125,239,
+  170,190,247,125,239,190,247,125,239,251,222,125,239,190,247,125,239,125,239,190,
+  247,186,214,73,74,73,74,182,181,60,231,190,247,125,239,125,239,190,247,125,
+  239,255,255,251,222,255,255,125,239,125,239,186,214,138,82,138,82,12,99,138,
+  82,138,82,117,173,125,239,255,255,60,231,190,247,48,132,203,90,142,115,186,
+  214,255,255,190,247,33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,
+  214,251,222,127,60,231,76,60,231,1,182,181,154,0,129,182,181,12,60,231,
+  131,251,222,186,214,12,99,64,125,239,150,190,247,125,239,125,239,190,247,190,
+  247,125,239,182,181,73,74,73,74,117,173,190,247,125,239,125,239,190,247,125,
+  239,190,247,190,247,12,99,77,107,125,239,60,231,190,247,3,125,239,158,186,
+  214,203,90,73,74,182,181,125,239,190,247,125,239,125,239,190,247,125,239,190,
+  247,125,239,190,247,121,206,138,82,73,74,48,132,190,247,117,173,73,74,73,
+  74,182,181,125,239,190,247,48,132,138,82,12,99,60,231,190,247,190,247,34,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,168,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,56,125,239,159,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,
+  247,125,239,190,247,125,239,125,239,190,247,182,181,138,82,73,74,182,181,125,
+  239,125,239,190,247,190,247,60,231,190,247,125,239,125,239,117,173,138,82,77,
+  107,60,231,190,247,125,239,3,190,247,132,186,214,203,90,73,74,117,173,3,
+  125,239,150,190,247,125,239,125,239,190,247,121,206,203,90,73,74,178,148,251,
+  222,255,255,125,239,182,181,73,74,8,66,182,181,113,140,8,66,142,115,60,
+  231,190,247,60,231,190,247,34,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,160,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,58,125,239,146,190,247,125,239,125,239,190,
+  247,125,239,125,239,190,247,125,239,125,239,190,247,182,181,8,66,73,74,247,
+  189,125,239,190,247,125,239,125,239,3,190,247,136,125,239,125,239,190,247,117,
+  173,138,82,12,99,60,231,190,247,4,125,239,155,121,206,12,99,186,214,255,
+  255,125,239,190,247,125,239,125,239,190,247,121,206,138,82,73,74,113,140,60,
+  231,255,255,190,247,125,239,125,239,117,173,203,90,8,66,8,66,207,123,251,
+  222,125,239,125,239,190,247,35,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,167,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,56,125,239,3,190,247,131,125,239,125,239,
+  190,247,3,125,239,182,190,247,125,239,182,181,73,74,138,82,182,181,125,239,
+  190,247,125,239,190,247,60,231,125,239,125,239,251,222,190,247,125,239,190,247,
+  190,247,117,173,73,74,77,107,60,231,190,247,190,247,125,239,125,239,255,255,
+  60,231,190,247,60,231,190,247,125,239,125,239,190,247,186,214,73,74,138,82,
+  48,132,125,239,255,255,190,247,125,239,125,239,255,255,190,247,52,165,73,74,
+  142,115,251,222,255,255,190,247,125,239,125,239,190,247,34,125,239,135,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,
+  181,166,0,129,182,181,12,60,231,131,251,222,186,214,12,99,60,125,239,188,
+  190,247,190,247,125,239,190,247,125,239,190,247,117,173,73,74,73,74,117,173,
+  190,247,190,247,125,239,190,247,60,231,255,255,251,222,77,107,142,115,60,231,
+  190,247,60,231,190,247,125,239,182,181,73,74,12,99,60,231,125,239,190,247,
+  255,255,60,231,190,247,125,239,190,247,190,247,125,239,190,247,186,214,203,90,
+  73,74,48,132,190,247,190,247,125,239,125,239,190,247,190,247,125,239,190,247,
+  125,239,247,189,60,231,125,239,190,247,125,239,125,239,190,247,125,239,190,247,
+  33,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,152,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,59,125,239,129,190,247,3,125,239,157,190,247,190,247,52,165,138,82,
+  73,74,182,181,255,255,125,239,251,222,125,239,190,247,125,239,190,247,125,239,
+  113,140,8,66,77,107,60,231,190,247,125,239,255,255,125,239,117,173,138,82,
+  77,107,60,231,125,239,60,231,190,247,4,125,239,139,190,247,121,206,73,74,
+  73,74,48,132,190,247,190,247,125,239,125,239,190,247,190,247,3,125,239,3,
+  190,247,4,125,239,131,190,247,125,239,190,247,33,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,165,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,56,125,239,4,190,247,
+  170,125,239,125,239,190,247,125,239,182,181,73,74,73,74,117,173,190,247,60,
+  231,113,140,203,90,251,222,125,239,190,247,60,231,255,255,60,231,113,140,73,
+  74,77,107,60,231,190,247,125,239,190,247,190,247,117,173,138,82,142,115,125,
+  239,255,255,190,247,125,239,190,247,125,239,190,247,121,206,138,82,138,82,48,
+  132,190,247,190,247,3,125,239,142,190,247,125,239,125,239,190,247,125,239,125,
+  239,190,247,60,231,190,247,125,239,190,247,190,247,125,239,255,255,34,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,151,0,129,182,181,12,60,231,131,251,222,186,214,12,99,61,
+  125,239,168,190,247,125,239,182,181,73,74,203,90,52,165,190,247,125,239,178,
+  148,8,66,73,74,138,82,56,198,190,247,255,255,60,231,125,239,125,239,113,
+  140,73,74,12,99,60,231,190,247,60,231,190,247,190,247,117,173,186,214,190,
+  247,190,247,125,239,60,231,125,239,190,247,121,206,203,90,73,74,48,132,190,
+  247,190,247,4,125,239,5,190,247,137,125,239,190,247,190,247,125,239,190,247,
+  125,239,125,239,255,255,60,231,34,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,146,0,129,182,181,
+  12,60,231,131,251,222,186,214,12,99,56,125,239,141,190,247,125,239,125,239,
+  190,247,190,247,125,239,182,181,73,74,73,74,52,165,255,255,125,239,113,140,
+  4,73,74,140,203,90,121,206,190,247,125,239,255,255,125,239,190,247,113,140,
+  73,74,77,107,60,231,190,247,4,125,239,139,190,247,125,239,190,247,190,247,
+  125,239,121,206,203,90,73,74,113,140,125,239,190,247,7,125,239,132,190,247,
+  125,239,125,239,190,247,4,125,239,130,190,247,190,247,36,125,239,135,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,
+  181,150,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,148,
+  190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,247,190,247,125,239,
+  190,247,125,239,190,247,182,181,8,66,73,74,117,173,255,255,125,239,113,140,
+  5,73,74,154,8,66,203,90,121,206,190,247,125,239,190,247,125,239,125,239,
+  113,140,8,66,77,107,251,222,190,247,125,239,190,247,125,239,190,247,125,239,
+  125,239,190,247,121,206,203,90,73,74,178,148,60,231,190,247,3,125,239,130,
+  190,247,190,247,49,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,148,0,129,182,181,12,60,231,131,
+  251,222,186,214,12,99,50,125,239,132,190,247,125,239,125,239,190,247,3,125,
+  239,138,255,255,125,239,125,239,182,181,73,74,138,82,182,181,255,255,251,222,
+  178,148,3,73,74,161,8,66,73,74,8,66,138,82,73,74,73,74,186,214,
+  125,239,190,247,190,247,125,239,125,239,113,140,73,74,113,140,125,239,125,239,
+  190,247,190,247,125,239,125,239,190,247,121,206,138,82,73,74,113,140,60,231,
+  255,255,125,239,125,239,190,247,125,239,190,247,50,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,143,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,3,190,247,
+  145,125,239,125,239,190,247,125,239,125,239,190,247,125,239,125,239,182,181,73,
+  74,73,74,117,173,190,247,125,239,178,148,73,74,8,66,6,73,74,132,8,
+  66,138,82,138,82,121,206,3,125,239,150,255,255,60,231,178,148,121,206,125,
+  239,125,239,190,247,125,239,125,239,190,247,186,214,73,74,138,82,48,132,125,
+  239,190,247,125,239,60,231,190,247,190,247,125,239,190,247,50,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,140,0,129,182,181,12,60,231,131,251,222,186,214,12,99,52,125,239,
+  147,190,247,190,247,125,239,190,247,125,239,125,239,182,181,73,74,73,74,182,
+  181,125,239,125,239,113,140,73,74,8,66,138,82,73,74,8,66,138,82,5,
+  73,74,150,138,82,138,82,186,214,190,247,125,239,125,239,190,247,190,247,125,
+  239,190,247,125,239,190,247,125,239,190,247,186,214,203,90,73,74,48,132,190,
+  247,190,247,125,239,125,239,3,190,247,130,125,239,190,247,50,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,123,0,129,182,181,12,60,231,131,251,222,186,214,12,99,51,125,239,
+  129,190,247,3,125,239,137,190,247,190,247,182,181,73,74,73,74,117,173,190,
+  247,60,231,178,148,10,73,74,151,138,82,8,66,73,74,138,82,73,74,121,
+  206,190,247,190,247,60,231,125,239,190,247,125,239,190,247,125,239,190,247,121,
+  206,73,74,73,74,48,132,190,247,190,247,125,239,125,239,6,190,247,50,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,133,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  48,125,239,4,190,247,140,125,239,125,239,190,247,125,239,182,181,73,74,73,
+  74,182,181,190,247,60,231,178,148,8,66,3,73,74,129,8,66,7,73,74,
+  147,138,82,73,74,8,66,73,74,203,90,121,206,190,247,255,255,60,231,255,
+  255,60,231,190,247,125,239,121,206,138,82,138,82,48,132,190,247,190,247,6,
+  125,239,132,190,247,125,239,125,239,190,247,49,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,129,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,53,125,239,137,190,247,125,
+  239,182,181,8,66,138,82,117,173,125,239,60,231,178,148,3,73,74,135,8,
+  66,73,74,138,82,73,74,73,74,138,82,8,66,6,73,74,143,138,82,8,
+  66,203,90,56,198,190,247,190,247,251,222,190,247,190,247,121,206,203,90,73,
+  74,48,132,190,247,190,247,3,125,239,5,190,247,131,125,239,125,239,190,247,
+  49,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,124,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,48,125,239,142,190,247,125,239,125,239,190,247,190,247,125,239,182,181,
+  73,74,73,74,182,181,190,247,125,239,178,148,8,66,8,73,74,129,8,66,
+  7,73,74,133,8,66,73,74,8,66,12,99,121,206,3,190,247,134,121,206,
+  138,82,73,74,113,140,125,239,190,247,4,125,239,129,190,247,4,125,239,130,
+  190,247,190,247,50,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,114,0,129,182,181,12,60,231,131,
+  251,222,186,214,12,99,48,125,239,140,190,247,125,239,125,239,190,247,255,255,
+  117,173,73,74,73,74,117,173,255,255,125,239,113,140,15,73,74,144,8,66,
+  73,74,138,82,73,74,73,74,138,82,8,66,77,107,125,239,190,247,121,206,
+  138,82,73,74,178,148,60,231,190,247,3,125,239,130,190,247,190,247,57,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,
+  60,231,1,182,181,117,0,129,182,181,12,60,231,131,251,222,186,214,12,99,
+  48,125,239,3,190,247,136,125,239,117,173,73,74,73,74,182,181,255,255,251,
+  222,178,148,3,73,74,129,8,66,11,73,74,149,8,66,138,82,8,66,138,
+  82,199,57,138,82,8,66,12,99,56,198,125,239,121,206,203,90,73,74,113,
+  140,60,231,255,255,125,239,125,239,190,247,125,239,190,247,58,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,118,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,
+  140,190,247,60,231,190,247,182,181,73,74,73,74,117,173,190,247,125,239,178,
+  148,73,74,8,66,13,73,74,150,8,66,138,82,8,66,8,66,73,74,138,
+  82,8,66,203,90,121,206,125,239,251,222,73,74,138,82,48,132,125,239,190,
+  247,125,239,60,231,190,247,190,247,125,239,190,247,58,125,239,135,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,
+  118,0,129,182,181,12,60,231,131,251,222,186,214,12,99,49,125,239,142,190,
+  247,182,181,73,74,73,74,182,181,190,247,125,239,113,140,73,74,8,66,138,
+  82,73,74,8,66,138,82,9,73,74,131,8,66,138,82,8,66,4,73,74,
+  139,203,90,56,198,190,247,186,214,203,90,8,66,113,140,60,231,190,247,125,
+  239,125,239,3,190,247,130,125,239,190,247,58,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,99,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,49,125,239,135,182,181,73,
+  74,73,74,182,181,190,247,60,231,113,140,17,73,74,144,8,66,8,66,73,
+  74,138,82,73,74,203,90,121,206,255,255,121,206,138,82,73,74,113,140,125,
+  239,190,247,190,247,125,239,6,190,247,58,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,112,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,48,125,239,136,186,214,73,74,
+  73,74,182,181,190,247,60,231,178,148,8,66,3,73,74,129,8,66,12,73,
+  74,130,138,82,138,82,3,73,74,138,138,82,186,214,190,247,121,206,203,90,
+  73,74,48,132,190,247,125,239,190,247,5,125,239,132,190,247,125,239,125,239,
+  190,247,57,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,120,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,48,125,239,144,121,206,73,74,142,115,125,239,125,239,178,148,
+  8,66,73,74,73,74,8,66,73,74,138,82,73,74,73,74,138,82,8,66,
+  9,73,74,142,199,57,138,82,73,74,203,90,186,214,125,239,121,206,203,90,
+  73,74,48,132,255,255,125,239,255,255,60,231,6,190,247,131,125,239,125,239,
+  190,247,57,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,105,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,48,125,239,134,190,247,138,82,73,74,255,255,125,239,203,90,
+  8,73,74,129,8,66,10,73,74,141,138,82,8,66,203,90,121,206,190,247,
+  121,206,203,90,73,74,113,140,190,247,125,239,190,247,125,239,3,190,247,4,
+  125,239,130,190,247,190,247,58,125,239,135,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,102,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,48,125,239,134,190,247,207,123,73,74,247,
+  189,125,239,243,156,13,73,74,144,8,66,73,74,138,82,73,74,73,74,138,
+  82,199,57,203,90,121,206,255,255,121,206,203,90,73,74,178,148,60,231,190,
+  247,3,125,239,130,190,247,190,247,65,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,112,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,49,125,239,135,182,181,138,82,207,
+  123,255,255,121,206,73,74,138,82,4,73,74,129,8,66,5,73,74,149,8,
+  66,138,82,8,66,138,82,199,57,138,82,199,57,12,99,121,206,190,247,121,
+  206,203,90,73,74,113,140,60,231,255,255,125,239,125,239,190,247,125,239,190,
+  247,66,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,108,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,48,125,239,135,190,247,251,222,203,90,73,74,251,222,190,247,113,
+  140,10,73,74,150,8,66,138,82,8,66,8,66,73,74,138,82,8,66,203,
+  90,121,206,190,247,186,214,138,82,138,82,113,140,125,239,190,247,125,239,60,
+  231,190,247,190,247,125,239,190,247,66,125,239,135,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,114,0,129,182,
+  181,12,60,231,131,251,222,186,214,12,99,49,125,239,135,190,247,113,140,73,
+  74,113,140,125,239,251,222,203,90,3,73,74,136,8,66,73,74,138,82,73,
+  74,73,74,8,66,138,82,8,66,4,73,74,139,203,90,121,206,190,247,186,
+  214,8,66,138,82,113,140,125,239,190,247,125,239,125,239,3,190,247,130,125,
+  239,190,247,66,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,99,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,49,125,239,135,190,247,121,206,138,82,73,74,121,206,190,
+  247,117,173,9,73,74,144,8,66,8,66,73,74,138,82,73,74,203,90,121,
+  206,255,255,121,206,138,82,138,82,207,123,125,239,190,247,125,239,125,239,6,
+  190,247,66,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,118,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,48,125,239,146,255,255,251,222,142,115,73,74,8,66,77,107,
+  125,239,190,247,48,132,138,82,8,66,138,82,73,74,8,66,73,74,73,74,
+  138,82,138,82,3,73,74,138,138,82,186,214,190,247,121,206,203,90,138,82,
+  113,140,125,239,60,231,190,247,5,125,239,132,190,247,125,239,125,239,190,247,
+  65,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,116,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,48,125,239,142,60,231,77,107,73,74,77,107,12,99,73,74,113,140,
+  190,247,125,239,178,148,73,74,8,66,73,74,138,82,3,73,74,142,199,57,
+  138,82,73,74,203,90,186,214,125,239,121,206,203,90,73,74,113,140,125,239,
+  190,247,190,247,125,239,6,190,247,131,125,239,125,239,190,247,65,125,239,135,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,
+  1,182,181,116,0,129,182,181,12,60,231,131,251,222,186,214,12,99,48,125,
+  239,141,77,107,138,82,77,107,251,222,251,222,73,74,138,82,117,173,190,247,
+  125,239,243,156,138,82,8,66,4,73,74,144,138,82,8,66,203,90,121,206,
+  190,247,121,206,203,90,73,74,113,140,125,239,190,247,125,239,125,239,190,247,
+  125,239,190,247,4,125,239,130,190,247,190,247,66,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,124,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,163,190,247,
+  125,239,190,247,125,239,125,239,190,247,60,231,77,107,73,74,77,107,60,231,
+  190,247,190,247,186,214,73,74,73,74,243,156,125,239,255,255,247,189,77,107,
+  73,74,138,82,73,74,138,82,8,66,12,99,56,198,255,255,121,206,138,82,
+  73,74,178,148,60,231,190,247,3,125,239,130,190,247,190,247,73,125,239,135,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,
+  1,182,181,124,0,129,182,181,12,60,231,131,251,222,186,214,12,99,40,125,
+  239,167,190,247,125,239,125,239,190,247,190,247,125,239,12,99,73,74,142,115,
+  60,231,190,247,60,231,190,247,125,239,182,181,138,82,73,74,113,140,251,222,
+  255,255,251,222,243,156,12,99,73,74,73,74,12,99,121,206,190,247,56,198,
+  203,90,73,74,48,132,60,231,255,255,125,239,125,239,190,247,125,239,190,247,
+  74,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,120,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,42,125,239,165,190,247,125,239,125,239,12,99,73,74,77,107,251,222,
+  255,255,125,239,190,247,190,247,60,231,125,239,121,206,138,82,73,74,12,99,
+  56,198,190,247,190,247,125,239,247,189,178,148,186,214,60,231,186,214,138,82,
+  73,74,48,132,255,255,190,247,125,239,60,231,190,247,190,247,125,239,190,247,
+  74,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,117,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,40,125,239,158,190,247,190,247,125,239,251,222,77,107,73,74,142,115,
+  251,222,255,255,60,231,190,247,190,247,125,239,190,247,125,239,190,247,60,231,
+  77,107,73,74,73,74,142,115,121,206,125,239,190,247,125,239,190,247,121,206,
+  203,90,73,74,48,132,4,125,239,3,190,247,130,125,239,190,247,74,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,113,0,129,182,181,12,60,231,131,251,222,186,214,12,99,41,
+  125,239,160,190,247,125,239,117,173,73,74,77,107,60,231,190,247,60,231,190,
+  247,190,247,125,239,125,239,190,247,125,239,60,231,117,173,73,74,8,66,77,
+  107,73,74,199,57,77,107,113,140,121,206,121,206,203,90,73,74,207,123,190,
+  247,190,247,125,239,125,239,6,190,247,74,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,120,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,41,125,239,159,60,231,255,255,
+  247,189,8,66,48,132,190,247,125,239,190,247,190,247,60,231,190,247,190,247,
+  125,239,125,239,247,189,73,74,73,74,182,181,60,231,117,173,142,115,8,66,
+  73,74,138,82,8,66,73,74,48,132,190,247,125,239,125,239,190,247,4,125,
+  239,132,190,247,125,239,125,239,190,247,73,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,114,0,129,
+  182,181,12,60,231,131,251,222,186,214,12,99,40,125,239,157,190,247,190,247,
+  125,239,125,239,203,90,73,74,121,206,190,247,125,239,125,239,190,247,125,239,
+  125,239,190,247,182,181,73,74,73,74,182,181,125,239,190,247,125,239,125,239,
+  251,222,243,156,207,123,12,99,113,140,255,255,125,239,8,190,247,131,125,239,
+  125,239,190,247,73,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,118,0,129,182,181,12,60,231,131,
+  251,222,186,214,12,99,40,125,239,154,190,247,125,239,190,247,125,239,243,156,
+  138,82,77,107,190,247,190,247,125,239,125,239,190,247,190,247,117,173,73,74,
+  73,74,117,173,190,247,190,247,125,239,190,247,125,239,190,247,190,247,125,239,
+  190,247,3,125,239,132,190,247,125,239,125,239,190,247,4,125,239,130,190,247,
+  190,247,74,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  127,60,231,76,60,231,1,182,181,82,0,129,182,181,12,60,231,131,251,222,
+  186,214,12,99,33,125,239,130,190,247,190,247,4,125,239,131,190,247,125,239,
+  190,247,3,125,239,131,77,107,138,82,207,123,4,125,239,132,182,181,73,74,
+  73,74,182,181,97,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,87,0,129,182,181,12,60,231,131,
+  251,222,186,214,12,99,32,125,239,131,190,247,125,239,125,239,3,190,247,4,
+  125,239,142,190,247,190,247,186,214,138,82,73,74,73,74,203,90,182,181,190,
+  247,182,181,73,74,73,74,117,173,190,247,97,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,86,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,32,125,239,132,190,247,125,
+  239,125,239,190,247,5,125,239,142,190,247,190,247,56,198,138,82,73,74,48,
+  132,207,123,73,74,73,74,203,90,73,74,138,82,182,181,190,247,98,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,84,0,129,182,181,12,60,231,131,251,222,186,214,12,99,33,
+  125,239,130,190,247,190,247,3,125,239,143,190,247,190,247,125,239,190,247,121,
+  206,12,99,73,74,113,140,190,247,125,239,56,198,207,123,73,74,138,82,52,
+  165,100,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,90,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,33,125,239,132,190,247,125,239,125,239,190,247,3,125,239,144,190,
+  247,121,206,203,90,8,66,113,140,125,239,125,239,190,247,125,239,190,247,125,
+  239,251,222,190,247,255,255,60,231,190,247,97,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,86,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,33,125,239,129,190,247,4,
+  125,239,135,190,247,190,247,56,198,12,99,73,74,113,140,125,239,3,190,247,
+  136,125,239,190,247,255,255,125,239,125,239,190,247,125,239,190,247,97,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,86,0,129,182,181,12,60,231,131,251,222,186,214,12,99,35,
+  125,239,148,190,247,125,239,190,247,190,247,121,206,203,90,8,66,113,140,125,
+  239,190,247,125,239,125,239,190,247,190,247,60,231,125,239,190,247,125,239,125,
+  239,190,247,98,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,92,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,32,125,239,145,190,247,125,239,125,239,190,247,125,239,190,
+  247,121,206,203,90,73,74,113,140,125,239,190,247,125,239,125,239,190,247,125,
+  239,125,239,3,190,247,132,125,239,125,239,190,247,190,247,97,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,86,0,129,182,181,12,60,231,131,251,222,186,214,12,99,25,125,239,
+  130,190,247,190,247,4,125,239,140,190,247,125,239,190,247,125,239,125,239,190,
+  247,121,206,203,90,73,74,178,148,60,231,190,247,3,125,239,130,190,247,190,
+  247,105,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,90,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,24,125,239,131,190,247,125,239,125,239,3,190,247,145,125,239,125,
+  239,190,247,125,239,125,239,190,247,121,206,138,82,73,74,113,140,60,231,255,
+  255,125,239,125,239,190,247,125,239,190,247,106,125,239,135,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,84,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,24,125,239,132,190,247,125,
+  239,125,239,190,247,6,125,239,141,190,247,186,214,73,74,138,82,48,132,125,
+  239,190,247,125,239,60,231,190,247,190,247,125,239,190,247,106,125,239,135,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,86,0,129,182,181,12,60,231,131,251,222,186,214,12,99,25,125,239,
+  130,190,247,190,247,3,125,239,140,190,247,190,247,125,239,190,247,186,214,203,
+  90,73,74,48,132,190,247,190,247,125,239,125,239,3,190,247,130,125,239,190,
+  247,106,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,79,0,129,182,181,12,60,231,131,251,222,186,
+  214,12,99,25,125,239,132,190,247,125,239,125,239,190,247,3,125,239,137,190,
+  247,121,206,73,74,73,74,48,132,190,247,190,247,125,239,125,239,6,190,247,
+  106,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,80,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,25,125,239,129,190,247,4,125,239,136,190,247,190,247,121,206,138,82,
+  138,82,48,132,190,247,190,247,6,125,239,132,190,247,125,239,125,239,190,247,
+  105,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,
+  231,76,60,231,1,182,181,79,0,129,182,181,12,60,231,131,251,222,186,214,
+  12,99,27,125,239,138,190,247,125,239,190,247,190,247,121,206,203,90,73,74,
+  48,132,190,247,190,247,3,125,239,5,190,247,131,125,239,125,239,190,247,105,
+  125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,
+  76,60,231,1,182,181,84,0,129,182,181,12,60,231,131,251,222,186,214,12,
+  99,24,125,239,140,190,247,125,239,125,239,190,247,125,239,190,247,121,206,203,
+  90,73,74,113,140,125,239,190,247,4,125,239,129,190,247,4,125,239,130,190,
+  247,190,247,106,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,74,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,25,125,239,138,190,247,125,239,190,247,190,247,121,206,203,
+  90,73,74,178,148,60,231,190,247,3,125,239,130,190,247,190,247,113,125,239,
+  135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,
+  231,1,182,181,74,0,129,182,181,12,60,231,131,251,222,186,214,12,99,26,
+  125,239,141,255,255,60,231,121,206,12,99,8,66,113,140,60,231,255,255,125,
+  239,125,239,190,247,125,239,190,247,113,125,239,136,190,247,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,76,0,
+  129,182,181,12,60,231,131,251,222,186,214,12,99,25,125,239,142,190,247,125,
+  239,186,214,138,82,138,82,48,132,125,239,190,247,125,239,60,231,190,247,190,
+  247,125,239,190,247,113,125,239,136,190,247,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,127,60,231,76,60,231,1,182,181,76,0,129,182,181,12,
+  60,231,131,251,222,186,214,12,99,24,125,239,138,190,247,125,239,186,214,138,
+  82,73,74,48,132,125,239,190,247,125,239,125,239,3,190,247,130,125,239,190,
+  247,113,125,239,136,190,247,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,127,60,231,76,60,231,1,182,181,69,0,129,182,181,12,60,231,131,251,
+  222,186,214,12,99,24,125,239,137,60,231,186,214,203,90,73,74,48,132,190,
+  247,60,231,125,239,125,239,6,190,247,113,125,239,136,190,247,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,182,181,72,
+  0,129,182,181,12,60,231,131,251,222,186,214,12,99,24,125,239,135,186,214,
+  73,74,73,74,113,140,190,247,190,247,255,255,5,125,239,132,190,247,125,239,
+  125,239,190,247,113,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,127,60,231,76,60,231,1,182,181,72,0,129,182,181,12,60,231,131,
+  251,222,186,214,12,99,24,125,239,136,186,214,203,90,48,132,190,247,60,231,
+  125,239,190,247,125,239,5,190,247,131,125,239,125,239,190,247,113,125,239,135,
+  12,99,203,90,207,123,52,165,247,189,186,214,251,222,127,60,231,76,60,231,
+  1,182,181,70,0,129,182,181,12,60,231,131,251,222,186,214,12,99,25,125,
+  239,136,251,222,190,247,125,239,190,247,125,239,125,239,190,247,190,247,4,125,
+  239,130,190,247,190,247,114,125,239,135,12,99,203,90,207,123,52,165,247,189,
+  186,214,251,222,127,60,231,76,60,231,1,182,181,77,0,129,182,181,12,60,
+  231,138,251,222,186,214,12,99,121,206,125,239,190,247,125,239,190,247,125,239,
+  190,247,127,125,239,10,125,239,144,60,231,255,255,125,239,125,239,190,247,125,
+  239,125,239,190,247,121,206,77,107,138,82,142,115,178,148,247,189,121,206,251,
+  222,127,60,231,76,60,231,1,182,181,77,0,129,182,181,12,60,231,138,251,
+  222,186,214,77,107,121,206,125,239,125,239,190,247,190,247,60,231,190,247,127,
+  125,239,10,125,239,144,255,255,125,239,125,239,190,247,125,239,125,239,190,247,
+  125,239,121,206,77,107,203,90,142,115,178,148,182,181,121,206,251,222,127,60,
+  231,76,60,231,1,182,181,67,0,129,182,181,12,60,231,134,251,222,186,214,
+  142,115,52,165,190,247,190,247,3,125,239,129,190,247,127,125,239,13,125,239,
+  130,190,247,190,247,3,125,239,136,52,165,12,99,203,90,142,115,178,148,182,
+  181,121,206,251,222,127,60,231,76,60,231,1,182,181,62,0,129,182,181,12,
+  60,231,137,251,222,186,214,113,140,207,123,60,231,190,247,60,231,255,255,190,
+  247,127,125,239,12,125,239,7,190,247,136,207,123,138,82,138,82,142,115,178,
+  148,182,181,121,206,186,214,127,60,231,76,60,231,1,182,181,79,0,129,182,
+  181,11,60,231,136,251,222,251,222,186,214,117,173,77,107,182,181,190,247,190,
+  247,3,125,239,129,190,247,127,125,239,9,125,239,144,190,247,125,239,190,247,
+  190,247,60,231,190,247,190,247,247,189,12,99,138,82,12,99,207,123,243,156,
+  247,189,121,206,251,222,127,60,231,76,60,231,1,182,181,67,0,129,182,181,
+  11,60,231,3,251,222,136,56,198,48,132,142,115,56,198,255,255,125,239,125,
+  239,190,247,127,125,239,13,125,239,3,190,247,138,56,198,142,115,138,82,138,
+  82,12,99,48,132,52,165,247,189,186,214,251,222,127,60,231,76,60,231,1,
+  182,181,65,0,129,182,181,13,60,231,134,251,222,121,206,247,189,12,99,142,
+  115,121,206,127,125,239,14,125,239,142,190,247,125,239,190,247,190,247,56,198,
+  48,132,203,90,73,74,203,90,142,115,113,140,182,181,56,198,186,214,127,60,
+  231,77,60,231,1,182,181,81,0,129,182,181,8,60,231,129,251,222,4,60,
+  231,137,186,214,121,206,247,189,52,165,77,107,142,115,182,181,125,239,190,247,
+  127,125,239,10,125,239,144,190,247,125,239,125,239,190,247,247,189,142,115,203,
+  90,73,74,138,82,77,107,48,132,52,165,56,198,121,206,186,214,251,222,127,
+  60,231,76,60,231,1,182,181,87,0,129,182,181,13,60,231,144,251,222,251,
+  222,121,206,182,181,178,148,142,115,12,99,207,123,52,165,121,206,186,214,60,
+  231,190,247,125,239,125,239,190,247,127,125,239,3,125,239,143,121,206,56,198,
+  52,165,207,123,12,99,138,82,73,74,138,82,77,107,207,123,243,156,182,181,
+  56,198,186,214,251,222,127,60,231,77,60,231,1,182,181,81,0,129,182,181,
+  13,60,231,142,251,222,251,222,186,214,56,198,182,181,178,148,207,123,77,107,
+  12,99,77,107,12,99,77,107,77,107,12,99,4,77,107,127,12,99,132,12,
+  99,12,99,77,107,12,99,3,138,82,136,203,90,77,107,207,123,178,148,117,
+  173,56,198,186,214,251,222,127,60,231,78,60,231,1,182,181,69,0,129,182,
+  181,14,60,231,141,251,222,251,222,121,206,247,189,117,173,178,148,48,132,142,
+  115,77,107,12,99,12,99,203,90,203,90,127,12,99,9,12,99,137,77,107,
+  77,107,142,115,48,132,243,156,117,173,56,198,186,214,251,222,127,60,231,79,
+  60,231,1,182,181,59,0,129,182,181,16,60,231,136,251,222,121,206,56,198,
+  182,181,52,165,178,148,113,140,48,132,127,207,123,12,207,123,137,48,132,48,
+  132,178,148,243,156,182,181,56,198,186,214,251,222,251,222,127,60,231,79,60,
+  231,1,182,181,52,0,129,182,181,16,60,231,135,251,222,251,222,186,214,121,
+  206,247,189,182,181,117,173,127,52,165,14,52,165,133,117,173,182,181,247,189,
+  56,198,186,214,3,251,222,127,60,231,79,60,231,1,182,181,60,0,130,182,
+  181,251,222,17,60,231,131,251,222,186,214,121,206,3,56,198,131,247,189,247,
+  189,56,198,3,247,189,129,56,198,127,247,189,4,247,189,3,56,198,132,121,
+  206,121,206,186,214,251,222,127,60,231,82,60,231,1,182,181,47,0,130,182,
+  181,251,222,14,60,231,130,251,222,251,222,3,60,231,132,251,222,186,214,186,
+  214,251,222,127,186,214,16,186,214,129,251,222,127,60,231,82,60,231,130,251,
+  222,182,181,41,0,130,182,181,251,222,14,60,231,129,125,239,7,60,231,5,
+  251,222,130,60,231,60,231,127,251,222,7,251,222,127,60,231,86,60,231,130,
+  251,222,182,181,29,0,130,182,181,186,214,4,60,231,129,251,222,127,60,231,
+  127,60,231,116,60,231,131,125,239,186,214,182,181,39,0,133,56,198,56,198,
+  60,231,60,231,251,222,127,60,231,127,60,231,109,60,231,131,251,222,60,231,
+  125,239,6,60,231,131,251,222,121,206,247,189,29,0,134,186,214,182,181,251,
+  222,125,239,251,222,125,239,127,60,231,127,60,231,118,60,231,130,247,189,186,
+  214,31,0,131,125,239,247,189,121,206,127,60,231,127,60,231,111,60,231,129,
+  125,239,8,60,231,131,121,206,182,181,190,247,37,0,135,255,255,186,214,247,
+  189,186,214,125,239,60,231,251,222,127,60,231,127,60,231,114,60,231,133,125,
+  239,251,222,182,181,186,214,255,255,41,0,135,255,255,190,247,56,198,182,181,
+  186,214,60,231,125,239,127,60,231,127,60,231,112,60,231,135,125,239,60,231,
+  186,214,182,181,56,198,255,255,255,255,45,0,137,255,255,255,255,60,231,247,
+  189,247,189,186,214,60,231,60,231,251,222,127,60,231,127,60,231,110,60,231,
+  135,251,222,121,206,247,189,247,189,190,247,255,255,255,255,47,0,4,255,255,
+  135,186,214,182,181,182,181,121,206,186,214,251,222,251,222,127,60,231,127,60,
+  231,103,60,231,129,125,239,3,251,222,132,121,206,182,181,247,189,186,214,4,
+  255,255,31,0,5,255,255,131,190,247,186,214,247,189,127,182,181,127,182,181,
+  110,182,181,131,56,198,186,214,190,247,5,255,255
+};
+const GuiConst_INT8U GuiBitmap_9[23258] =
+{
+  124,1,185,0,50,0,5,255,255,131,190,247,121,206,56,198,7,182,181,129,
+  117,173,127,182,181,127,182,181,99,182,181,139,117,173,117,173,182,181,247,189,
+  186,214,125,239,255,255,255,255,190,247,255,255,255,255,47,0,3,255,255,133,
+  190,247,121,206,247,189,182,181,56,198,3,251,222,127,60,231,127,60,231,106,
+  60,231,137,186,214,56,198,247,189,247,189,121,206,190,247,255,255,190,247,255,
+  255,45,0,137,255,255,255,255,60,231,56,198,182,181,121,206,251,222,125,239,
+  251,222,127,60,231,127,60,231,110,60,231,135,251,222,121,206,182,181,56,198,
+  190,247,255,255,255,255,43,0,133,255,255,190,247,56,198,182,181,186,214,127,
+  60,231,127,60,231,111,60,231,138,251,222,60,231,60,231,125,239,60,231,251,
+  222,182,181,56,198,255,255,255,255,49,0,135,255,255,121,206,182,181,186,214,
+  125,239,60,231,251,222,127,60,231,127,60,231,108,60,231,139,125,239,125,239,
+  60,231,251,222,251,222,60,231,60,231,251,222,182,181,186,214,255,255,47,0,
+  134,190,247,247,189,121,206,60,231,60,231,251,222,127,60,231,127,60,231,108,
+  60,231,134,251,222,251,222,60,231,60,231,125,239,125,239,3,60,231,131,121,
+  206,182,181,190,247,33,0,136,121,206,182,181,251,222,60,231,251,222,60,231,
+  125,239,251,222,127,60,231,127,60,231,116,60,231,130,182,181,186,214,29,0,
+  131,56,198,56,198,125,239,3,60,231,129,251,222,127,60,231,127,60,231,117,
+  60,231,130,121,206,247,189,35,0,131,182,181,251,222,251,222,127,60,231,88,
+  60,231,129,125,239,127,60,231,6,60,231,129,251,222,25,60,231,130,251,222,
+  182,181,34,0,130,182,181,251,222,127,60,231,94,60,231,129,251,222,127,60,
+  231,131,60,231,125,239,125,239,24,60,231,130,251,222,182,181,21,0,130,182,
+  181,251,222,127,60,231,127,60,231,122,60,231,130,251,222,182,181,29,0,129,
+  182,181,127,60,231,91,60,231,129,251,222,127,60,231,7,60,231,129,125,239,
+  24,60,231,1,182,181,23,0,129,182,181,127,60,231,127,60,231,98,60,231,
+  3,251,222,23,60,231,1,182,181,46,0,129,182,181,127,60,231,88,60,231,
+  3,251,222,130,60,231,60,231,127,251,222,4,251,222,129,60,231,3,251,222,
+  132,60,231,60,231,251,222,251,222,19,60,231,1,182,181,47,0,129,182,181,
+  127,60,231,86,60,231,132,251,222,251,222,60,231,251,222,127,186,214,12,186,
+  214,135,121,206,186,214,251,222,186,214,186,214,251,222,251,222,15,60,231,1,
+  182,181,64,0,129,117,173,127,60,231,85,60,231,137,251,222,186,214,186,214,
+  178,148,207,123,77,107,12,99,12,99,77,107,127,12,99,5,12,99,3,77,
+  107,137,142,115,178,148,182,181,56,198,121,206,186,214,186,214,251,222,251,222,
+  13,60,231,1,182,181,75,0,129,182,181,127,60,231,81,60,231,142,251,222,
+  60,231,186,214,125,239,251,222,243,156,12,99,207,123,52,165,56,198,186,214,
+  60,231,190,247,190,247,127,125,239,5,125,239,139,186,214,56,198,52,165,48,
+  132,12,99,48,132,182,181,56,198,56,198,251,222,186,214,13,60,231,1,182,
+  181,82,0,129,182,181,127,60,231,80,60,231,142,251,222,125,239,251,222,60,
+  231,121,206,142,115,77,107,182,181,125,239,190,247,190,247,125,239,125,239,190,
+  247,127,125,239,3,125,239,3,190,247,141,125,239,190,247,125,239,251,222,56,
+  198,142,115,77,107,178,148,182,181,56,198,186,214,186,214,251,222,11,60,231,
+  1,182,181,79,0,129,182,181,127,60,231,81,60,231,141,251,222,60,231,251,
+  222,207,123,142,115,56,198,125,239,125,239,190,247,125,239,60,231,125,239,190,
+  247,127,125,239,5,125,239,130,190,247,125,239,3,190,247,138,125,239,56,198,
+  48,132,77,107,178,148,52,165,121,206,121,206,251,222,251,222,10,60,231,1,
+  182,181,64,0,129,182,181,127,60,231,83,60,231,133,113,140,142,115,121,206,
+  255,255,125,239,6,190,247,127,125,239,3,125,239,3,190,247,4,125,239,138,
+  190,247,255,255,56,198,142,115,142,115,113,140,117,173,56,198,186,214,251,222,
+  10,60,231,1,182,181,69,0,129,182,181,127,60,231,80,60,231,135,251,222,
+  60,231,247,189,77,107,182,181,190,247,60,231,127,125,239,10,125,239,129,190,
+  247,4,125,239,129,190,247,3,125,239,137,190,247,182,181,77,107,207,123,178,
+  148,182,181,121,206,186,214,251,222,9,60,231,1,182,181,86,0,129,182,181,
+  127,60,231,81,60,231,138,251,222,178,148,48,132,60,231,190,247,125,239,190,
+  247,190,247,125,239,190,247,3,125,239,130,190,247,190,247,127,125,239,132,125,
+  239,190,247,190,247,125,239,3,190,247,140,125,239,190,247,125,239,190,247,125,
+  239,207,123,77,107,48,132,52,165,247,189,186,214,251,222,9,60,231,1,182,
+  181,83,0,129,182,181,127,60,231,80,60,231,133,251,222,251,222,142,115,243,
+  156,190,247,3,125,239,4,190,247,131,125,239,125,239,190,247,127,125,239,134,
+  125,239,125,239,60,231,125,239,125,239,190,247,3,125,239,139,190,247,190,247,
+  125,239,190,247,243,156,12,99,142,115,178,148,117,173,121,206,251,222,9,60,
+  231,1,182,181,80,0,129,182,181,127,60,231,81,60,231,134,121,206,77,107,
+  121,206,190,247,125,239,190,247,6,125,239,130,190,247,190,247,127,125,239,138,
+  125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,247,125,239,125,239,
+  3,190,247,135,121,206,77,107,12,99,113,140,117,173,56,198,186,214,9,60,
+  231,1,182,181,100,0,129,182,181,127,60,231,81,60,231,134,121,206,12,99,
+  251,222,125,239,125,239,190,247,49,125,239,140,188,239,190,247,61,231,191,247,
+  190,239,188,239,125,231,190,239,189,247,125,239,190,247,126,247,3,126,239,137,
+  190,247,190,247,125,239,189,247,189,247,125,247,190,247,190,247,190,239,75,125,
+  239,136,186,214,12,99,12,99,48,132,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,93,0,129,182,181,127,60,231,80,60,231,132,251,222,121,206,
+  12,99,60,231,3,190,247,49,125,239,143,189,247,190,247,126,239,190,247,125,
+  231,189,239,125,239,126,239,125,231,125,239,190,239,125,239,190,239,190,247,125,
+  239,3,126,239,3,126,247,76,125,239,138,190,247,125,239,251,222,77,107,12,
+  99,48,132,52,165,247,189,186,214,251,222,8,60,231,1,182,181,102,0,129,
+  182,181,127,60,231,80,60,231,132,251,222,121,206,77,107,125,239,3,190,247,
+  50,125,239,151,126,247,126,247,126,239,125,231,190,239,126,239,127,239,62,231,
+  191,239,190,239,188,239,188,239,189,247,124,239,125,247,189,247,190,247,126,247,
+  62,239,126,239,125,239,125,239,126,239,72,125,239,3,190,247,136,60,231,77,
+  107,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,101,
+  0,129,182,181,127,60,231,80,60,231,135,251,222,186,214,77,107,125,239,125,
+  239,190,247,190,247,52,125,239,3,190,247,146,62,239,127,239,127,247,125,247,
+  123,239,182,206,176,173,46,165,112,181,116,206,56,231,122,239,255,255,190,247,
+  125,239,125,239,190,247,126,247,72,125,239,139,190,247,125,239,190,247,125,239,
+  77,107,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  106,0,129,182,181,127,60,231,80,60,231,131,251,222,186,214,77,107,3,125,
+  239,130,190,247,190,247,48,125,239,152,190,239,126,239,125,239,189,247,190,247,
+  125,239,125,247,190,255,251,255,48,173,70,107,194,90,0,91,65,107,65,107,
+  0,99,2,83,42,124,57,231,125,239,125,239,190,247,125,239,126,247,74,125,
+  239,137,190,247,125,239,77,107,203,90,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,100,0,129,182,181,127,60,231,80,60,231,135,251,222,
+  186,214,12,99,190,247,125,239,125,239,190,247,49,125,239,139,126,239,126,239,
+  125,239,125,239,126,247,125,247,189,255,123,239,169,156,67,115,0,99,3,64,
+  107,138,64,99,64,99,0,83,105,132,251,247,254,247,124,231,189,239,125,239,
+  126,247,76,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,102,0,129,182,181,127,60,231,80,60,231,135,251,222,
+  186,214,12,99,190,247,125,239,190,247,190,247,49,125,239,152,126,239,125,239,
+  125,239,126,239,62,239,189,247,187,247,176,173,64,107,64,99,64,99,0,99,
+  1,91,2,91,194,90,3,91,66,99,237,156,124,247,127,239,190,239,189,239,
+  125,239,126,247,76,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,110,0,129,182,181,127,60,231,80,60,231,135,
+  251,222,251,222,12,99,190,247,125,239,190,247,190,247,49,125,239,152,190,239,
+  125,239,190,247,190,247,62,239,190,255,56,231,196,82,64,99,1,99,194,98,
+  135,123,51,206,252,255,188,247,250,222,238,189,247,230,191,255,255,230,127,239,
+  125,231,189,247,125,247,72,125,239,139,190,247,125,239,190,247,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,152,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  51,125,239,176,126,247,126,239,188,231,188,239,127,247,253,255,234,156,65,107,
+  64,107,1,91,42,124,58,223,190,255,126,247,190,255,126,239,189,247,188,247,
+  189,239,126,239,126,239,189,239,124,239,126,247,126,255,190,255,125,239,126,239,
+  126,247,126,255,125,239,189,231,253,239,61,239,127,255,62,239,125,231,253,231,
+  189,239,126,239,127,239,126,239,125,239,189,239,125,231,190,239,125,239,190,255,
+  49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,150,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,52,125,239,175,126,239,189,239,
+  188,239,127,247,123,247,198,123,0,91,64,107,2,99,242,181,189,239,190,247,
+  125,247,125,239,189,239,62,239,125,239,190,247,61,231,190,247,188,247,252,255,
+  188,255,180,214,116,206,181,206,56,223,188,255,124,247,190,247,126,231,125,231,
+  189,247,123,247,117,206,175,173,175,173,111,173,182,230,187,239,253,247,189,239,
+  190,239,125,231,125,239,126,247,61,239,49,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  150,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,52,125,239,175,126,239,254,247,188,239,191,247,249,230,3,99,0,99,
+  0,99,68,107,186,239,254,247,125,239,189,247,124,231,190,231,63,239,125,231,
+  190,247,126,247,189,255,111,165,39,132,195,98,65,107,1,91,66,91,2,91,
+  135,123,182,222,189,247,63,239,127,239,122,239,199,123,1,99,0,91,1,99,
+  65,107,0,115,69,99,116,198,124,239,191,255,126,239,125,239,191,247,127,247,
+  49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,150,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,52,125,239,175,126,247,189,239,
+  188,239,126,247,117,206,2,91,65,107,1,107,40,132,253,255,125,231,126,239,
+  190,247,126,239,191,231,127,239,125,239,189,247,124,239,56,231,68,107,192,90,
+  65,107,0,99,1,99,65,99,192,90,0,99,69,115,122,239,127,239,60,231,
+  107,140,0,99,64,107,0,99,2,99,1,107,64,115,1,91,54,231,125,247,
+  62,239,190,247,189,247,190,247,62,239,49,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  152,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,51,125,239,176,189,247,127,247,125,239,189,239,125,239,113,173,1,91,
+  0,99,65,107,45,165,189,247,253,222,127,247,125,239,126,239,62,231,126,247,
+  125,239,124,239,190,255,252,255,41,132,66,99,67,115,41,148,41,140,3,99,
+  65,107,64,107,65,107,241,189,125,239,57,231,194,82,64,107,0,99,135,123,
+  112,173,46,165,198,115,133,115,121,247,191,255,127,247,125,239,123,231,188,239,
+  190,247,49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,152,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,51,125,239,176,188,247,
+  127,247,126,239,190,247,125,247,47,165,1,99,0,99,192,98,176,181,190,247,
+  191,247,189,247,122,239,252,255,189,247,188,255,252,255,124,239,127,247,126,247,
+  54,206,246,222,186,255,188,255,124,247,186,255,68,115,64,107,0,99,105,140,
+  189,247,245,214,1,91,0,99,66,107,51,206,125,247,189,239,251,239,247,222,
+  254,255,62,239,62,239,190,239,253,247,253,247,124,239,49,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,152,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,51,125,239,176,188,247,127,247,126,247,189,247,189,247,
+  111,173,65,99,64,107,1,99,111,173,188,239,124,239,47,165,104,132,104,140,
+  41,132,41,132,106,140,239,164,61,239,191,247,190,247,189,247,125,239,125,239,
+  191,247,123,239,200,131,64,107,64,107,41,132,125,247,117,206,3,99,128,115,
+  192,98,175,189,189,255,60,231,190,239,190,247,190,247,126,239,191,247,125,239,
+  125,239,189,247,189,247,49,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,152,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,51,125,
+  239,176,188,247,126,239,126,247,124,231,124,247,111,173,0,91,64,107,2,99,
+  46,165,253,247,252,247,40,124,64,107,64,99,64,99,64,107,0,91,104,132,
+  252,247,125,231,125,231,125,223,127,231,189,231,60,223,255,255,41,132,64,107,
+  64,107,42,140,125,247,122,239,4,99,0,99,128,115,2,99,239,156,125,239,
+  126,247,127,239,126,239,125,231,189,239,125,239,191,247,62,239,126,247,49,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,152,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,51,125,239,176,126,247,190,247,125,239,
+  125,239,253,255,47,165,3,107,0,107,2,99,237,164,188,255,188,239,52,182,
+  41,124,197,115,65,107,1,99,64,91,167,140,126,247,190,255,124,247,114,206,
+  169,148,194,131,64,107,0,99,1,107,0,107,64,107,105,140,125,239,190,247,
+  45,157,0,91,64,107,0,107,128,107,2,107,52,214,251,255,126,239,127,231,
+  126,223,189,239,125,247,125,247,126,247,49,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  150,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,51,125,239,175,126,247,126,239,125,239,190,247,189,247,116,206,2,99,
+  64,107,0,99,40,132,253,255,61,239,126,239,125,247,252,255,117,222,1,107,
+  64,99,103,132,126,255,58,239,173,148,3,99,193,90,2,99,2,99,3,99,
+  1,99,64,107,0,99,200,123,190,255,188,239,188,247,237,156,66,99,0,91,
+  65,107,66,107,1,91,46,165,59,231,127,239,190,231,125,239,189,247,126,247,
+  50,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,152,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,51,125,239,176,190,247,125,239,
+  126,239,126,239,124,239,56,239,193,90,64,107,65,107,4,99,122,247,190,247,
+  191,239,189,239,252,247,182,214,1,99,65,107,40,132,126,255,175,173,3,91,
+  192,82,65,107,108,140,244,197,117,206,38,124,64,99,66,107,172,148,188,247,
+  127,239,188,239,187,247,244,197,201,123,193,90,64,99,0,99,2,99,117,214,
+  126,239,190,239,125,239,125,247,126,239,190,239,49,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,152,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,51,125,239,176,125,247,189,247,190,239,126,239,125,247,122,247,
+  68,107,64,99,0,91,2,99,116,206,189,247,60,231,254,247,188,239,182,206,
+  1,107,66,107,40,140,125,255,133,107,0,83,128,107,196,131,124,239,191,255,
+  253,255,104,132,64,99,1,99,47,173,252,247,127,239,189,239,189,239,191,247,
+  251,230,171,148,64,99,64,107,0,99,46,173,124,239,126,239,189,247,125,239,
+  125,239,190,239,49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,152,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,51,125,239,176,
+  125,247,190,247,190,239,126,239,191,247,187,247,45,165,0,91,128,107,0,91,
+  41,132,248,222,191,255,127,247,62,239,57,206,0,99,64,107,199,131,188,255,
+  2,91,64,99,64,99,38,140,253,255,126,247,124,239,199,115,129,107,193,90,
+  112,173,188,239,125,239,190,239,127,239,62,231,191,255,188,255,40,140,0,99,
+  128,115,200,131,188,247,125,239,190,247,125,239,125,239,189,239,49,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,152,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,51,125,239,176,189,247,125,239,125,239,126,239,
+  126,239,189,247,181,222,195,90,64,107,0,99,193,82,41,132,247,230,187,247,
+  121,239,173,148,64,107,64,99,39,132,188,255,2,91,65,99,0,99,68,123,
+  120,239,187,247,247,222,68,99,0,99,1,99,112,173,189,247,189,255,53,198,
+  186,239,189,247,124,247,251,255,134,123,1,99,64,107,201,131,189,255,125,239,
+  190,247,126,247,126,247,125,231,49,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,150,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  51,125,239,175,190,247,125,239,124,231,125,231,126,239,125,247,123,247,173,148,
+  1,107,65,107,64,107,0,91,65,99,192,82,129,107,64,99,66,99,0,91,
+  168,140,124,255,199,123,1,91,64,107,1,107,133,115,39,124,4,99,3,99,
+  0,99,65,107,237,156,191,255,60,255,40,124,67,99,172,148,112,181,233,148,
+  192,82,66,107,1,99,112,181,190,247,125,231,190,247,190,247,126,247,50,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,152,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,51,125,239,176,125,247,189,247,125,239,
+  190,239,191,239,190,247,189,255,58,247,197,131,65,107,0,99,64,107,0,99,
+  66,115,192,98,0,99,193,90,66,99,234,148,189,255,49,198,67,99,0,91,
+  64,107,0,99,129,107,192,90,233,164,65,115,0,99,41,132,126,247,247,238,
+  194,90,0,91,128,99,0,91,0,91,64,99,64,91,3,107,56,231,126,239,
+  126,231,190,239,125,247,125,239,190,239,49,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  134,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,59,125,239,167,121,247,46,165,3,99,192,90,64,99,64,99,0,99,
+  1,107,69,107,176,181,123,239,191,255,60,231,113,165,68,99,0,91,0,91,
+  69,107,242,197,185,255,197,115,1,91,135,115,187,255,242,205,40,140,193,98,
+  0,99,65,107,0,99,192,90,68,115,251,222,125,239,190,247,125,239,125,239,
+  190,247,190,247,50,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,134,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,163,
+  125,247,124,247,121,239,181,206,176,173,46,173,242,197,246,222,187,255,188,255,
+  125,247,126,239,191,247,189,247,248,230,246,222,182,214,59,239,191,255,191,255,
+  57,231,252,255,124,239,191,255,253,255,58,247,246,222,242,189,110,165,111,173,
+  117,214,251,255,125,239,125,239,190,247,3,125,239,130,190,247,190,247,49,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,129,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,59,125,239,160,127,231,191,239,191,239,
+  125,239,124,231,125,239,190,247,190,255,191,255,126,247,126,239,125,231,126,239,
+  190,247,126,247,125,255,124,231,190,247,126,239,61,231,191,247,190,239,126,239,
+  63,231,126,239,126,239,191,247,189,239,124,239,125,239,125,239,126,239,3,190,
+  247,4,125,239,129,190,247,49,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,134,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,59,
+  125,239,160,190,239,126,231,126,231,190,239,190,239,126,239,125,231,125,239,125,
+  247,125,239,189,239,253,239,189,239,189,239,126,239,125,239,189,239,189,239,253,
+  239,189,239,190,239,124,231,190,247,189,239,190,239,125,239,125,231,126,239,191,
+  239,191,239,126,239,126,239,3,125,239,133,190,247,190,247,125,239,125,239,190,
+  247,49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,128,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,160,189,239,189,
+  239,189,247,190,247,190,247,125,239,189,247,254,255,188,247,188,239,188,239,125,
+  239,190,239,189,239,189,239,189,247,126,247,125,239,124,247,189,247,61,239,127,
+  247,190,247,125,247,188,239,188,239,189,247,190,247,125,239,61,239,125,239,190,
+  247,3,125,239,130,190,247,190,247,52,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,120,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,59,125,239,155,189,247,125,247,124,239,125,239,126,247,190,255,190,247,124,
+  239,123,231,189,239,126,239,127,239,127,247,126,239,125,239,189,239,126,255,125,
+  247,125,247,190,255,125,247,190,255,60,239,254,255,189,247,190,247,125,247,3,
+  126,247,131,190,247,125,247,190,247,56,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,118,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,59,125,239,135,61,239,190,255,191,255,190,247,125,239,125,239,126,247,3,
+  190,247,144,61,231,61,239,126,247,126,239,190,239,125,239,124,239,189,247,190,
+  247,124,239,124,239,253,255,188,247,124,239,125,239,126,247,4,125,239,132,126,
+  247,125,239,190,247,190,247,55,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,121,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,59,
+  125,239,131,190,247,190,247,189,247,4,189,239,154,125,239,62,239,126,239,189,
+  247,253,255,188,247,124,239,190,247,126,239,190,239,126,239,127,239,127,239,190,
+  239,124,231,191,247,127,239,126,239,126,239,125,239,190,247,190,247,124,231,189,
+  239,190,239,125,239,3,190,247,53,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,84,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  59,125,239,133,190,247,190,247,125,239,125,239,190,247,9,125,239,4,190,247,
+  4,125,239,129,190,247,3,125,239,3,190,247,60,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,84,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,59,125,239,129,190,247,7,125,239,6,190,247,5,125,239,136,
+  190,247,190,247,125,239,190,247,125,239,125,239,190,247,190,247,62,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,82,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,64,125,239,3,190,247,9,125,239,134,190,247,
+  125,239,190,247,190,247,125,239,190,247,7,125,239,130,190,247,190,247,57,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,82,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,59,125,239,129,190,247,6,125,239,3,
+  190,247,4,125,239,4,190,247,5,125,239,3,190,247,129,125,239,4,190,247,
+  58,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,78,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,60,125,239,5,190,247,4,125,
+  239,5,190,247,3,125,239,4,190,247,8,125,239,130,190,247,190,247,57,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,84,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,64,125,239,6,190,247,5,125,239,3,
+  190,247,4,125,239,133,190,247,125,239,125,239,190,247,190,247,3,125,239,129,
+  190,247,57,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,99,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,129,190,247,
+  4,125,239,136,190,247,125,239,125,239,186,214,56,198,117,173,178,148,207,123,
+  7,142,115,135,207,123,178,148,117,173,247,189,60,231,125,239,125,239,3,190,
+  247,59,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,92,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,61,125,239,134,190,247,190,
+  247,251,222,117,173,207,123,203,90,10,73,74,129,138,82,6,73,74,135,203,
+  90,207,123,52,165,186,214,125,239,190,247,190,247,57,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,140,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,43,125,239,136,190,247,125,239,125,239,190,247,190,247,60,
+  231,190,247,190,247,7,125,239,133,190,247,190,247,186,214,178,148,203,90,3,
+  73,74,129,8,66,7,73,74,133,8,66,73,74,8,66,73,74,8,66,9,
+  73,74,143,12,99,243,156,186,214,190,247,125,239,125,239,190,247,190,247,125,
+  239,125,239,190,247,125,239,190,247,125,239,190,247,45,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,152,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,44,125,239,151,190,247,190,247,125,239,190,247,190,247,125,
+  239,125,239,190,247,190,247,60,231,190,247,125,239,125,239,190,247,182,181,142,
+  115,138,82,8,66,138,82,138,82,73,74,73,74,138,82,5,73,74,131,8,
+  66,73,74,138,82,4,73,74,130,138,82,8,66,10,73,74,142,77,107,182,
+  181,125,239,190,247,125,239,190,247,190,247,125,239,190,247,60,231,190,247,125,
+  239,125,239,255,255,43,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,164,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,43,125,239,
+  132,190,247,125,239,190,247,190,247,3,125,239,136,190,247,60,231,190,247,190,
+  247,125,239,125,239,247,189,12,99,5,73,74,149,8,66,73,74,73,74,8,
+  66,203,90,142,115,178,148,117,173,56,198,121,206,186,214,125,239,190,247,125,
+  239,121,206,56,198,56,198,182,181,243,156,207,123,138,82,7,73,74,143,8,
+  66,73,74,12,99,52,165,190,247,190,247,60,231,190,247,125,239,190,247,125,
+  239,190,247,125,239,60,231,190,247,42,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,171,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,43,125,239,3,190,247,140,125,239,125,239,190,247,190,247,125,239,255,255,
+  60,231,60,231,56,198,12,99,199,57,138,82,5,73,74,153,138,82,142,115,
+  117,173,186,214,125,239,125,239,190,247,125,239,190,247,125,239,190,247,190,247,
+  125,239,255,255,125,239,190,247,125,239,125,239,190,247,125,239,190,247,251,222,
+  117,173,207,123,138,82,3,73,74,129,138,82,3,73,74,140,203,90,182,181,
+  190,247,125,239,190,247,60,231,125,239,190,247,190,247,125,239,125,239,190,247,
+  41,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,172,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,44,125,239,148,255,255,125,239,
+  125,239,190,247,125,239,125,239,255,255,125,239,186,214,207,123,8,66,73,74,
+  73,74,8,66,73,74,8,66,138,82,142,115,117,173,60,231,3,125,239,141,
+  190,247,125,239,190,247,125,239,190,247,125,239,190,247,125,239,190,247,125,239,
+  60,231,125,239,125,239,3,190,247,137,125,239,190,247,190,247,125,239,251,222,
+  182,181,207,123,73,74,8,66,5,73,74,138,207,123,56,198,125,239,190,247,
+  190,247,60,231,190,247,190,247,125,239,190,247,41,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,161,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,46,125,239,143,255,255,190,247,125,239,190,247,60,231,182,181,
+  138,82,8,66,73,74,8,66,138,82,73,74,8,66,178,148,121,206,4,190,
+  247,4,125,239,138,255,255,190,247,190,247,60,231,190,247,190,247,125,239,125,
+  239,255,255,125,239,3,190,247,140,125,239,190,247,190,247,125,239,125,239,190,
+  247,190,247,125,239,251,222,113,140,203,90,8,66,4,73,74,136,138,82,243,
+  156,60,231,190,247,190,247,125,239,125,239,190,247,42,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,172,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,43,125,239,146,190,247,125,239,190,247,125,239,125,239,255,
+  255,186,214,207,123,8,66,73,74,8,66,138,82,73,74,73,74,113,140,251,
+  222,125,239,190,247,5,125,239,133,190,247,125,239,190,247,190,247,60,231,3,
+  190,247,140,60,231,56,198,251,222,190,247,60,231,190,247,60,231,125,239,190,
+  247,125,239,125,239,190,247,4,125,239,145,190,247,190,247,251,222,178,148,138,
+  82,8,66,73,74,73,74,8,66,73,74,207,123,186,214,125,239,190,247,190,
+  247,125,239,190,247,41,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,172,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,43,125,239,
+  150,190,247,190,247,125,239,125,239,255,255,56,198,12,99,8,66,73,74,73,
+  74,138,82,73,74,142,115,186,214,190,247,60,231,125,239,125,239,190,247,190,
+  247,125,239,125,239,3,190,247,144,60,231,117,173,48,132,56,198,190,247,125,
+  239,121,206,73,74,243,156,125,239,190,247,251,222,207,123,52,165,190,247,190,
+  247,3,125,239,3,190,247,3,125,239,141,190,247,186,214,48,132,73,74,73,
+  74,138,82,73,74,199,57,12,99,56,198,125,239,125,239,190,247,42,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,193,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,35,125,239,133,190,247,125,239,190,247,125,
+  239,125,239,4,190,247,3,125,239,130,182,181,138,82,4,73,74,133,138,82,
+  117,173,125,239,125,239,190,247,3,125,239,157,190,247,125,239,190,247,56,198,
+  48,132,190,247,190,247,125,239,52,165,73,74,56,198,190,247,125,239,56,198,
+  73,74,243,156,190,247,125,239,56,198,73,74,52,165,125,239,190,247,125,239,
+  113,140,247,189,190,247,125,239,190,247,3,125,239,134,190,247,190,247,125,239,
+  182,181,12,99,8,66,4,73,74,138,117,173,255,255,125,239,190,247,125,239,
+  125,239,190,247,125,239,125,239,190,247,35,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  200,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,36,125,239,139,190,247,125,239,190,247,190,247,125,239,125,239,190,247,
+  125,239,190,247,125,239,182,181,5,73,74,168,207,123,186,214,190,247,125,239,
+  255,255,125,239,125,239,255,255,125,239,125,239,190,247,125,239,178,148,138,82,
+  247,189,190,247,125,239,56,198,73,74,52,165,125,239,125,239,121,206,73,74,
+  52,165,190,247,125,239,247,189,73,74,117,173,190,247,190,247,186,214,73,74,
+  113,140,125,239,190,247,190,247,125,239,190,247,4,125,239,137,255,255,251,222,
+  113,140,8,66,138,82,73,74,138,82,8,66,113,140,3,125,239,134,255,255,
+  125,239,190,247,125,239,60,231,190,247,34,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  198,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,35,125,239,135,190,247,190,247,125,239,190,247,125,239,125,239,190,247,
+  3,125,239,130,56,198,8,66,4,73,74,183,178,148,60,231,255,255,190,247,
+  190,247,125,239,125,239,190,247,186,214,113,140,186,214,190,247,125,239,186,214,
+  8,66,113,140,125,239,190,247,251,222,73,74,48,132,125,239,255,255,247,189,
+  203,90,113,140,190,247,125,239,178,148,73,74,121,206,125,239,60,231,243,156,
+  199,57,56,198,190,247,60,231,60,231,48,132,56,198,190,247,125,239,190,247,
+  125,239,125,239,255,255,60,231,52,165,73,74,8,66,73,74,73,74,8,66,
+  178,148,8,125,239,129,190,247,33,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,210,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  35,125,239,139,190,247,125,239,190,247,125,239,125,239,190,247,125,239,190,247,
+  125,239,182,181,8,66,4,73,74,185,117,173,125,239,190,247,125,239,60,231,
+  190,247,255,255,125,239,60,231,182,181,8,66,113,140,125,239,190,247,125,239,
+  12,99,138,82,125,239,190,247,125,239,178,148,182,181,190,247,60,231,138,82,
+  8,66,138,82,125,239,190,247,182,181,178,148,125,239,125,239,255,255,138,82,
+  203,90,60,231,125,239,190,247,52,165,8,66,117,173,190,247,125,239,190,247,
+  255,255,60,231,190,247,190,247,125,239,182,181,203,90,8,66,73,74,138,82,
+  8,66,113,140,3,190,247,133,125,239,190,247,190,247,60,231,190,247,33,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,202,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,36,125,239,136,190,247,190,247,125,239,
+  190,247,125,239,125,239,190,247,182,181,3,73,74,173,138,82,138,82,247,189,
+  125,239,190,247,190,247,125,239,190,247,190,247,60,231,190,247,190,247,125,239,
+  12,99,138,82,121,206,190,247,125,239,52,165,113,140,251,222,60,231,190,247,
+  60,231,125,239,190,247,125,239,8,66,73,74,73,74,125,239,190,247,125,239,
+  125,239,190,247,125,239,125,239,48,132,52,165,190,247,190,247,121,206,73,74,
+  12,99,190,247,4,125,239,130,190,247,125,239,3,190,247,137,121,206,12,99,
+  8,66,73,74,138,82,73,74,182,181,125,239,190,247,3,125,239,129,190,247,
+  34,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,208,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,36,125,239,136,190,247,125,239,
+  190,247,125,239,190,247,255,255,182,181,138,82,3,73,74,155,138,82,121,206,
+  190,247,125,239,190,247,125,239,125,239,190,247,48,132,77,107,60,231,125,239,
+  190,247,52,165,8,66,178,148,125,239,190,247,125,239,190,247,125,239,190,247,
+  125,239,255,255,190,247,125,239,190,247,3,73,74,165,190,247,190,247,125,239,
+  255,255,125,239,190,247,125,239,190,247,60,231,190,247,125,239,178,148,8,66,
+  182,181,125,239,190,247,125,239,142,115,207,123,190,247,190,247,125,239,190,247,
+  125,239,190,247,186,214,12,99,73,74,73,74,138,82,138,82,117,173,125,239,
+  190,247,125,239,125,239,190,247,34,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,208,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  35,125,239,136,190,247,125,239,125,239,190,247,125,239,190,247,186,214,12,99,
+  4,73,74,180,247,189,190,247,190,247,125,239,190,247,125,239,255,255,60,231,
+  113,140,138,82,178,148,190,247,125,239,190,247,178,148,247,189,190,247,125,239,
+  255,255,60,231,190,247,190,247,60,231,125,239,190,247,190,247,125,239,138,82,
+  73,74,138,82,125,239,190,247,125,239,125,239,190,247,190,247,125,239,190,247,
+  190,247,125,239,125,239,56,198,178,148,60,231,190,247,190,247,52,165,8,66,
+  48,132,125,239,125,239,190,247,3,125,239,136,190,247,56,198,203,90,73,74,
+  8,66,199,57,77,107,56,198,3,190,247,130,60,231,190,247,33,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,210,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,35,125,239,136,190,247,125,239,190,247,125,239,
+  255,255,60,231,142,115,8,66,3,73,74,129,117,173,3,125,239,177,190,247,
+  125,239,190,247,60,231,255,255,60,231,203,90,73,74,247,189,125,239,125,239,
+  190,247,125,239,125,239,190,247,125,239,190,247,125,239,125,239,190,247,190,247,
+  125,239,60,231,255,255,56,198,121,206,247,189,190,247,60,231,255,255,125,239,
+  190,247,125,239,190,247,125,239,125,239,190,247,190,247,125,239,125,239,190,247,
+  125,239,121,206,8,66,12,99,251,222,190,247,125,239,125,239,3,190,247,141,
+  125,239,190,247,182,181,73,74,138,82,138,82,8,66,142,115,251,222,190,247,
+  60,231,190,247,190,247,33,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,138,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,38,125,
+  239,131,190,247,190,247,243,156,4,73,74,142,52,165,125,239,125,239,190,247,
+  125,239,125,239,121,206,178,148,125,239,125,239,190,247,121,206,138,82,178,148,
+  33,125,239,142,52,165,73,74,56,198,255,255,125,239,125,239,182,181,182,181,
+  190,247,125,239,190,247,125,239,255,255,52,165,3,73,74,132,8,66,178,148,
+  190,247,190,247,35,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,148,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,134,
+  190,247,190,247,125,239,255,255,56,198,203,90,3,73,74,132,207,123,125,239,
+  125,239,255,255,3,125,239,131,142,115,73,74,178,148,3,190,247,130,186,214,
+  255,255,32,125,239,151,190,247,125,239,251,222,190,247,125,239,125,239,247,189,
+  73,74,138,82,125,239,255,255,125,239,190,247,125,239,125,239,113,140,8,66,
+  138,82,73,74,73,74,247,189,125,239,255,255,34,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,146,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,35,125,239,129,190,247,3,125,239,147,142,115,8,66,138,82,
+  73,74,138,82,251,222,190,247,125,239,190,247,60,231,255,255,125,239,125,239,
+  77,107,73,74,113,140,56,198,190,247,255,255,33,125,239,129,190,247,3,125,
+  239,141,121,206,182,181,73,74,138,82,121,206,190,247,190,247,60,231,60,231,
+  190,247,255,255,251,222,12,99,3,73,74,131,77,107,125,239,60,231,34,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,144,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,35,125,239,132,190,247,60,231,255,255,
+  117,173,4,73,74,134,182,181,255,255,125,239,125,239,190,247,190,247,3,125,
+  239,135,60,231,142,115,73,74,73,74,113,140,125,239,190,247,34,125,239,134,
+  255,255,117,173,138,82,73,74,203,90,121,206,3,125,239,141,190,247,190,247,
+  125,239,125,239,190,247,56,198,73,74,138,82,8,66,73,74,243,156,125,239,
+  190,247,33,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,146,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,132,190,247,
+  125,239,60,231,203,90,3,73,74,136,48,132,190,247,60,231,190,247,190,247,
+  60,231,178,148,247,189,3,190,247,133,182,181,73,74,73,74,8,66,178,148,
+  33,125,239,150,190,247,125,239,182,181,73,74,73,74,8,66,113,140,190,247,
+  255,255,125,239,56,198,113,140,125,239,190,247,125,239,190,247,190,247,178,148,
+  73,74,8,66,138,82,73,74,35,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,148,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  36,125,239,130,190,247,178,148,3,73,74,146,203,90,186,214,60,231,190,247,
+  125,239,190,247,186,214,138,82,73,74,113,140,125,239,125,239,60,231,77,107,
+  138,82,138,82,73,74,117,173,33,125,239,141,56,198,138,82,73,74,8,66,
+  12,99,121,206,125,239,125,239,178,148,138,82,73,74,56,198,190,247,3,125,
+  239,135,60,231,138,82,73,74,138,82,73,74,113,140,190,247,33,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,148,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,35,125,239,152,190,247,60,231,203,90,138,82,
+  8,66,138,82,178,148,190,247,190,247,255,255,125,239,125,239,190,247,121,206,
+  12,99,73,74,142,115,125,239,125,239,60,231,77,107,8,66,142,115,60,231,
+  32,125,239,142,190,247,190,247,207,123,73,74,12,99,56,198,190,247,190,247,
+  207,123,73,74,203,90,56,198,190,247,125,239,4,190,247,129,52,165,4,73,
+  74,129,251,222,33,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,144,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,135,
+  190,247,117,173,73,74,8,66,138,82,138,82,60,231,3,125,239,141,255,255,
+  125,239,125,239,190,247,60,231,207,123,178,148,190,247,190,247,125,239,125,239,
+  113,140,60,231,35,125,239,140,190,247,178,148,121,206,190,247,125,239,125,239,
+  178,148,48,132,251,222,125,239,190,247,190,247,3,125,239,131,190,247,190,247,
+  203,90,3,73,74,129,52,165,33,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,166,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  29,125,239,141,190,247,125,239,125,239,190,247,125,239,125,239,190,247,203,90,
+  73,74,138,82,199,57,117,173,190,247,3,125,239,138,60,231,60,231,125,239,
+  190,247,125,239,190,247,125,239,247,189,77,107,52,165,3,190,247,131,125,239,
+  190,247,190,247,4,125,239,129,190,247,33,125,239,129,190,247,4,125,239,145,
+  60,231,251,222,190,247,125,239,190,247,125,239,182,181,8,66,73,74,73,74,
+  138,82,125,239,125,239,190,247,125,239,125,239,190,247,27,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,174,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,27,125,239,131,190,247,125,239,190,247,5,125,239,154,
+  56,198,73,74,73,74,8,66,138,82,251,222,125,239,190,247,190,247,125,239,
+  142,115,73,74,243,156,251,222,190,247,60,231,190,247,190,247,52,165,138,82,
+  207,123,121,206,125,239,190,247,125,239,125,239,4,190,247,130,125,239,190,247,
+  32,125,239,150,190,247,125,239,190,247,60,231,52,165,73,74,12,99,125,239,
+  190,247,125,239,190,247,60,231,138,82,8,66,73,74,73,74,247,189,190,247,
+  190,247,125,239,125,239,190,247,27,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,180,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  27,125,239,131,190,247,125,239,190,247,3,125,239,162,190,247,190,247,113,140,
+  8,66,73,74,8,66,113,140,190,247,125,239,190,247,125,239,255,255,117,173,
+  12,99,73,74,138,82,247,189,190,247,125,239,125,239,190,247,117,173,73,74,
+  73,74,113,140,60,231,190,247,190,247,125,239,125,239,190,247,190,247,125,239,
+  190,247,33,125,239,136,190,247,247,189,138,82,73,74,12,99,178,148,125,239,
+  190,247,3,125,239,139,178,148,138,82,73,74,73,74,207,123,190,247,125,239,
+  125,239,190,247,125,239,190,247,26,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,174,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  29,125,239,142,190,247,125,239,125,239,190,247,190,247,60,231,203,90,73,74,
+  73,74,138,82,56,198,125,239,190,247,125,239,3,190,247,149,251,222,243,156,
+  77,107,121,206,125,239,125,239,255,255,125,239,190,247,247,189,203,90,73,74,
+  12,99,56,198,60,231,125,239,190,247,190,247,60,231,125,239,190,247,33,125,
+  239,134,255,255,186,214,142,115,243,156,251,222,190,247,3,125,239,131,190,247,
+  125,239,186,214,3,73,74,135,138,82,251,222,190,247,125,239,190,247,125,239,
+  190,247,26,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,174,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,131,190,247,
+  125,239,190,247,4,125,239,129,56,198,3,73,74,135,77,107,190,247,60,231,
+  190,247,125,239,125,239,60,231,3,190,247,133,251,222,255,255,125,239,190,247,
+  60,231,3,190,247,139,121,206,12,99,8,66,73,74,178,148,60,231,60,231,
+  125,239,255,255,125,239,190,247,34,125,239,150,255,255,251,222,125,239,190,247,
+  190,247,125,239,190,247,125,239,190,247,190,247,125,239,12,99,138,82,73,74,
+  73,74,182,181,190,247,190,247,125,239,125,239,190,247,190,247,25,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,175,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,27,125,239,129,190,247,3,125,239,132,190,247,
+  125,239,125,239,178,148,3,73,74,156,48,132,190,247,125,239,190,247,125,239,
+  56,198,56,198,125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,247,
+  125,239,125,239,60,231,190,247,60,231,207,123,8,66,73,74,203,90,247,189,
+  190,247,60,231,190,247,33,125,239,130,190,247,60,231,3,190,247,137,125,239,
+  60,231,186,214,182,181,190,247,125,239,190,247,125,239,52,165,3,73,74,132,
+  48,132,125,239,190,247,125,239,3,190,247,25,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,165,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,31,125,239,132,190,247,190,247,125,239,77,107,3,73,74,139,247,
+  189,190,247,190,247,125,239,125,239,77,107,8,66,203,90,48,132,121,206,190,
+  247,3,125,239,141,190,247,125,239,190,247,190,247,60,231,125,239,125,239,178,
+  148,138,82,8,66,73,74,113,140,60,231,34,125,239,142,190,247,125,239,125,
+  239,190,247,121,206,48,132,203,90,73,74,12,99,60,231,190,247,125,239,125,
+  239,186,214,3,73,74,131,203,90,125,239,125,239,3,190,247,26,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,167,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,28,125,239,134,190,247,125,239,190,247,190,247,
+  125,239,60,231,3,73,74,130,8,66,190,247,4,125,239,137,56,198,178,148,
+  203,90,73,74,52,165,190,247,125,239,190,247,190,247,3,125,239,5,190,247,
+  135,117,173,203,90,73,74,8,66,77,107,56,198,190,247,33,125,239,150,190,
+  247,125,239,125,239,182,181,73,74,73,74,113,140,247,189,190,247,190,247,125,
+  239,190,247,125,239,203,90,8,66,73,74,8,66,60,231,125,239,190,247,125,
+  239,190,247,26,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,166,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,29,125,239,4,190,
+  247,129,247,189,3,73,74,130,142,115,125,239,3,190,247,4,125,239,132,186,
+  214,60,231,190,247,190,247,10,125,239,137,190,247,121,206,142,115,8,66,8,
+  66,138,82,178,148,125,239,125,239,3,190,247,3,125,239,3,190,247,130,125,
+  239,190,247,20,125,239,133,190,247,60,231,125,239,60,231,121,206,3,125,239,
+  134,190,247,190,247,125,239,125,239,190,247,77,107,3,73,74,134,182,181,125,
+  239,190,247,125,239,190,247,190,247,25,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,175,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,29,125,239,129,190,247,3,125,239,129,52,165,3,73,74,132,113,140,190,
+  247,190,247,60,231,3,190,247,6,125,239,129,190,247,9,125,239,146,60,231,
+  255,255,251,222,48,132,73,74,8,66,138,82,203,90,121,206,125,239,255,255,
+  60,231,190,247,190,247,125,239,125,239,190,247,60,231,3,190,247,130,125,239,
+  190,247,16,125,239,130,190,247,125,239,5,190,247,136,125,239,190,247,125,239,
+  60,231,190,247,190,247,125,239,52,165,3,73,74,133,52,165,125,239,190,247,
+  125,239,190,247,26,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,191,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,131,
+  190,247,125,239,190,247,3,125,239,139,113,140,8,66,73,74,73,74,117,173,
+  125,239,125,239,255,255,255,255,247,189,121,206,3,190,247,132,125,239,125,239,
+  190,247,190,247,8,125,239,139,190,247,190,247,125,239,190,247,190,247,52,165,
+  73,74,73,74,138,82,8,66,243,156,3,190,247,135,60,231,190,247,125,239,
+  190,247,125,239,190,247,60,231,3,190,247,17,125,239,142,190,247,60,231,125,
+  239,190,247,60,231,190,247,125,239,56,198,182,181,190,247,190,247,60,231,125,
+  239,247,189,3,73,74,129,48,132,3,125,239,129,190,247,26,125,239,138,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,
+  60,231,1,182,181,179,0,129,182,181,127,60,231,80,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,29,125,239,148,190,247,125,239,190,247,125,239,142,
+  115,73,74,73,74,8,66,121,206,190,247,125,239,190,247,251,222,138,82,73,
+  74,73,74,138,82,117,173,125,239,190,247,15,125,239,143,190,247,56,198,138,
+  82,8,66,138,82,8,66,12,99,121,206,125,239,190,247,125,239,190,247,125,
+  239,125,239,255,255,3,190,247,17,125,239,143,190,247,125,239,255,255,190,247,
+  255,255,56,198,203,90,138,82,73,74,138,82,125,239,190,247,125,239,255,255,
+  121,206,3,73,74,129,77,107,3,125,239,129,190,247,26,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,192,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,29,125,239,150,190,247,125,239,190,247,190,247,12,99,
+  73,74,138,82,8,66,251,222,190,247,125,239,190,247,255,255,117,173,243,156,
+  142,115,77,107,56,198,190,247,125,239,125,239,190,247,8,125,239,132,190,247,
+  190,247,60,231,125,239,3,190,247,145,125,239,207,123,73,74,8,66,138,82,
+  203,90,117,173,48,132,138,82,8,66,203,90,178,148,121,206,255,255,125,239,
+  125,239,190,247,16,125,239,138,190,247,60,231,190,247,60,231,125,239,121,206,
+  77,107,77,107,52,165,117,173,4,125,239,129,190,247,3,73,74,129,138,82,
+  3,125,239,129,190,247,26,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,181,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,28,125,
+  239,134,190,247,125,239,125,239,190,247,125,239,138,82,3,73,74,142,125,239,
+  190,247,190,247,60,231,190,247,125,239,190,247,125,239,125,239,190,247,125,239,
+  190,247,190,247,60,231,8,125,239,151,60,231,190,247,255,255,190,247,60,231,
+  125,239,190,247,125,239,125,239,243,156,73,74,73,74,8,66,73,74,138,82,
+  73,74,138,82,73,74,73,74,203,90,56,198,190,247,190,247,18,125,239,129,
+  190,247,5,125,239,137,190,247,125,239,190,247,190,247,125,239,190,247,125,239,
+  255,255,8,66,3,73,74,30,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,180,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,28,
+  125,239,129,190,247,4,125,239,146,73,74,73,74,8,66,73,74,190,247,125,
+  239,190,247,125,239,190,247,190,247,125,239,125,239,190,247,60,231,190,247,190,
+  247,125,239,190,247,8,125,239,142,190,247,125,239,125,239,190,247,190,247,125,
+  239,190,247,125,239,190,247,125,239,121,206,138,82,199,57,138,82,6,73,74,
+  131,207,123,125,239,190,247,18,125,239,135,190,247,125,239,190,247,125,239,190,
+  247,125,239,125,239,3,190,247,133,125,239,190,247,190,247,125,239,203,90,3,
+  73,74,130,190,247,190,247,28,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,188,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,28,
+  125,239,150,190,247,125,239,190,247,125,239,125,239,73,74,73,74,138,82,8,
+  66,125,239,190,247,125,239,190,247,190,247,125,239,125,239,190,247,121,206,142,
+  115,142,115,77,107,48,132,10,125,239,149,190,247,190,247,125,239,125,239,190,
+  247,125,239,125,239,190,247,125,239,125,239,56,198,138,82,8,66,73,74,77,
+  107,56,198,48,132,73,74,73,74,8,66,251,222,18,125,239,131,190,247,125,
+  239,207,123,3,142,115,138,186,214,125,239,125,239,190,247,125,239,190,247,125,
+  239,190,247,125,239,207,123,3,73,74,130,190,247,190,247,28,125,239,138,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,
+  60,231,1,182,181,190,0,129,182,181,127,60,231,80,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,28,125,239,129,190,247,3,125,239,147,190,247,73,
+  74,73,74,8,66,138,82,125,239,190,247,125,239,125,239,56,198,138,82,73,
+  74,73,74,138,82,8,66,138,82,73,74,73,74,190,247,17,125,239,142,190,
+  247,125,239,56,198,8,66,138,82,73,74,251,222,125,239,125,239,8,66,138,
+  82,73,74,56,198,190,247,3,125,239,133,190,247,190,247,60,231,190,247,190,
+  247,10,125,239,133,190,247,8,66,73,74,138,82,8,66,4,73,74,134,243,
+  156,60,231,255,255,125,239,125,239,142,115,3,73,74,133,125,239,190,247,190,
+  247,125,239,190,247,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,192,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,28,125,239,
+  129,190,247,3,125,239,146,190,247,73,74,73,74,138,82,73,74,125,239,190,
+  247,125,239,190,247,251,222,243,156,52,165,243,156,48,132,138,82,73,74,8,
+  66,138,82,17,125,239,152,190,247,190,247,125,239,186,214,138,82,73,74,138,
+  82,117,173,190,247,247,189,138,82,73,74,138,82,117,173,60,231,125,239,186,
+  214,186,214,56,198,190,247,190,247,125,239,125,239,190,247,10,125,239,133,138,
+  82,73,74,8,66,203,90,48,132,3,243,156,130,121,206,190,247,3,125,239,
+  129,142,115,3,73,74,133,125,239,190,247,125,239,125,239,190,247,25,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,177,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,29,125,239,129,190,247,3,125,239,4,73,
+  74,137,255,255,125,239,125,239,190,247,125,239,190,247,125,239,190,247,60,231,
+  3,121,206,130,56,198,190,247,18,125,239,135,255,255,125,239,203,90,8,66,
+  138,82,73,74,142,115,6,73,74,133,138,82,73,74,8,66,73,74,117,173,
+  3,125,239,129,190,247,9,125,239,147,190,247,56,198,121,206,247,189,121,206,
+  60,231,125,239,190,247,190,247,125,239,190,247,125,239,190,247,190,247,142,115,
+  73,74,138,82,73,74,190,247,3,125,239,129,190,247,25,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,176,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,29,125,239,129,190,247,3,125,239,129,138,82,3,73,
+  74,134,125,239,125,239,255,255,190,247,125,239,190,247,3,125,239,132,190,247,
+  125,239,125,239,190,247,18,125,239,138,190,247,60,231,125,239,117,173,203,90,
+  199,57,73,74,138,82,8,66,8,66,4,73,74,135,8,66,73,74,8,66,
+  138,82,178,148,190,247,190,247,13,125,239,140,190,247,125,239,125,239,60,231,
+  190,247,125,239,255,255,125,239,190,247,255,255,125,239,190,247,4,73,74,133,
+  190,247,125,239,190,247,125,239,190,247,25,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  180,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,27,125,239,131,190,247,125,239,190,247,3,125,239,145,203,90,73,74,
+  73,74,138,82,125,239,190,247,125,239,60,231,190,247,125,239,190,247,56,198,
+  117,173,60,231,190,247,125,239,190,247,18,125,239,139,190,247,60,231,190,247,
+  125,239,178,148,138,82,73,74,8,66,138,82,203,90,8,66,7,73,74,129,
+  117,173,12,125,239,144,190,247,125,239,190,247,125,239,190,247,251,222,182,181,
+  56,198,60,231,60,231,255,255,60,231,125,239,60,231,190,247,138,82,3,73,
+  74,132,125,239,125,239,190,247,190,247,26,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  173,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,27,125,239,131,190,247,125,239,190,247,3,125,239,129,142,115,3,73,
+  74,138,56,198,125,239,125,239,190,247,60,231,203,90,73,74,8,66,73,74,
+  182,181,3,190,247,17,125,239,131,190,247,125,239,190,247,3,125,239,134,251,
+  222,52,165,52,165,117,173,121,206,142,115,6,73,74,130,8,66,251,222,3,
+  190,247,11,125,239,141,190,247,125,239,125,239,247,189,203,90,8,66,138,82,
+  203,90,125,239,190,247,190,247,125,239,251,222,3,73,74,130,203,90,125,239,
+  3,190,247,26,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,189,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,148,190,
+  247,125,239,190,247,190,247,125,239,125,239,113,140,73,74,73,74,138,82,247,
+  189,190,247,125,239,255,255,125,239,207,123,142,115,243,156,182,181,60,231,3,
+  125,239,129,190,247,16,125,239,3,190,247,137,125,239,190,247,190,247,125,239,
+  125,239,190,247,60,231,190,247,117,173,6,73,74,129,142,115,3,125,239,129,
+  190,247,9,125,239,143,190,247,190,247,125,239,190,247,255,255,125,239,117,173,
+  243,156,207,123,207,123,125,239,190,247,125,239,125,239,56,198,3,73,74,134,
+  142,115,125,239,190,247,125,239,190,247,190,247,25,125,239,138,190,247,125,239,
+  125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,172,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,
+  125,239,190,247,27,125,239,135,190,247,190,247,125,239,190,247,125,239,125,239,
+  178,148,3,73,74,141,243,156,125,239,190,247,60,231,190,247,125,239,125,239,
+  190,247,125,239,190,247,125,239,190,247,190,247,17,125,239,129,190,247,5,125,
+  239,129,190,247,5,125,239,130,73,74,8,66,4,73,74,133,121,206,190,247,
+  190,247,125,239,190,247,10,125,239,3,190,247,129,60,231,4,190,247,3,125,
+  239,131,190,247,125,239,117,173,3,73,74,134,48,132,190,247,190,247,125,239,
+  125,239,190,247,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,166,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,142,
+  190,247,125,239,190,247,125,239,190,247,125,239,182,181,8,66,73,74,138,82,
+  142,115,255,255,125,239,190,247,4,125,239,132,190,247,125,239,125,239,190,247,
+  28,125,239,136,190,247,125,239,77,107,8,66,138,82,73,74,138,82,117,173,
+  3,125,239,129,190,247,10,125,239,143,190,247,190,247,125,239,190,247,125,239,
+  190,247,125,239,125,239,190,247,60,231,190,247,190,247,125,239,125,239,48,132,
+  3,73,74,131,52,165,190,247,190,247,28,125,239,138,190,247,125,239,125,239,
+  12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,
+  164,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,
+  190,247,28,125,239,130,190,247,125,239,3,190,247,129,121,206,3,73,74,141,
+  12,99,125,239,125,239,190,247,125,239,190,247,190,247,251,222,52,165,207,123,
+  247,189,125,239,190,247,26,125,239,138,190,247,125,239,125,239,178,148,73,74,
+  73,74,12,99,56,198,125,239,255,255,15,125,239,136,190,247,190,247,121,206,
+  77,107,52,165,60,231,125,239,255,255,3,125,239,138,190,247,77,107,8,66,
+  73,74,8,66,121,206,190,247,125,239,190,247,190,247,26,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,166,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,28,125,239,139,190,247,125,239,190,247,125,239,190,247,
+  125,239,203,90,73,74,73,74,138,82,186,214,4,125,239,129,207,123,3,73,
+  74,132,243,156,190,247,125,239,190,247,24,125,239,138,190,247,190,247,125,239,
+  190,247,251,222,117,173,182,181,60,231,190,247,190,247,17,125,239,149,60,231,
+  182,181,73,74,73,74,8,66,77,107,125,239,190,247,125,239,125,239,60,231,
+  73,74,138,82,73,74,73,74,190,247,125,239,125,239,190,247,125,239,190,247,
+  25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,173,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,28,125,239,135,190,247,125,239,
+  190,247,125,239,190,247,190,247,207,123,3,73,74,141,117,173,125,239,125,239,
+  190,247,125,239,48,132,48,132,52,165,251,222,125,239,190,247,190,247,60,231,
+  24,125,239,136,190,247,125,239,125,239,190,247,190,247,251,222,125,239,190,247,
+  4,125,239,129,190,247,12,125,239,3,190,247,148,125,239,60,231,182,181,48,
+  132,207,123,125,239,190,247,125,239,190,247,247,189,8,66,73,74,138,82,77,
+  107,190,247,125,239,190,247,125,239,125,239,190,247,25,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,162,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,30,125,239,133,190,247,125,239,125,239,190,247,117,173,3,
+  73,74,131,142,115,125,239,125,239,3,190,247,135,60,231,125,239,125,239,255,
+  255,125,239,125,239,190,247,26,125,239,138,190,247,125,239,255,255,125,239,190,
+  247,60,231,190,247,125,239,190,247,190,247,16,125,239,148,190,247,190,247,60,
+  231,125,239,190,247,125,239,125,239,190,247,190,247,142,115,138,82,73,74,8,
+  66,52,165,125,239,125,239,190,247,125,239,125,239,190,247,25,125,239,138,190,
+  247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,
+  60,231,1,182,181,168,0,129,182,181,127,60,231,80,60,231,133,251,222,186,
+  214,12,99,125,239,190,247,27,125,239,136,190,247,125,239,190,247,125,239,190,
+  247,125,239,190,247,251,222,4,73,74,139,251,222,190,247,60,231,190,247,125,
+  239,190,247,190,247,125,239,60,231,52,165,190,247,26,125,239,132,190,247,190,
+  247,60,231,190,247,5,125,239,129,190,247,3,125,239,129,190,247,9,125,239,
+  141,190,247,255,255,60,231,182,181,186,214,125,239,255,255,125,239,190,247,125,
+  239,190,247,190,247,60,231,3,73,74,134,8,66,186,214,125,239,125,239,190,
+  247,190,247,27,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,175,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,27,125,239,129,190,
+  247,3,125,239,148,190,247,125,239,190,247,125,239,77,107,8,66,73,74,73,
+  74,52,165,190,247,125,239,125,239,190,247,190,247,251,222,243,156,203,90,8,
+  66,247,189,190,247,25,125,239,136,190,247,190,247,125,239,190,247,125,239,125,
+  239,190,247,125,239,5,190,247,10,125,239,151,190,247,125,239,182,181,8,66,
+  12,99,243,156,251,222,190,247,60,231,190,247,190,247,125,239,182,181,73,74,
+  8,66,73,74,77,107,125,239,190,247,125,239,190,247,125,239,190,247,26,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,160,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,27,125,239,129,190,247,3,125,239,133,
+  190,247,60,231,190,247,190,247,117,173,3,73,74,130,12,99,125,239,3,190,
+  247,134,125,239,12,99,73,74,138,82,52,165,251,222,25,125,239,135,190,247,
+  125,239,125,239,190,247,125,239,190,247,190,247,8,125,239,129,190,247,11,125,
+  239,146,243,156,138,82,73,74,203,90,125,239,190,247,125,239,125,239,190,247,
+  142,115,73,74,138,82,73,74,178,148,125,239,190,247,125,239,190,247,28,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,180,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,35,125,239,129,60,231,3,73,74,140,
+  138,82,56,198,190,247,125,239,190,247,190,247,52,165,52,165,60,231,190,247,
+  125,239,125,239,3,190,247,132,60,231,190,247,125,239,190,247,5,125,239,130,
+  190,247,190,247,19,125,239,129,190,247,5,125,239,157,190,247,190,247,60,231,
+  190,247,125,239,190,247,125,239,190,247,125,239,190,247,190,247,125,239,190,247,
+  60,231,52,165,52,165,125,239,125,239,190,247,125,239,121,206,73,74,73,74,
+  138,82,73,74,60,231,125,239,190,247,190,247,3,125,239,129,190,247,25,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,179,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,35,125,239,152,190,247,48,132,138,82,
+  8,66,73,74,77,107,190,247,125,239,190,247,125,239,190,247,190,247,125,239,
+  125,239,190,247,186,214,186,214,125,239,60,231,255,255,125,239,186,214,190,247,
+  125,239,3,190,247,25,125,239,143,190,247,190,247,125,239,190,247,125,239,255,
+  255,125,239,251,222,125,239,255,255,60,231,190,247,121,206,56,198,125,239,3,
+  190,247,142,125,239,255,255,125,239,125,239,255,255,48,132,73,74,138,82,8,
+  66,207,123,125,239,125,239,190,247,190,247,3,125,239,129,190,247,25,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,180,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,35,125,239,130,190,247,56,198,4,73,74,
+  129,56,198,3,125,239,141,190,247,60,231,255,255,125,239,117,173,73,74,203,
+  90,125,239,190,247,125,239,117,173,203,90,117,173,4,190,247,3,125,239,130,
+  190,247,190,247,16,125,239,134,190,247,190,247,125,239,125,239,190,247,190,247,
+  4,125,239,150,121,206,203,90,48,132,60,231,255,255,60,231,77,107,8,66,
+  52,165,60,231,190,247,190,247,125,239,125,239,190,247,125,239,186,214,8,66,
+  138,82,73,74,73,74,56,198,4,190,247,3,125,239,129,190,247,25,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,167,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,37,125,239,146,142,115,8,66,73,74,73,
+  74,207,123,190,247,125,239,190,247,190,247,125,239,125,239,142,115,8,66,12,
+  99,56,198,190,247,125,239,182,181,3,73,74,129,182,181,3,125,239,129,190,
+  247,20,125,239,129,190,247,8,125,239,146,186,214,138,82,8,66,203,90,113,
+  140,125,239,190,247,56,198,12,99,8,66,207,123,251,222,125,239,190,247,190,
+  247,125,239,190,247,142,115,3,73,74,129,142,115,4,190,247,3,125,239,130,
+  190,247,190,247,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,167,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,131,
+  190,247,190,247,56,198,4,73,74,129,182,181,3,125,239,136,190,247,186,214,
+  203,90,142,115,186,214,125,239,190,247,56,198,3,73,74,130,203,90,186,214,
+  4,190,247,22,125,239,131,190,247,125,239,125,239,4,190,247,151,125,239,12,
+  99,138,82,73,74,73,74,243,156,125,239,190,247,251,222,207,123,203,90,186,
+  214,190,247,190,247,125,239,190,247,182,181,73,74,138,82,73,74,73,74,56,
+  198,190,247,4,125,239,130,190,247,190,247,27,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,177,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,35,125,239,153,190,247,125,239,125,239,113,140,8,66,73,74,8,
+  66,203,90,251,222,255,255,125,239,60,231,125,239,251,222,190,247,190,247,125,
+  239,125,239,52,165,8,66,73,74,138,82,121,206,190,247,190,247,3,125,239,
+  4,190,247,17,125,239,3,190,247,131,125,239,125,239,190,247,4,125,239,148,
+  142,115,199,57,138,82,207,123,125,239,125,239,255,255,125,239,121,206,125,239,
+  190,247,125,239,190,247,60,231,12,99,138,82,199,57,73,74,142,115,190,247,
+  5,125,239,130,190,247,190,247,27,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,176,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  36,125,239,139,190,247,190,247,186,214,138,82,8,66,73,74,73,74,113,140,
+  251,222,255,255,125,239,3,190,247,137,125,239,190,247,182,181,73,74,203,90,
+  48,132,251,222,125,239,190,247,4,125,239,130,190,247,190,247,18,125,239,133,
+  190,247,125,239,125,239,190,247,190,247,5,125,239,150,190,247,251,222,207,123,
+  77,107,73,74,113,140,125,239,125,239,190,247,190,247,125,239,125,239,190,247,
+  125,239,178,148,73,74,8,66,73,74,73,74,121,206,125,239,190,247,3,125,
+  239,129,190,247,29,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,177,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,138,
+  190,247,125,239,190,247,125,239,243,156,73,74,138,82,73,74,73,74,182,181,
+  5,125,239,139,190,247,182,181,73,74,203,90,121,206,190,247,125,239,190,247,
+  125,239,190,247,125,239,3,190,247,131,125,239,251,222,186,214,17,125,239,133,
+  251,222,251,222,125,239,190,247,125,239,5,190,247,141,125,239,190,247,60,231,
+  77,107,8,66,113,140,190,247,190,247,125,239,190,247,190,247,125,239,247,189,
+  4,73,74,132,178,148,190,247,125,239,125,239,4,190,247,3,125,239,129,190,
+  247,25,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,202,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,36,125,239,151,190,247,60,
+  231,255,255,60,231,142,115,8,66,73,74,73,74,138,82,56,198,255,255,125,
+  239,125,239,190,247,125,239,48,132,203,90,56,198,190,247,125,239,190,247,125,
+  239,190,247,3,125,239,137,190,247,190,247,178,148,73,74,73,74,203,90,186,
+  214,125,239,190,247,3,125,239,130,190,247,190,247,3,125,239,140,190,247,60,
+  231,190,247,251,222,77,107,73,74,73,74,48,132,125,239,190,247,60,231,190,
+  247,3,125,239,134,190,247,125,239,190,247,251,222,142,115,77,107,4,125,239,
+  139,190,247,251,222,138,82,73,74,138,82,8,66,12,99,60,231,255,255,60,
+  231,190,247,33,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,193,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,37,125,239,139,190,
+  247,125,239,190,247,121,206,203,90,73,74,8,66,73,74,77,107,251,222,190,
+  247,3,125,239,132,190,247,186,214,125,239,190,247,3,125,239,135,190,247,125,
+  239,190,247,190,247,125,239,117,173,138,82,3,73,74,130,142,115,125,239,3,
+  190,247,3,125,239,145,190,247,125,239,125,239,190,247,125,239,125,239,48,132,
+  73,74,73,74,138,82,138,82,117,173,125,239,190,247,125,239,190,247,190,247,
+  3,125,239,132,190,247,255,255,251,222,125,239,4,190,247,138,251,222,77,107,
+  138,82,73,74,8,66,138,82,56,198,125,239,190,247,190,247,34,125,239,138,
+  190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,188,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,35,125,239,135,190,247,125,239,190,247,125,239,
+  190,247,190,247,117,173,4,73,74,138,142,115,251,222,190,247,255,255,190,247,
+  125,239,190,247,190,247,125,239,190,247,7,125,239,130,52,165,8,66,4,73,
+  74,141,190,247,190,247,125,239,190,247,190,247,125,239,125,239,190,247,125,239,
+  190,247,125,239,190,247,125,239,4,73,74,133,8,66,243,156,125,239,190,247,
+  190,247,3,125,239,132,190,247,190,247,125,239,125,239,3,190,247,141,60,231,
+  190,247,125,239,207,123,138,82,8,66,138,82,73,74,52,165,125,239,190,247,
+  125,239,190,247,34,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,190,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,36,125,239,131,
+  190,247,125,239,190,247,3,125,239,139,113,140,73,74,8,66,73,74,8,66,
+  48,132,125,239,190,247,190,247,125,239,190,247,5,125,239,145,190,247,125,239,
+  190,247,125,239,125,239,182,181,73,74,8,66,73,74,8,66,77,107,190,247,
+  190,247,125,239,125,239,190,247,190,247,3,125,239,133,190,247,125,239,125,239,
+  190,247,207,123,4,73,74,136,182,181,190,247,125,239,60,231,190,247,125,239,
+  125,239,190,247,4,125,239,141,60,231,190,247,190,247,125,239,113,140,138,82,
+  8,66,138,82,8,66,113,140,125,239,125,239,190,247,36,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,195,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,37,125,239,146,190,247,125,239,125,239,190,247,190,247,
+  60,231,77,107,138,82,73,74,73,74,8,66,113,140,60,231,125,239,190,247,
+  125,239,125,239,190,247,5,125,239,3,190,247,161,251,222,207,123,73,74,73,
+  74,77,107,182,181,125,239,190,247,190,247,125,239,190,247,125,239,190,247,125,
+  239,125,239,190,247,125,239,125,239,190,247,121,206,138,82,73,74,73,74,142,
+  115,186,214,190,247,125,239,190,247,190,247,125,239,190,247,190,247,125,239,5,
+  190,247,141,125,239,48,132,138,82,73,74,138,82,8,66,142,115,60,231,125,
+  239,190,247,125,239,125,239,190,247,34,125,239,138,190,247,125,239,125,239,12,
+  99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,212,
+  0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,
+  247,35,125,239,153,190,247,125,239,190,247,125,239,125,239,190,247,125,239,255,
+  255,60,231,77,107,73,74,8,66,203,90,8,66,77,107,60,231,190,247,125,
+  239,125,239,190,247,125,239,190,247,125,239,125,239,190,247,3,125,239,179,255,
+  255,60,231,121,206,56,198,121,206,125,239,190,247,190,247,125,239,190,247,125,
+  239,190,247,125,239,190,247,190,247,125,239,190,247,125,239,190,247,190,247,60,
+  231,121,206,56,198,125,239,255,255,125,239,125,239,190,247,125,239,190,247,190,
+  247,125,239,190,247,125,239,125,239,190,247,190,247,251,222,207,123,138,82,8,
+  66,8,66,138,82,12,99,251,222,255,255,125,239,190,247,190,247,125,239,190,
+  247,34,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,206,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,35,125,239,155,190,247,125,
+  239,125,239,190,247,125,239,125,239,190,247,60,231,125,239,125,239,77,107,73,
+  74,73,74,8,66,73,74,77,107,186,214,190,247,190,247,125,239,60,231,125,
+  239,125,239,190,247,125,239,125,239,190,247,3,125,239,136,190,247,125,239,190,
+  247,190,247,125,239,190,247,125,239,190,247,3,125,239,145,190,247,190,247,125,
+  239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,190,247,125,239,125,
+  239,190,247,125,239,190,247,190,247,4,125,239,145,190,247,125,239,60,231,77,
+  107,203,90,199,57,138,82,73,74,138,82,121,206,255,255,60,231,190,247,125,
+  239,255,255,190,247,190,247,34,125,239,138,190,247,125,239,125,239,12,99,12,
+  99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,204,0,129,
+  182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,36,
+  125,239,171,190,247,125,239,125,239,190,247,190,247,125,239,190,247,125,239,190,
+  247,60,231,142,115,8,66,138,82,73,74,73,74,138,82,247,189,125,239,190,
+  247,190,247,125,239,125,239,190,247,125,239,125,239,190,247,125,239,190,247,125,
+  239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,125,239,190,247,125,
+  239,190,247,125,239,125,239,190,247,4,125,239,130,190,247,125,239,4,190,247,
+  153,125,239,190,247,190,247,125,239,125,239,190,247,125,239,190,247,125,239,56,
+  198,138,82,73,74,8,66,138,82,8,66,203,90,121,206,190,247,125,239,190,
+  247,125,239,190,247,60,231,190,247,190,247,34,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,160,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,43,125,239,134,190,247,125,239,190,247,251,222,207,123,8,66,4,
+  73,74,135,178,148,60,231,190,247,125,239,190,247,255,255,190,247,8,125,239,
+  143,190,247,125,239,125,239,190,247,190,247,125,239,190,247,125,239,125,239,190,
+  247,125,239,125,239,190,247,125,239,190,247,5,125,239,138,190,247,125,239,125,
+  239,190,247,125,239,190,247,125,239,190,247,125,239,52,165,3,73,74,134,138,
+  82,8,66,142,115,186,214,255,255,190,247,41,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,167,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,46,125,239,144,255,255,251,222,178,148,73,74,73,74,8,66,73,
+  74,73,74,12,99,247,189,190,247,190,247,60,231,190,247,190,247,125,239,3,
+  190,247,3,125,239,3,190,247,3,125,239,161,190,247,125,239,125,239,190,247,
+  125,239,125,239,190,247,125,239,125,239,190,247,125,239,125,239,190,247,190,247,
+  125,239,125,239,190,247,125,239,190,247,125,239,125,239,56,198,77,107,73,74,
+  73,74,138,82,8,66,8,66,207,123,60,231,255,255,60,231,190,247,41,125,
+  239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,159,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,43,125,239,147,190,247,190,247,125,239,
+  125,239,190,247,125,239,243,156,73,74,138,82,8,66,73,74,138,82,73,74,
+  48,132,186,214,190,247,125,239,125,239,190,247,3,125,239,3,190,247,3,125,
+  239,3,190,247,134,125,239,125,239,190,247,190,247,125,239,125,239,3,190,247,
+  132,125,239,125,239,190,247,190,247,3,125,239,135,190,247,190,247,60,231,251,
+  222,178,148,8,66,8,66,4,73,74,131,243,156,60,231,190,247,44,125,239,
+  138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,
+  222,8,60,231,1,182,181,151,0,129,182,181,127,60,231,80,60,231,133,251,
+  222,186,214,12,99,125,239,190,247,43,125,239,145,190,247,60,231,125,239,190,
+  247,60,231,255,255,190,247,247,189,203,90,203,90,8,66,73,74,138,82,8,
+  66,73,74,48,132,60,231,9,125,239,129,190,247,7,125,239,3,190,247,131,
+  125,239,125,239,190,247,5,125,239,147,190,247,190,247,60,231,186,214,178,148,
+  73,74,73,74,138,82,73,74,138,82,73,74,138,82,56,198,190,247,60,231,
+  125,239,255,255,190,247,190,247,41,125,239,138,190,247,125,239,125,239,12,99,
+  12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,153,0,
+  129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,
+  43,125,239,130,190,247,125,239,3,190,247,134,125,239,125,239,255,255,60,231,
+  178,148,138,82,5,73,74,134,8,66,207,123,56,198,125,239,190,247,190,247,
+  4,125,239,5,190,247,131,125,239,125,239,190,247,4,125,239,131,190,247,125,
+  239,190,247,3,125,239,134,190,247,125,239,247,189,178,148,138,82,199,57,4,
+  73,74,137,138,82,207,123,60,231,125,239,190,247,255,255,190,247,60,231,190,
+  247,42,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,162,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,44,125,239,133,190,247,125,
+  239,60,231,190,247,190,247,4,125,239,134,56,198,207,123,8,66,8,66,73,
+  74,8,66,3,73,74,135,12,99,178,148,56,198,60,231,190,247,125,239,190,
+  247,5,125,239,145,190,247,125,239,190,247,190,247,125,239,125,239,190,247,190,
+  247,125,239,125,239,190,247,125,239,121,206,178,148,12,99,73,74,8,66,3,
+  73,74,135,138,82,8,66,77,107,56,198,125,239,125,239,190,247,4,125,239,
+  129,190,247,42,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,170,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,43,125,239,130,190,
+  247,125,239,3,190,247,129,125,239,3,190,247,134,125,239,190,247,125,239,182,
+  181,77,107,8,66,5,73,74,151,8,66,73,74,12,99,142,115,52,165,56,
+  198,60,231,190,247,255,255,125,239,60,231,190,247,125,239,190,247,125,239,190,
+  247,190,247,60,231,251,222,121,206,52,165,207,123,203,90,4,73,74,145,138,
+  82,138,82,73,74,73,74,203,90,117,173,190,247,190,247,125,239,125,239,190,
+  247,125,239,125,239,190,247,190,247,125,239,190,247,41,125,239,138,190,247,125,
+  239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,
+  1,182,181,132,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,
+  99,125,239,190,247,45,125,239,142,190,247,125,239,190,247,125,239,190,247,125,
+  239,190,247,125,239,125,239,190,247,190,247,125,239,182,181,77,107,9,73,74,
+  141,138,82,73,74,73,74,77,107,207,123,142,115,48,132,243,156,113,140,142,
+  115,142,115,77,107,138,82,11,73,74,132,12,99,117,173,125,239,190,247,3,
+  125,239,3,190,247,46,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,106,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,
+  131,56,198,113,140,203,90,5,73,74,130,8,66,138,82,9,73,74,130,138,
+  82,8,66,5,73,74,140,8,66,73,74,73,74,8,66,138,82,113,140,121,
+  206,60,231,190,247,125,239,125,239,190,247,51,125,239,138,190,247,125,239,125,
+  239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,
+  181,112,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,
+  239,190,247,60,125,239,133,190,247,125,239,56,198,113,140,203,90,6,73,74,
+  129,138,82,3,73,74,133,138,82,73,74,73,74,8,66,138,82,6,73,74,
+  139,203,90,113,140,182,181,186,214,190,247,60,231,190,247,190,247,125,239,125,
+  239,190,247,51,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,
+  165,247,189,186,214,251,222,8,60,231,1,182,181,122,0,129,182,181,127,60,
+  231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,140,190,
+  247,190,247,125,239,125,239,190,247,190,247,186,214,182,181,178,148,142,115,12,
+  99,199,57,6,73,74,138,138,82,73,74,138,82,8,66,12,99,77,107,178,
+  148,182,181,186,214,125,239,3,190,247,129,125,239,3,190,247,132,125,239,125,
+  239,190,247,190,247,50,125,239,138,190,247,125,239,125,239,12,99,12,99,207,
+  123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,116,0,129,182,181,
+  127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,60,125,239,
+  130,190,247,190,247,4,125,239,133,190,247,255,255,190,247,251,222,203,90,3,
+  73,74,129,138,82,3,73,74,141,8,66,73,74,138,82,251,222,190,247,125,
+  239,125,239,190,247,125,239,125,239,60,231,125,239,190,247,4,125,239,4,190,
+  247,49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,105,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,132,190,247,190,
+  247,125,239,190,247,4,125,239,133,60,231,190,247,190,247,73,74,8,66,6,
+  73,74,131,138,82,73,74,73,74,3,190,247,130,125,239,125,239,3,190,247,
+  5,125,239,129,190,247,53,125,239,138,190,247,125,239,125,239,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,115,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,63,125,
+  239,3,190,247,140,125,239,125,239,190,247,125,239,73,74,73,74,138,82,73,
+  74,8,66,73,74,138,82,8,66,3,73,74,136,190,247,190,247,125,239,125,
+  239,190,247,190,247,125,239,125,239,6,190,247,132,125,239,125,239,190,247,190,
+  247,49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,
+  189,186,214,251,222,8,60,231,1,182,181,119,0,129,182,181,127,60,231,80,
+  60,231,133,251,222,186,214,12,99,125,239,190,247,59,125,239,3,190,247,130,
+  125,239,125,239,3,190,247,3,125,239,135,138,82,8,66,8,66,73,74,73,
+  74,8,66,138,82,3,73,74,137,138,82,125,239,190,247,125,239,190,247,125,
+  239,125,239,190,247,190,247,4,125,239,131,190,247,190,247,125,239,3,190,247,
+  49,125,239,138,190,247,125,239,125,239,12,99,12,99,207,123,52,165,247,189,
+  186,214,251,222,8,60,231,1,182,181,114,0,129,182,181,127,60,231,80,60,
+  231,133,251,222,186,214,12,99,125,239,190,247,62,125,239,138,190,247,190,247,
+  125,239,125,239,190,247,125,239,125,239,190,247,77,107,138,82,8,73,74,139,
+  77,107,125,239,190,247,125,239,190,247,125,239,125,239,190,247,125,239,125,239,
+  190,247,3,125,239,132,190,247,125,239,190,247,190,247,50,125,239,138,190,247,
+  125,239,125,239,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,
+  231,1,182,181,70,0,129,182,181,127,60,231,80,60,231,133,251,222,186,214,
+  12,99,125,239,190,247,68,125,239,131,190,247,190,247,125,239,7,73,74,133,
+  8,66,73,74,121,206,125,239,190,247,68,125,239,135,12,99,12,99,207,123,
+  52,165,247,189,186,214,251,222,8,60,231,1,182,181,62,0,129,182,181,127,
+  60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,68,125,239,131,
+  190,247,190,247,125,239,9,73,74,129,121,206,70,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,72,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,67,125,
+  239,134,190,247,125,239,190,247,190,247,73,74,8,66,5,73,74,131,138,82,
+  73,74,56,198,70,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,68,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,67,125,239,132,190,247,125,239,125,239,
+  190,247,9,73,74,131,121,206,125,239,190,247,68,125,239,135,12,99,12,99,
+  207,123,52,165,247,189,186,214,251,222,8,60,231,1,182,181,76,0,129,182,
+  181,127,60,231,80,60,231,133,251,222,186,214,12,99,125,239,190,247,67,125,
+  239,135,190,247,125,239,190,247,60,231,73,74,73,74,138,82,4,73,74,132,
+  8,66,73,74,251,222,190,247,69,125,239,135,12,99,12,99,207,123,52,165,
+  247,189,186,214,251,222,8,60,231,1,182,181,76,0,129,182,181,127,60,231,
+  80,60,231,133,251,222,186,214,12,99,125,239,190,247,67,125,239,135,190,247,
+  125,239,190,247,125,239,77,107,8,66,8,66,4,73,74,132,199,57,12,99,
+  60,231,190,247,69,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,
+  251,222,8,60,231,1,182,181,78,0,129,182,181,127,60,231,80,60,231,133,
+  251,222,186,214,12,99,125,239,190,247,67,125,239,136,190,247,125,239,190,247,
+  190,247,182,181,203,90,199,57,138,82,3,73,74,132,203,90,52,165,125,239,
+  190,247,69,125,239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,
+  8,60,231,1,182,181,76,0,129,182,181,127,60,231,80,60,231,133,251,222,
+  186,214,12,99,125,239,190,247,68,125,239,134,190,247,125,239,190,247,190,247,
+  117,173,203,90,4,73,74,133,178,148,125,239,255,255,125,239,190,247,68,125,
+  239,135,12,99,12,99,207,123,52,165,247,189,186,214,251,222,8,60,231,1,
+  182,181,99,0,129,182,181,127,60,231,80,60,231,135,251,222,251,222,12,99,
+  121,206,190,247,125,239,190,247,66,125,239,129,190,247,3,125,239,135,190,247,
+  251,222,178,148,8,66,113,140,186,214,125,239,3,190,247,57,125,239,133,190,
+  247,125,239,125,239,190,247,125,239,4,190,247,139,125,239,190,247,121,206,77,
+  107,138,82,207,123,243,156,247,189,121,206,251,222,251,222,7,60,231,1,182,
+  181,98,0,129,182,181,127,60,231,80,60,231,136,251,222,121,206,142,115,186,
+  214,125,239,190,247,60,231,190,247,65,125,239,129,190,247,3,125,239,139,190,
+  247,190,247,121,206,48,132,247,189,190,247,255,255,125,239,125,239,190,247,190,
+  247,57,125,239,3,190,247,5,125,239,139,190,247,251,222,121,206,12,99,203,
+  90,142,115,178,148,182,181,121,206,251,222,251,222,7,60,231,1,182,181,94,
+  0,129,182,181,127,60,231,81,60,231,133,186,214,77,107,117,173,125,239,190,
+  247,67,125,239,142,190,247,125,239,190,247,125,239,125,239,190,247,190,247,60,
+  231,125,239,190,247,125,239,125,239,190,247,190,247,58,125,239,132,190,247,190,
+  247,125,239,125,239,6,190,247,137,52,165,12,99,203,90,77,107,178,148,182,
+  181,121,206,251,222,251,222,7,60,231,1,182,181,100,0,129,182,181,127,60,
+  231,80,60,231,135,186,214,251,222,178,148,142,115,60,231,125,239,190,247,66,
+  125,239,134,190,247,125,239,190,247,190,247,125,239,125,239,4,190,247,132,125,
+  239,125,239,190,247,190,247,57,125,239,132,190,247,190,247,125,239,125,239,4,
+  190,247,140,125,239,190,247,125,239,207,123,203,90,203,90,142,115,178,148,182,
+  181,121,206,251,222,251,222,7,60,231,1,182,181,96,0,129,182,181,127,60,
+  231,80,60,231,134,251,222,121,206,247,189,12,99,182,181,190,247,66,125,239,
+  140,190,247,190,247,125,239,125,239,190,247,125,239,190,247,190,247,60,231,125,
+  239,190,247,190,247,3,125,239,129,190,247,59,125,239,129,190,247,5,125,239,
+  139,190,247,117,173,77,107,138,82,203,90,207,123,243,156,182,181,121,206,251,
+  222,251,222,7,60,231,1,182,181,94,0,129,182,181,127,60,231,81,60,231,
+  135,121,206,56,198,48,132,142,115,121,206,190,247,255,255,65,125,239,129,190,
+  247,3,125,239,133,190,247,190,247,125,239,190,247,190,247,62,125,239,134,190,
+  247,125,239,190,247,190,247,125,239,125,239,3,190,247,139,56,198,207,123,138,
+  82,203,90,12,99,48,132,52,165,247,189,186,214,251,222,251,222,7,60,231,
+  1,182,181,86,0,129,182,181,127,60,231,80,60,231,135,251,222,251,222,121,
+  206,117,173,77,107,207,123,56,198,67,125,239,129,190,247,7,125,239,4,190,
+  247,58,125,239,147,190,247,125,239,190,247,190,247,125,239,190,247,190,247,60,
+  231,121,206,207,123,12,99,8,66,12,99,142,115,113,140,182,181,56,198,186,
+  214,251,222,8,60,231,1,182,181,103,0,129,182,181,127,60,231,81,60,231,
+  135,251,222,121,206,247,189,52,165,12,99,142,115,182,181,64,125,239,136,190,
+  247,125,239,190,247,125,239,125,239,190,247,190,247,125,239,3,190,247,3,125,
+  239,130,190,247,190,247,56,125,239,146,190,247,125,239,190,247,190,247,125,239,
+  190,247,60,231,247,189,142,115,138,82,73,74,12,99,12,99,48,132,243,156,
+  247,189,121,206,251,222,9,60,231,1,182,181,83,0,129,182,181,127,60,231,
+  81,60,231,141,251,222,186,214,121,206,182,181,243,156,207,123,12,99,207,123,
+  52,165,56,198,186,214,125,239,190,247,127,125,239,5,125,239,144,60,231,186,
+  214,56,198,52,165,207,123,12,99,138,82,138,82,203,90,77,107,48,132,243,
+  156,182,181,56,198,251,222,251,222,9,60,231,1,182,181,81,0,129,182,181,
+  127,60,231,82,60,231,136,251,222,186,214,56,198,117,173,178,148,207,123,12,
+  99,77,107,3,12,99,131,77,107,12,99,77,107,127,12,99,4,12,99,143,
+  77,107,77,107,12,99,203,90,138,82,203,90,203,90,77,107,207,123,178,148,
+  117,173,56,198,186,214,251,222,251,222,9,60,231,1,182,181,77,0,129,182,
+  181,127,60,231,83,60,231,139,251,222,186,214,56,198,117,173,243,156,113,140,
+  207,123,77,107,12,99,12,99,203,90,127,12,99,5,12,99,143,203,90,203,
+  90,12,99,12,99,203,90,203,90,77,107,142,115,48,132,243,156,117,173,56,
+  198,186,214,251,222,251,222,10,60,231,1,182,181,62,0,129,182,181,127,60,
+  231,83,60,231,135,251,222,251,222,121,206,247,189,182,181,52,165,113,140,3,
+  48,132,127,207,123,10,207,123,138,48,132,48,132,113,140,178,148,52,165,182,
+  181,56,198,186,214,251,222,251,222,11,60,231,1,182,181,63,0,129,182,181,
+  127,60,231,84,60,231,136,251,222,251,222,121,206,56,198,56,198,182,181,117,
+  173,117,173,127,52,165,5,52,165,130,243,156,243,156,6,52,165,135,117,173,
+  182,181,247,189,121,206,186,214,251,222,251,222,12,60,231,1,182,181,67,0,
+  130,182,181,251,222,127,60,231,85,60,231,133,251,222,186,214,121,206,56,198,
+  56,198,3,247,189,130,56,198,56,198,127,247,189,3,247,189,139,56,198,56,
+  198,247,189,247,189,56,198,247,189,56,198,121,206,186,214,186,214,251,222,14,
+  60,231,1,182,181,40,0,130,182,181,251,222,127,60,231,86,60,231,4,251,
+  222,127,186,214,12,186,214,131,251,222,186,214,186,214,4,251,222,13,60,231,
+  130,251,222,182,181,44,0,130,182,181,251,222,127,60,231,86,60,231,130,251,
+  222,60,231,3,251,222,129,60,231,127,251,222,13,251,222,3,60,231,129,251,
+  222,13,60,231,130,251,222,182,181,29,0,130,182,181,186,214,4,60,231,129,
+  251,222,127,60,231,127,60,231,116,60,231,131,125,239,186,214,182,181,39,0,
+  133,56,198,56,198,60,231,60,231,251,222,127,60,231,127,60,231,109,60,231,
+  131,251,222,60,231,125,239,6,60,231,131,251,222,121,206,247,189,29,0,134,
+  186,214,182,181,251,222,125,239,251,222,125,239,127,60,231,127,60,231,118,60,
+  231,130,247,189,186,214,31,0,131,125,239,247,189,121,206,127,60,231,127,60,
+  231,111,60,231,129,125,239,8,60,231,131,121,206,182,181,190,247,37,0,135,
+  255,255,186,214,247,189,186,214,125,239,60,231,251,222,127,60,231,127,60,231,
+  114,60,231,133,125,239,251,222,182,181,186,214,255,255,41,0,135,255,255,190,
+  247,56,198,182,181,186,214,60,231,125,239,127,60,231,127,60,231,112,60,231,
+  135,125,239,60,231,186,214,182,181,56,198,255,255,255,255,45,0,137,255,255,
+  255,255,60,231,247,189,247,189,186,214,60,231,60,231,251,222,127,60,231,127,
+  60,231,110,60,231,135,251,222,121,206,247,189,247,189,190,247,255,255,255,255,
+  47,0,4,255,255,135,186,214,182,181,182,181,121,206,186,214,251,222,251,222,
+  127,60,231,127,60,231,103,60,231,129,125,239,3,251,222,132,121,206,182,181,
+  247,189,186,214,4,255,255,31,0,5,255,255,131,190,247,186,214,247,189,127,
+  182,181,127,182,181,110,182,181,131,56,198,186,214,190,247,5,255,255
+};
+const GuiConst_INT8U GuiBitmap_10[218] =
+{
+  80,0,40,0,5,0,80,77,115,0,0,0,0,0,0,13,0,38,77,115,
+  130,124,255,124,255,40,77,115,0,0,11,0,36,77,115,6,124,255,38,77,
+  115,0,0,11,0,34,77,115,10,124,255,36,77,115,0,0,11,0,32,77,
+  115,14,124,255,34,77,115,0,0,11,0,30,77,115,18,124,255,32,77,115,
+  0,0,11,0,28,77,115,22,124,255,30,77,115,0,0,11,0,26,77,115,
+  26,124,255,28,77,115,0,0,11,0,24,77,115,30,124,255,26,77,115,0,
+  0,11,0,22,77,115,34,124,255,24,77,115,0,0,11,0,20,77,115,38,
+  124,255,22,77,115,0,0,11,0,18,77,115,42,124,255,20,77,115,0,0,
+  11,0,16,77,115,46,124,255,18,77,115,0,0,11,0,14,77,115,50,124,
+  255,16,77,115,0,0,11,0,12,77,115,54,124,255,14,77,115,0,0,5,
+  0,80,77,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+};
+const GuiConst_INT8U GuiBitmap_11[218] =
+{
+  80,0,40,0,5,0,80,77,115,0,0,0,0,0,0,0,0,0,0,0,
+  0,0,0,11,0,12,77,115,54,124,255,14,77,115,0,0,11,0,14,77,
+  115,50,124,255,16,77,115,0,0,11,0,16,77,115,46,124,255,18,77,115,
+  0,0,11,0,18,77,115,42,124,255,20,77,115,0,0,11,0,20,77,115,
+  38,124,255,22,77,115,0,0,11,0,22,77,115,34,124,255,24,77,115,0,
+  0,11,0,24,77,115,30,124,255,26,77,115,0,0,11,0,26,77,115,26,
+  124,255,28,77,115,0,0,11,0,28,77,115,22,124,255,30,77,115,0,0,
+  11,0,30,77,115,18,124,255,32,77,115,0,0,11,0,32,77,115,14,124,
+  255,34,77,115,0,0,11,0,34,77,115,10,124,255,36,77,115,0,0,11,
+  0,36,77,115,6,124,255,38,77,115,0,0,13,0,38,77,115,130,124,255,
+  124,255,40,77,115,0,0,5,0,80,77,115,0,0,0,0,0,0
+};
+const GuiConst_INT8U GuiBitmap_12[176] =
+{
+  40,0,20,0,5,0,40,77,115,0,0,11,0,19,77,115,129,124,255,20,
+  77,115,11,0,18,77,115,3,124,255,19,77,115,11,0,17,77,115,5,124,
+  255,18,77,115,11,0,16,77,115,7,124,255,17,77,115,11,0,15,77,115,
+  9,124,255,16,77,115,11,0,14,77,115,11,124,255,15,77,115,11,0,13,
+  77,115,13,124,255,14,77,115,11,0,12,77,115,15,124,255,13,77,115,11,
+  0,11,77,115,17,124,255,12,77,115,11,0,10,77,115,19,124,255,11,77,
+  115,11,0,9,77,115,21,124,255,10,77,115,11,0,8,77,115,23,124,255,
+  9,77,115,11,0,7,77,115,25,124,255,8,77,115,11,0,6,77,115,27,
+  124,255,7,77,115,5,0,40,77,115,0,0,0,0,0,0
+};
+const GuiConst_INT8U GuiBitmap_13[176] =
+{
+  40,0,20,0,5,0,40,77,115,0,0,0,0,0,0,11,0,6,77,115,
+  27,124,255,7,77,115,11,0,7,77,115,25,124,255,8,77,115,11,0,8,
+  77,115,23,124,255,9,77,115,11,0,9,77,115,21,124,255,10,77,115,11,
+  0,10,77,115,19,124,255,11,77,115,11,0,11,77,115,17,124,255,12,77,
+  115,11,0,12,77,115,15,124,255,13,77,115,11,0,13,77,115,13,124,255,
+  14,77,115,11,0,14,77,115,11,124,255,15,77,115,11,0,15,77,115,9,
+  124,255,16,77,115,11,0,16,77,115,7,124,255,17,77,115,11,0,17,77,
+  115,5,124,255,18,77,115,11,0,18,77,115,3,124,255,19,77,115,11,0,
+  19,77,115,129,124,255,20,77,115,5,0,40,77,115,0,0
+};
+const GuiConst_INT8U GuiBitmap_14[196] =
+{
+  60,0,30,0,5,0,60,77,115,0,0,0,0,11,0,29,77,115,129,124,
+  255,30,77,115,0,0,11,0,27,77,115,5,124,255,28,77,115,11,0,26,
+  77,115,7,124,255,27,77,115,0,0,11,0,24,77,115,11,124,255,25,77,
+  115,11,0,23,77,115,13,124,255,24,77,115,0,0,11,0,21,77,115,17,
+  124,255,22,77,115,11,0,20,77,115,19,124,255,21,77,115,0,0,11,0,
+  18,77,115,23,124,255,19,77,115,11,0,17,77,115,25,124,255,18,77,115,
+  0,0,11,0,15,77,115,29,124,255,16,77,115,11,0,14,77,115,31,124,
+  255,15,77,115,0,0,11,0,12,77,115,35,124,255,13,77,115,11,0,11,
+  77,115,37,124,255,12,77,115,0,0,11,0,9,77,115,41,124,255,10,77,
+  115,5,0,60,77,115,0,0,0,0,0,0,0,0,0,0
+};
+const GuiConst_INT8U GuiBitmap_15[196] =
+{
+  60,0,30,0,5,0,60,77,115,0,0,0,0,0,0,0,0,0,0,11,
+  0,9,77,115,41,124,255,10,77,115,0,0,11,0,11,77,115,37,124,255,
+  12,77,115,11,0,12,77,115,35,124,255,13,77,115,0,0,11,0,14,77,
+  115,31,124,255,15,77,115,11,0,15,77,115,29,124,255,16,77,115,0,0,
+  11,0,17,77,115,25,124,255,18,77,115,11,0,18,77,115,23,124,255,19,
+  77,115,0,0,11,0,20,77,115,19,124,255,21,77,115,11,0,21,77,115,
+  17,124,255,22,77,115,0,0,11,0,23,77,115,13,124,255,24,77,115,11,
+  0,24,77,115,11,124,255,25,77,115,0,0,11,0,26,77,115,7,124,255,
+  27,77,115,11,0,27,77,115,5,124,255,28,77,115,0,0,11,0,29,77,
+  115,129,124,255,30,77,115,5,0,60,77,115,0,0,0,0
+};
+const GuiConst_PTR const GuiStruct_BitmapPtrList[GuiStruct_BitmapCnt] =
+{
+  (GuiConst_PTR)&GuiBitmap_0,
+  (GuiConst_PTR)&GuiBitmap_1,
+  (GuiConst_PTR)&GuiBitmap_2,
+  (GuiConst_PTR)&GuiBitmap_3,
+  (GuiConst_PTR)&GuiBitmap_4,
+  (GuiConst_PTR)&GuiBitmap_5,
+  (GuiConst_PTR)&GuiBitmap_6,
+  (GuiConst_PTR)&GuiBitmap_7,
+  (GuiConst_PTR)&GuiBitmap_8,
+  (GuiConst_PTR)&GuiBitmap_9,
+  (GuiConst_PTR)&GuiBitmap_10,
+  (GuiConst_PTR)&GuiBitmap_11,
+  (GuiConst_PTR)&GuiBitmap_12,
+  (GuiConst_PTR)&GuiBitmap_13,
+  (GuiConst_PTR)&GuiBitmap_14,
+  (GuiConst_PTR)&GuiBitmap_15
+};
+
+const GuiConst_INTCOLOR GuiStruct_ColorTable[GuiStruct_ColorTableCnt] =
+{
+  27437
+};
+
+
+// --------------------------  CUSTOM SECTION  ---------------------------
+
+// My own code is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+
+// My own footer is inserted here - edit it in the C code generation window
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIUpdated/GuiStruct.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,144 @@
+// My own header is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+//
+//                            *** ATTENTION ***
+//
+//   This file is maintained by the easyGUI Graphical User Interface
+//   program. Modifications should therefore not be made directly in
+//   this file, as the changes will be lost next time easyGUI creates
+//   the file.
+//
+//                            *** ATTENTION ***
+//
+// -----------------------------------------------------------------------
+
+//
+// Generated by easyGUI version 6.0.9.005
+// Generated for project GC500_2_5inch_bitmap_loader
+// in project file C:\easyGUI Projects\GC500_2_5inch_bitmap_loader.gui
+//
+
+// Ensure that this header file is only included once
+#ifndef __GUISTRUCT_H
+#define __GUISTRUCT_H
+
+// --------------------------  INCLUDE SECTION  --------------------------
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+
+// ---------------------  GLOBAL DECLARATION SECTION  --------------------
+
+// CLASS Base
+// ==========
+
+#define GuiStruct_BackgroundBitmaps_Def          0
+
+#define GuiStruct_ComponentPageBitmaps_Def       1
+
+#define GuiStruct_HomePageBitmaps_0              2
+
+#define GuiStruct_ScrollButtonBitmaps_Def        3
+// Internal sub-assemblies
+// =======================
+
+#define GuiStructCOMP_CBFLAT                     4
+#define GuiStructCOMP_CBFLATTRANSP               5
+#define GuiStructCOMP_CB3D                       6
+#define GuiStructCOMP_CB3DINNER                  7
+#define GuiStructCOMP_CBMCHSMALL                 8
+#define GuiStructCOMP_CBMCHBIG                   9
+#define GuiStructCOMP_CBMCRFLSMALL               10
+#define GuiStructCOMP_CBMCR3DSMALL               11
+#define GuiStructCOMP_CBMCRBIG                   12
+#define GuiStructCOMP_CBMFIFLAT                  13
+#define GuiStructCOMP_CBMFI3D                    14
+#define GuiStructCOMP_RBFLAT                     15
+#define GuiStructCOMP_RBFLATTRANSP               16
+#define GuiStructCOMP_RB3D                       17
+#define GuiStructCOMP_RB3DINNER                  18
+#define GuiStructCOMP_RBMFLAT                    19
+#define GuiStructCOMP_RBM3D                      20
+#define GuiStructCOMP_RBMSQUA                    21
+#define GuiStructCOMP_BUFLAT0                    22
+#define GuiStructCOMP_BUFLAT1                    23
+#define GuiStructCOMP_BUFLAT2                    24
+#define GuiStructCOMP_BUFLATR0                   25
+#define GuiStructCOMP_BUFLATR1                   26
+#define GuiStructCOMP_BUFLATR2                   27
+#define GuiStructCOMP_BU3D0                      28
+#define GuiStructCOMP_BU3D1                      29
+#define GuiStructCOMP_BU3D2                      30
+#define GuiStructCOMP_BU3DR0                     31
+#define GuiStructCOMP_BU3DR1                     32
+#define GuiStructCOMP_BU3DR2                     33
+#define GuiStructCOMP_EBFLAT                     34
+#define GuiStructCOMP_EB3D                       35
+#define GuiStructCOMP_PAFLAT                     36
+#define GuiStructCOMP_PAFLATR                    37
+#define GuiStructCOMP_PAFLATTRANSP               38
+#define GuiStructCOMP_PAFLATTRANSPR              39
+#define GuiStructCOMP_PA3DRAIS                   40
+#define GuiStructCOMP_PA3DRAISR                  41
+#define GuiStructCOMP_PA3DLOW                    42
+#define GuiStructCOMP_PA3DLOWR                   43
+#define GuiStructCOMP_PA3DINNER                  44
+#define GuiStructCOMP_PA3DINNERR                 45
+#define GuiStructCOMP_PAEMBRAIS                  46
+#define GuiStructCOMP_PAEMBLOW                   47
+#define GuiStructCOMP_MMFLAT                     48
+#define GuiStructCOMP_MM3D                       49
+#define GuiStructCOMP_LBFLAT                     50
+#define GuiStructCOMP_LB3D                       51
+#define GuiStructCOMP_COFLAT                     52
+#define GuiStructCOMP_CO3D                       53
+#define GuiStructCOMP_SAFLAT                     54
+#define GuiStructCOMP_SA3D                       55
+#define GuiStructCOMP_PBFLAT                     56
+#define GuiStructCOMP_PB3D                       57
+
+#define GuiStruct_StructCnt  4
+extern const GuiConst_PTR const GuiStruct_StructPtrList[GuiStruct_StructCnt];
+extern const GuiConst_INT16U GuiStruct_StructNdxList[GuiStruct_StructCnt];
+
+#define GuiStruct_VarPtrCnt  1
+extern const GuiConst_PTR const GuiStruct_VarPtrList[GuiStruct_VarPtrCnt];
+
+extern const GuiConst_INT8U GuiStruct_VarTypeList[GuiStruct_VarPtrCnt];
+
+#define GuiStruct_Bitmap_BootScreen                       0
+#define GuiStruct_Bitmap_BlankBackground                  1
+#define GuiStruct_Bitmap_Column                           2
+#define GuiStruct_Bitmap_Detector                         3
+#define GuiStruct_Bitmap_Injector                         4
+#define GuiStruct_Bitmap_Gas                              5
+#define GuiStruct_Bitmap_ColumnButton                     6
+#define GuiStruct_Bitmap_DetectorButton                   7
+#define GuiStruct_Bitmap_InjectorButton                   8
+#define GuiStruct_Bitmap_GasButton                        9
+#define GuiStruct_Bitmap_UpArrowDoubled                   10
+#define GuiStruct_Bitmap_DownArrowDoubled                 11
+#define GuiStruct_Bitmap_UpArrow                          12
+#define GuiStruct_Bitmap_DownArrow                        13
+#define GuiStruct_Bitmap_UpArrow1point5                   14
+#define GuiStruct_Bitmap_DownArrow1point5                 15
+
+#define GuiStruct_BitmapCnt  16
+extern const GuiConst_PTR const GuiStruct_BitmapPtrList[GuiStruct_BitmapCnt];
+
+#define GuiStruct_ColorTableCnt  1
+extern const GuiConst_INTCOLOR GuiStruct_ColorTable[GuiStruct_ColorTableCnt];
+
+
+// --------------------------  CUSTOM SECTION  ---------------------------
+
+// My own code is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+
+#endif
+
+// -----------------------------------------------------------------------
+
+// My own footer is inserted here - edit it in the C code generation window
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIUpdated/GuiVar.c	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,43 @@
+// My own header is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+//
+//                            *** ATTENTION ***
+//
+//   This file is maintained by the easyGUI Graphical User Interface
+//   program. Modifications should therefore not be made directly in
+//   this file, as the changes will be lost next time easyGUI creates
+//   the file.
+//
+//                            *** ATTENTION ***
+//
+// -----------------------------------------------------------------------
+
+//
+// Generated by easyGUI version 6.0.9.005
+// Generated for project GC500_2_5inch_bitmap_loader
+// in project file C:\easyGUI Projects\GC500_2_5inch_bitmap_loader.gui
+//
+
+// --------------------------  INCLUDE SECTION  --------------------------
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+
+// ---------------------  GLOBAL DECLARATION SECTION  --------------------
+
+
+GuiConst_INT16S    GuiVarCompInt1;
+GuiConst_INT16S    GuiVarCompInt2;
+GuiConst_INT16S    GuiVarCompInt3;
+GuiConst_INT16S    GuiVarCompInt4;
+GuiConst_INT16S    GuiVarCompInt5;
+
+
+// --------------------------  CUSTOM SECTION  ---------------------------
+
+// My own code is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+
+// My own footer is inserted here - edit it in the C code generation window
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/easyGUIUpdated/GuiVar.h	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,58 @@
+// My own header is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+//
+//                            *** ATTENTION ***
+//
+//   This file is maintained by the easyGUI Graphical User Interface
+//   program. Modifications should therefore not be made directly in
+//   this file, as the changes will be lost next time easyGUI creates
+//   the file.
+//
+//                            *** ATTENTION ***
+//
+// -----------------------------------------------------------------------
+
+//
+// Generated by easyGUI version 6.0.9.005
+// Generated for project GC500_2_5inch_bitmap_loader
+// in project file C:\easyGUI Projects\GC500_2_5inch_bitmap_loader.gui
+//
+
+// Ensure that this header file is only included once
+#ifndef __GUIVAR_H
+#define __GUIVAR_H
+
+// --------------------------  INCLUDE SECTION  --------------------------
+
+#include "GuiConst.h"
+#include "GuiLib.h"
+
+// ---------------------  GLOBAL DECLARATION SECTION  --------------------
+
+// Positions
+// =========
+
+
+// Variables
+// =========
+
+
+extern GuiConst_INT16S    GuiVarCompInt1;
+extern GuiConst_INT16S    GuiVarCompInt2;
+extern GuiConst_INT16S    GuiVarCompInt3;
+extern GuiConst_INT16S    GuiVarCompInt4;
+extern GuiConst_INT16S    GuiVarCompInt5;
+
+
+// --------------------------  CUSTOM SECTION  ---------------------------
+
+// My own code is inserted here - edit it in the C code generation window
+
+// -----------------------------------------------------------------------
+
+#endif
+
+// -----------------------------------------------------------------------
+
+// My own footer is inserted here - edit it in the C code generation window
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Mon Jul 31 15:44:39 2017 +0000
@@ -0,0 +1,246 @@
+#include "mbed.h"
+#include "DMBoard.h"
+#include "lpc_swim.h"
+#include "lpc_swim_font.h"
+
+#include "GuiLib.h"
+#include "GuiDisplay.h"
+
+#include <fstream>
+
+/*
+    This application loads bitmaps into QSPI memory for use by the GC500_2_5inch application,
+    since memory limits do not allow these bitmaps to be included in the application
+    in the normal way.
+
+    The associated easyGUI project is C:/easyGUI Projects/GC500_2_5inch_BitmapLoader.gui
+   
+    It is intended for use with the Embedded Artists LPC4088 board, 5 inch display.
+*/
+
+// Use QSPI - uncomment '#define DM_BOARD_USE_QSPI' in dm_board_config.h, and:
+#include "QSPIFileSystem.h"
+QSPIFileSystem qspifs("qspi");
+// Can now use QSPI memory as file device '/qspi/'
+//
+
+/*
+    Bodge so GuiDisplay.c ('easyGUIFixed' file) can call Thread::wait 
+    (giving it an accurate millisecond timer)
+*/
+extern "C" {
+    void EasyGUIWaitMs(GuiConst_INT32U msec)
+    {
+        Thread::wait(msec);
+    }
+}
+
+
+void Save_easyGUI_bitmap(int bitmapIndex, char* bitmapName, int bitmapSize, SWIM_WINDOW_T* winPtr, int winX, int winY)
+{
+    char bitmapSizeFilename[200];
+//    sprintf(bitmapSizeFilename, "/mci/%s_BMP.size", bitmapName);
+    sprintf(bitmapSizeFilename, "/qspi/%s_BMP.size", bitmapName);
+
+    char buff[100];
+    
+    ofstream bitmapSizeStream;
+    bitmapSizeStream.open(bitmapSizeFilename);
+    if(bitmapSizeStream) {
+        bitmapSizeStream << bitmapSize << "\n";
+        bitmapSizeStream.close();
+        sprintf(buff, "Wrote %d to bitmap size file: %s", bitmapSize, bitmapSizeFilename);
+        swim_put_text_xy(winPtr, buff, winX, winY);
+    } else {
+        sprintf(buff, "Failed to open bitmap size file for writing: %s", bitmapSizeFilename);
+        swim_put_text_xy(winPtr, buff, winX, winY);
+    }
+    
+    winY += 12;  
+
+    char bitmapDataFilename[200];
+//    sprintf(bitmapDataFilename, "/mci/%s_BMP.data", bitmapName);
+    sprintf(bitmapDataFilename, "/qspi/%s_BMP.data", bitmapName);
+
+    ofstream bitmapDataStream;
+    bitmapDataStream.open(bitmapDataFilename, (ios::out | ios::binary));
+    if(bitmapDataStream) {
+        bitmapDataStream.write((char*) GuiStruct_BitmapPtrList[bitmapIndex], bitmapSize);
+        bitmapDataStream.close();
+        sprintf(buff, "Wrote %d bytes to bitmap data file: %s", bitmapSize, bitmapDataFilename);
+        swim_put_text_xy(winPtr, buff, winX, winY);
+    } else {
+        sprintf(buff, "Failed to open bitmap data file for writing: %s", bitmapDataFilename);
+        swim_put_text_xy(winPtr, buff, winX, winY);
+    }
+}
+
+/*
+    Displays the directory of files in QSPI memory.
+    
+    Used for debugging/testing - not appropriate or required in the 'real' system.
+    
+    Args: pointer to a 'swim window', and the X and Y coordinates at which to display the directory on the screen
+*/
+void DisplayQSPIDirectory(SWIM_WINDOW_T* winPtr, int winX, int winY)
+{
+    DIR *dp;
+    dp = opendir("/qspi/");
+
+    if(dp != NULL) {
+        struct dirent *dirp;
+        
+        swim_put_text_xy(winPtr, "Start of QSPI directory", winX, winY);
+        winY += 12;
+    
+        // Indent file names
+        while((dirp = readdir(dp)) != NULL) {
+            swim_put_text_xy(winPtr, dirp->d_name, winX + 30, winY);
+            winY += 12;
+        }
+        closedir(dp);
+    
+        swim_put_text_xy(winPtr, "End of QSPI directory", winX, winY);
+    } else {
+        swim_put_text_xy(winPtr, "Failed to open QSPI directory", winX, winY);
+    }
+}
+
+/*
+    Deletes all existing files in the QSPI directory.
+    
+    So that we know there is only the bitmap files there, nothing else
+*/
+void ClearQSPIDirectory(void)
+{
+    DIR *dp;
+    dp = opendir("/qspi/");
+
+    if(dp != NULL) {
+        struct dirent *dirp;
+        
+        while((dirp = readdir(dp)) != NULL) {
+            char buff[200];
+            sprintf(buff, "/qspi/%s", dirp->d_name);
+            remove(buff);
+        }
+        closedir(dp);
+    }
+}
+
+
+int main()
+{
+  DMBoard::BoardError err;
+  DMBoard* board = &DMBoard::instance();
+  RtosLog* log = board->logger();
+  Display* disp = board->display();
+  
+  do {
+    err = board->init();
+    if (err != DMBoard::Ok) {
+      log->printf("Failed to initialize the board, got error %d\r\n", err);
+      break;
+    }
+    
+    log->printf("\n\nHello World!\n\n");
+    
+    SWIM_WINDOW_T win;
+    void* fb = disp->allocateFramebuffer();
+    if (fb == NULL) {
+      log->printf("Failed to allocate memory for a frame buffer\r\n");
+      err = DMBoard::MemoryError;
+      break;
+    }
+    
+    // Prepare fullscreen
+    swim_window_open(&win, 
+                     disp->width(), disp->height(),         // full size
+                     (COLOR_T*)fb,
+                     0,0,disp->width()-1, disp->height()-1, // window position and size
+                     1,                                     // border
+                     WHITE, BLUE, BLACK);                   // colors: pen, backgr, forgr
+    swim_set_title(&win, "GC500_2_5inch Bitmap Loader", BLACK);
+  
+    // Message    
+//    swim_put_text_xy(&win, "Checking for SD/MMC card", 100, 0);
+//    if(mcifs.cardInserted()) {
+//        swim_put_text_xy(&win, "Found SD/MMC card", 100, 10);
+
+    // Make sure QSPI filesystem is formatted before we try to use it
+    if (!qspifs.isformatted()) {
+        qspifs.format();
+    }
+        
+#define START_DISPLAY_FIRST
+#ifdef  START_DISPLAY_FIRST
+    // Start display in default mode (16-bit)
+    Display::DisplayError disperr = disp->powerUp(fb);
+    if (disperr != Display::DisplayError_Ok) {
+      log->printf("Failed to initialize the display, got error %d\r\n", disperr);
+      break;
+    }
+#endif //  START_DISPLAY_FIRST
+
+//#define CLEAR_DIRECTORY_FIRST // *** Need to consider whether to reinstate this in production version - or have a separate "ClearQSPI" application ***
+#ifdef CLEAR_DIRECTORY_FIRST
+        ClearQSPIDirectory(); // Appears to cause LPC4088 error
+#endif
+
+#define LOAD_THE_BITMAPS // May want to not load them (e.g. for testing purposes)
+#ifdef LOAD_THE_BITMAPS 
+
+        // Values passed to Save_easyGUI_bitmap are manually copied
+        // from GuiStruct.c and GuiStruct.h, and hard-coded here
+        
+        // Component bitmaps
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_Column, "GuiStruct_Bitmap_Column", 17674, &win, 10, 10);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_Detector, "GuiStruct_Bitmap_Detector", 19493, &win, 10, 40);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_Injector, "GuiStruct_Bitmap_Injector", 18789, &win, 10, 70);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_Gas, "GuiStruct_Bitmap_Gas", 21169, &win, 10, 100);
+        
+        // Home page bitmaps
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_ColumnButton, "GuiStruct_Bitmap_ColumnButton", 19682, &win, 10, 140);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_DetectorButton, "GuiStruct_Bitmap_DetectorButton", 21526, &win, 10, 170);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_InjectorButton, "GuiStruct_Bitmap_InjectorButton", 20853, &win, 10, 200);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_GasButton, "GuiStruct_Bitmap_GasButton", 23258, &win, 10, 230);
+        
+        // Background bitmaps
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_BootScreen, "GuiStruct_Bitmap_BootScreen", 123419, &win, 10, 270);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_BlankBackground, "GuiStruct_Bitmap_BlankBackground", 1157, &win, 10, 300);
+        
+        // Scroll arrow bitmaps
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_UpArrowDoubled, "GuiStruct_Bitmap_UpArrowDoubled", 218, &win, 10, 340);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_DownArrowDoubled, "GuiStruct_Bitmap_DownArrowDoubled", 218, &win, 10, 370);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_UpArrow, "GuiStruct_Bitmap_UpArrow", 176, &win, 10, 400);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_DownArrow, "GuiStruct_Bitmap_DownArrow", 176, &win, 10, 430);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_UpArrow1point5, "GuiStruct_Bitmap_UpArrow1point5", 196, &win, 10, 470);
+        Save_easyGUI_bitmap(GuiStruct_Bitmap_DownArrow1point5, "GuiStruct_Bitmap_DownArrow1point5", 196, &win, 10, 500);
+
+#endif // LOAD_THE_BITMAPS 
+
+        DisplayQSPIDirectory(&win, 450, 30);
+//    } else {
+//        swim_put_text_xy(&win, "SD/MMC card not found", 100, 30);
+//    }
+
+    
+#ifndef  START_DISPLAY_FIRST
+    // Start display in default mode (16-bit)
+    Display::DisplayError disperr = disp->powerUp(fb);
+    if (disperr != Display::DisplayError_Ok) {
+      log->printf("Failed to initialize the display, got error %d\r\n", disperr);
+      break;
+    }
+#endif //  START_DISPLAY_FIRST
+  } while(false);
+
+  if (err != DMBoard::Ok) {
+    log->printf("\nTERMINATING\n");
+    wait_ms(2000); // allow RtosLog to flush messages
+    mbed_die();
+  }  
+
+  while(true) {
+  }   
+}