/* DO NOT EDIT THIS FILE - it is machine generated (JCGO_116) */

#ifdef JCGO_SEPARATED
#define JCGO_116
#include "jcgortl.h"
#include "Main.h"
#endif

#ifdef JCGO_116

#ifdef CHKALL_GameShell
#include "jcgobchk.h"
#endif

void get_keycodes(jchar* charCode, jint* code) {
 switch (event.key.keysym.scancode) {
  case SDL_SCANCODE_LEFT:
   *code = 37;
   *charCode = 65535;
   break;
  case SDL_SCANCODE_RIGHT:
   *code = 39;
   *charCode = 65535;
   break;
  case SDL_SCANCODE_UP:
   *code = 38;
   *charCode = 65535;
   break;
  case SDL_SCANCODE_DOWN:
   *code = 40;
   *charCode = 65535;
   break;
  default:
   *charCode = event.key.keysym.sym;
   const char* keyName = SDL_GetKeyName(event.key.keysym.sym);

   if (strlen(keyName) == 1) {
    *code = keyName[0];
   } else {
    *code = *charCode;
   }

   // absolutely dumb hack but i don't want to use SDL's textinput
   if (event.key.keysym.mod & KMOD_SHIFT) {
    if (*charCode >= 'a' && *charCode <= 'z') {
      *charCode -= 32;
    } else {
     switch (*charCode) {
      case ';':
       *charCode = ':';
       break;
      case '`':
       *charCode = '~';
       break;
      case '1':
       *charCode = '!';
       break;
      case '2':
       *charCode = '@';
       break;
      case '3':
       *charCode = '#';
       break;
      case '4':
       *charCode = '$';
       break;
      case '5':
       *charCode = '%';
       break;
      case '6':
       *charCode = '^';
       break;
      case '7':
       *charCode = '&';
       break;
      case '8':
       *charCode = '*';
       break;
      case '9':
       *charCode = '(';
       break;
      case '0':
       *charCode = ')';
       break;
      case '-':
       *charCode = '_';
       break;
      case '=':
       *charCode = '+';
       break;
     }
    }
   }
   break;
 }
}

void handle_sdl_events(package_GameShell This) {
 while (SDL_PollEvent(&event)) {
  switch (event.type) {
   case SDL_QUIT:
    exit(0);
    break;
   case SDL_KEYDOWN: {
    jchar charCode;
    jint code;
    get_keycodes(&charCode, &code);
    (package_GameShell__keyPressed__CI(This, code, charCode));
    break;
   }
   case SDL_KEYUP: {
    jchar charCode;
    jint code;
    get_keycodes(&charCode, &code);
    (package_GameShell__keyReleased__I(This, code));
    break;
   }
   case SDL_MOUSEMOTION:
    (package_GameShell__mouseMoved__II(This, event.motion.x, event.motion.y));
    break;
   case SDL_MOUSEBUTTONDOWN: {
    jint button = event.button.button == 3 ? 2 : 1;
    (package_GameShell__mousePressed__III(This, event.button.x, event.button.y,
     button));
    break;
   }
   case SDL_MOUSEBUTTONUP:
    (package_GameShell__mouseReleased__II(This, event.button.x,
     event.button.y));
    break;
  }
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__keyPressed__CI( package_GameShell This, jint code,
 jchar chr )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
  (JCGO_CALL_NZVFUNC(This)->handleKeyPress__I(
   This, chr));
  JCGO_FIELD_NZACCESS(This, mouseActionTimeout)= 0;
  if (code == package_KeyEvent__VK_LEFT)
  {
   JCGO_FIELD_NZACCESS(This, keyLeft)= (jboolean)jtrue;
  }
  else
  {
   if (code == package_KeyEvent__VK_RIGHT)
   {
    JCGO_FIELD_NZACCESS(This, keyRight)= (jboolean)jtrue;
   }
   else
   {
    if (code == package_KeyEvent__VK_UP)
    {
     (void)jtrue;
    }
    else
    {
     if (code == package_KeyEvent__VK_DOWN)
     {
      (void)jtrue;
     }
     else
     {
      if (code == package_KeyEvent__VK_SPACE)
      {
       (void)jtrue;
      }
      else
      {
       if (code == package_KeyEvent__VK_F1)
       {
        JCGO_FIELD_NZACCESS(This, interlace)= (jboolean)(!JCGO_FIELD_NZACCESS(This,
         interlace));
       }
       else
       {
        jboolean foundText;
        jObject jcgo_rcvrL1;
        foundText= jfalse;
        {
         jint i;
         i= 0;
         for (; i < (jcgo_rcvrL1= (jObject)package_GameShell__charMap,
          JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1) java_lang_String__length__(
          (java_lang_String)jcgo_rcvrL1)); i++)
         {
          jObject jcgo_rcvrL1;
          if ((jcgo_rcvrL1= (jObject)package_GameShell__charMap, JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1)
           java_lang_String__charAt__I(
           (java_lang_String)jcgo_rcvrL1, i)) == chr)
          {
           foundText= (jboolean)jtrue;
           break;
          }
         }
        }
        if (foundText)
        {
         jObject jcgo_rcvrL1;
         if ((jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, inputTextCurrent),
          JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1) java_lang_String__length__(
          (java_lang_String)jcgo_rcvrL1)) < (jint)20)
         {
          jObject jcgo_rcvrL1;
          jObject jcgo_rcvrL2;
          (jcgo_rcvrL2= *(jObject*)(jcgo_rcvrL1= (void*)&JCGO_FIELD_NZACCESS(This,
           inputTextCurrent)), *(java_lang_String*)jcgo_rcvrL1= java_lang_VMSystem__concat0X__LsLs(
           (java_lang_String)jcgo_rcvrL2, (java_lang_String__valueOf__C(
           chr))));
         }
         if ((jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, inputPmCurrent),
          JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1) java_lang_String__length__(
          (java_lang_String)jcgo_rcvrL1)) < (jint)80)
         {
          jObject jcgo_rcvrL1;
          jObject jcgo_rcvrL2;
          (jcgo_rcvrL2= *(jObject*)(jcgo_rcvrL1= (void*)&JCGO_FIELD_NZACCESS(This,
           inputPmCurrent)), *(java_lang_String*)jcgo_rcvrL1= java_lang_VMSystem__concat0X__LsLs(
           (java_lang_String)jcgo_rcvrL2, (java_lang_String__valueOf__C(
           chr))));
         }
        }
       }
      }
     }
    }
   }
  }
  if (code == package_KeyEvent__VK_BACK_SPACE)
  {
   jObject jcgo_rcvrL1;
   if ((jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, inputTextCurrent),
    JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1) java_lang_String__length__(
    (java_lang_String)jcgo_rcvrL1)) > 0)
   {
    jObject jcgo_rcvrL1;
    jObject jcgo_rcvrL2;
    JCGO_FIELD_NZACCESS(This, inputTextCurrent)= (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This,
     inputTextCurrent), JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1)
     java_lang_String__substring__II(
     (java_lang_String)jcgo_rcvrL1, 0, (jcgo_rcvrL2= (jObject)JCGO_FIELD_NZACCESS(This,
     inputTextCurrent), JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL2)
     java_lang_String__length__(
     (java_lang_String)jcgo_rcvrL2)) - (jint)1));
   }
   if ((jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, inputPmCurrent),
    JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1) java_lang_String__length__(
    (java_lang_String)jcgo_rcvrL1)) > 0)
   {
    jObject jcgo_rcvrL1;
    jObject jcgo_rcvrL2;
    JCGO_FIELD_NZACCESS(This, inputPmCurrent)= (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This,
     inputPmCurrent), JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1)
     java_lang_String__substring__II(
     (java_lang_String)jcgo_rcvrL1, 0, (jcgo_rcvrL2= (jObject)JCGO_FIELD_NZACCESS(This,
     inputPmCurrent), JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL2)
     java_lang_String__length__(
     (java_lang_String)jcgo_rcvrL2)) - (jint)1));
   }
  }
  if (code == package_KeyEvent__VK_ENTER)
  {
   JCGO_FIELD_NZACCESS(This, inputTextFinal)= JCGO_FIELD_NZACCESS(This,
    inputTextCurrent);
   JCGO_FIELD_NZACCESS(This, inputPmFinal)= JCGO_FIELD_NZACCESS(This,
    inputPmCurrent);
  }
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__keyReleased__I( package_GameShell This, jint code
 )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
  if (code == package_KeyEvent__VK_LEFT)
  {
   JCGO_FIELD_NZACCESS(This, keyLeft)= (jboolean)jfalse;
  }
  else
  {
   if (code == package_KeyEvent__VK_RIGHT)
   {
    JCGO_FIELD_NZACCESS(This, keyRight)= (jboolean)jfalse;
   }
   else
   {
    if (code == package_KeyEvent__VK_UP)
    {
     (void)jfalse;
    }
    else
    {
     if (code == package_KeyEvent__VK_DOWN)
     {
      (void)jfalse;
     }
     else
     {
      if (code == package_KeyEvent__VK_SPACE)
      {
       (void)jfalse;
      }
     }
    }
   }
  }
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__mouseMoved__II( package_GameShell This, jint x,
 jint y )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
  JCGO_FIELD_NZACCESS(This, mouseX)= x;
  JCGO_FIELD_NZACCESS(This, mouseY)= y;
  JCGO_FIELD_NZACCESS(This, mouseButtonDown)= 0;
  JCGO_FIELD_NZACCESS(This, mouseActionTimeout)= 0;
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__mouseReleased__II( package_GameShell This, jint
 x, jint y )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
  JCGO_FIELD_NZACCESS(This, mouseX)= x;
  JCGO_FIELD_NZACCESS(This, mouseY)= y;
  JCGO_FIELD_NZACCESS(This, mouseButtonDown)= 0;
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__mousePressed__III( package_GameShell This, jint
 x, jint y, jint button )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
  JCGO_FIELD_NZACCESS(This, mouseX)= x;
  JCGO_FIELD_NZACCESS(This, mouseY)= y;
  JCGO_FIELD_NZACCESS(This, mouseButtonDown)= button;
  JCGO_FIELD_NZACCESS(This, lastMouseButtonDown)= JCGO_FIELD_NZACCESS(This,
   mouseButtonDown);
  JCGO_FIELD_NZACCESS(This, mouseActionTimeout)= 0;
  (JCGO_CALL_NZVFUNC(This)->handleMouseDown__III(
   This, JCGO_FIELD_NZACCESS(This, mouseButtonDown), x, y));
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__mouseDragged__III( package_GameShell This, jint
 x, jint y, jint button )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
  JCGO_FIELD_NZACCESS(This, mouseX)= x;
  JCGO_FIELD_NZACCESS(This, mouseY)= y;
  JCGO_FIELD_NZACCESS(This, mouseButtonDown)= button;
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__dummy__( package_GameShell This )
{
 {
  (package_GameShell__keyPressed__CI(
   This, (jint)97, (jchar)65/*'A'*/));
  (package_GameShell__keyReleased__I(
   This, (jint)97));
  (package_GameShell__mouseMoved__II(
   This, 0, 0));
  (package_GameShell__mouseReleased__II(
   This, 0, 0));
  (package_GameShell__mousePressed__III(
   This, 0, 0, 0));
  (package_GameShell__mouseDragged__III(
   This, 0, 0, 0));
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__handleKeyPress__I( package_GameShell This, jint
 i )
{
 {
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__handleMouseDown__III( package_GameShell This, jint
 i, jint j, jint k )
{
 {
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__loadJagex__( package_GameShell This )
{
 {
  jbyteArr buff;
  struct java_lang_StringBuilder_s jcgo_stackobj1;
  struct java_lang_String_s jcgo_stackobj2;
  buff= (package_GameShell__readDataFile__LsLsI(
   This, JCGO_STRREF_OF(jcgo_string2_GameShll), JCGO_STRREF_OF(jcgo_string3_GameShll),
   0));
  if (buff != jnull)
  {
   jbyteArr logo;
   logo= (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string4_GameShll), buff, 0));
  }
  buff= (package_GameShell__readDataFile__LsLsI(
   This, java_lang_String__new__L5dy9e(
   java_lang_StringBuilder__append__Ls(
   java_lang_StringBuilder__append__Ls(
   java_lang_StringBuilder__append__Ls(
   java_lang_StringBuilder__this__(
   JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuilder_methods)),
   JCGO_STRREF_OF(jcgo_string5_GameShll)), (java_lang_String__valueOf__IX(
   package_Version__FONTS, JCGO_STACKOBJ_NEW(jcgo_stackobj2, java_lang_String_methods)))),
   JCGO_STRREF_OF(jcgo_string6_GameShll))), JCGO_STRREF_OF(jcgo_string7_GameShll),
   (jint)5));
  if (buff != jnull)
  {
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string8_GameShll), buff, 0)), 0));
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string9_GameShll), buff, 0)), (jint)1));
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string10_GameShll), buff, 0)), (jint)2));
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string11_GameShll), buff, 0)), (jint)3));
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string12_GameShll), buff, 0)), (jint)4));
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string13_GameShll), buff, 0)), (jint)5));
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string14_GameShll), buff, 0)), (jint)6));
   (package_Surface__createFont__BAI(
    (package_Utility__loadData__LsIBA(
    JCGO_STRREF_OF(jcgo_string15_GameShll), buff, 0)), (jint)7));
  }
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__drawLoadingScreen__ILs( package_GameShell This,
 java_lang_String text, jint percent )
{
 {
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__startGame__( package_GameShell This )
{
 {
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__onClosing__( package_GameShell This )
{
 {
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__handleInputs__( package_GameShell This )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__draw__( package_GameShell This )
{
 JCGO_SYNC_BLOCKSAFENZ(This)
 {
 }
 JCGO_SYNC_END
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__showLoadingProgress__ILs( package_GameShell This,
 java_lang_String s, jint i )
{
 {
 }
}

JCGO_NOSEP_STATIC package_GameShell CFASTCALL
package_GameShell__this__( package_GameShell This )
{
 {
  ;
  JCGO_FIELD_NZACCESS(This, appletWidth)= (jint)512;
  JCGO_FIELD_NZACCESS(This, appletHeight)= (jint)344;
  JCGO_FIELD_NZACCESS(This, targetFps)= (jint)20;
  JCGO_FIELD_NZACCESS(This, maxDrawTime)= (jint)1000;
  JCGO_FIELD_NZACCESS(This, timings)= (jlongArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jlong),
   0, (jint)10);
  JCGO_FIELD_NZACCESS(This, loadingStep)= (jint)1;
  (void)jfalse;
  (void)JCGO_STRREF_OF(jcgo_string16_GameShll);
  JCGO_FIELD_NZACCESS(This, keyLeft)= (jboolean)jfalse;
  JCGO_FIELD_NZACCESS(This, keyRight)= (jboolean)jfalse;
  (void)jfalse;
  (void)jfalse;
  (void)jfalse;
  JCGO_FIELD_NZACCESS(This, threadSleep)= (jint)1;
  JCGO_FIELD_NZACCESS(This, interlace)= (jboolean)jfalse;
  JCGO_FIELD_NZACCESS(This, inputTextCurrent)= JCGO_STRREF_OF(jcgo_string3_String6D);
  JCGO_FIELD_NZACCESS(This, inputTextFinal)= JCGO_STRREF_OF(jcgo_string3_String6D);
  JCGO_FIELD_NZACCESS(This, inputPmCurrent)= JCGO_STRREF_OF(jcgo_string3_String6D);
  JCGO_FIELD_NZACCESS(This, inputPmFinal)= JCGO_STRREF_OF(jcgo_string3_String6D);
 }
 return This;
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__startApplication__IILsZ( package_GameShell This,
 java_lang_String title, jint width, jint height, jboolean resizeable
 )
{
 {
  jObject jcgo_rcvrL1;
  (void)jfalse;
  (java_io_PrintStream__println__Ls(
   JCGO_CLINIT_VARACC(java_lang_System__class, java_lang_System__out),
   JCGO_STRREF_OF(jcgo_string17_GameShll)));
  JCGO_FIELD_NZACCESS(This, appletWidth)= width;
  JCGO_FIELD_NZACCESS(This, appletHeight)= height;
  (void)(package_GameFrame__new__L7rjhaIILsZZ(
   This, title, width, height, (jboolean)resizeable, (jboolean)jfalse));
  JCGO_FIELD_NZACCESS(This, loadingStep)= (jint)1;
  JCGO_FIELD_NZACCESS(This, appletThread)= (java_lang_Thread__new__L1k0ty(
   (java_lang_Runnable)This));
  (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, appletThread), JCGO_CALL_FINALF((java_lang_Thread)jcgo_rcvrL1)
   java_lang_Thread__start__(
   (java_lang_Thread)jcgo_rcvrL1));
  (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, appletThread), JCGO_CALL_FINALF((java_lang_Thread)jcgo_rcvrL1)
   java_lang_Thread__setPriority__I(
   (java_lang_Thread)jcgo_rcvrL1, (jint)1));
  (package_GameShell__dummy__(
   This));
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__setTargetFps__I( package_GameShell This, jint i
 )
{
 {
  JCGO_FIELD_NZACCESS(This, targetFps)= jcgo_div((jint)1000, i);
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__resetTimings__( package_GameShell This )
{
 {
  {
   jint i;
   i= 0;
   for (; i < (jint)10; i++)
   {
    JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, timings), i)= JLONG_C(0);
   }
  }
 }
}

JCGO_NOSEP_STATIC void CFASTCALL
package_GameShell__closeProgram__( package_GameShell This )
{
 {
  JCGO_FIELD_NZACCESS(This, stopTimeout)= (-(jint)2);
  (java_io_PrintStream__println__Ls(
   JCGO_CLINIT_VARACC(java_lang_System__class, java_lang_System__out),
   JCGO_STRREF_OF(jcgo_string18_GameShll)));
  (JCGO_CALL_NZVFUNC(This)->onClosing__(
   This));
  {
   JCGO_TRY_BLOCK
   {
    (java_lang_Thread__sleep__J(
     JLONG_C(1000)));
   }
   JCGO_TRY_LEAVE
   JCGO_TRY_CATCHES(1)
   JCGO_TRY_CATCH(OBJT_java_lang_Exception, MAXT_java_lang_Exception)
   {
   }
   JCGO_TRY_RETHROW(1)
  }
  (java_lang_System__exit__I(
   0));
 }
}

JCGO_NOSEP_STATIC void CFASTCALL
package_GameShell__run__( package_GameShell This )
{
 {
  jint i;
  jint j;
  jint sleep;
  jint i1;
  if (JCGO_FIELD_NZACCESS(This, loadingStep) == (jint)1)
  {
   JCGO_FIELD_NZACCESS(This, loadingStep)= (jint)2;
   (package_GameShell__loadJagex__(
    This));
   (package_GameShell__drawLoadingScreen__ILs(
    This, JCGO_STRREF_OF(jcgo_string19_GameShll), 0));
   (JCGO_CALL_NZVFUNC(This)->startGame__(
    This));
   JCGO_FIELD_NZACCESS(This, loadingStep)= 0;
  }
  i= 0;
  j= (jint)256;
  sleep= (jint)1;
  i1= 0;
  {
   jint j1;
   j1= 0;
   for (; j1 < (jint)10; j1++)
   {
    jlong jcgo_rcvrJ1;
    jObject jcgo_rcvrL1;
    jint jcgo_rcvrI1;
    (jcgo_rcvrL1= (jObject)JCGO_FIELD_NZACCESS(This, timings), jcgo_rcvrI1=
     j1, jcgo_rcvrJ1= (java_lang_System__currentTimeMillis__()), JCGO_ARRAY_JACCESS((jlongArr)jcgo_rcvrL1,
     jcgo_rcvrI1)= jcgo_rcvrJ1);
   }
  }
  while (JCGO_FIELD_NZACCESS(This, stopTimeout) >= 0)
  {
   jlong time;
   jint k1;
   jint lastSleep;
   jint k2;
   if (JCGO_FIELD_NZACCESS(This, stopTimeout) > 0)
   {
    JCGO_FIELD_NZACCESS(This, stopTimeout)--;
    if (JCGO_FIELD_NZACCESS(This, stopTimeout) == 0)
    {
     (package_GameShell__closeProgram__(
      This));
     JCGO_FIELD_NZACCESS(This, appletThread)= (java_lang_Thread)jnull;
     return;
    }
   }
   k1= j;
   lastSleep= sleep;
   j= (jint)300;
   sleep= (jint)1;
   time= (java_lang_System__currentTimeMillis__());
   if (JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, timings), i) ==
    JLONG_C(0))
   {
    j= k1;
    sleep= lastSleep;
   }
   else
   {
    if (time > JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, timings),
     i))
    {
     j= (jint)(jcgo_ldiv((jlong)(JCGO_FIELD_NZACCESS(This, targetFps) *
      (jint)2560), (time - JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This,
      timings), i))));
    }
   }
   if (j < (jint)25)
   {
    j= (jint)25;
   }
   if (j > (jint)256)
   {
    j= (jint)256;
    sleep= (jint)((jlong)JCGO_FIELD_NZACCESS(This, targetFps) - jcgo_ldiv((time -
     JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, timings), i)), JLONG_C(10)));
    if (sleep < JCGO_FIELD_NZACCESS(This, threadSleep))
    {
     sleep= JCGO_FIELD_NZACCESS(This, threadSleep);
    }
   }
   {
    JCGO_TRY_BLOCK
    {
     (java_lang_Thread__sleep__J(
      (jlong)sleep));
    }
    JCGO_TRY_LEAVE
    JCGO_TRY_CATCHES(1)
    JCGO_TRY_CATCH(OBJT_java_lang_InterruptedException, MAXT_java_lang_InterruptedException)
    {
    }
    JCGO_TRY_RETHROW(1)
   }
   JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, timings), i)= time;
   i= (i + (jint)1) % (jint)10;
   if (sleep > (jint)1)
   {
    {
     jint j2;
     j2= 0;
     for (; j2 < (jint)10; j2++)
     {
      if (JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, timings), j2) !=
       JLONG_C(0))
      {
       JCGO_ARRAY_JACCESS(JCGO_FIELD_NZACCESS(This, timings), j2)+=
        (jlong)sleep;
      }
     }
    }
   }
   k2= 0;
   while (i1 < (jint)256)
   {
    jint jcgo_rcvrI1;
    handle_sdl_events(This);
    (JCGO_CALL_NZVFUNC(This)->handleInputs__(
     This));
    i1+= j;
    if ((jcgo_rcvrI1= ++k2, jcgo_rcvrI1 > JCGO_FIELD_NZACCESS(This,
     maxDrawTime)))
    {
     i1= 0;
     JCGO_FIELD_NZACCESS(This, interlaceTimer)+= (jint)6;
     if (JCGO_FIELD_NZACCESS(This, interlaceTimer) > (jint)25)
     {
      JCGO_FIELD_NZACCESS(This, interlaceTimer)= 0;
      JCGO_FIELD_NZACCESS(This, interlace)= (jboolean)jtrue;
     }
     break;
    }
   }
   JCGO_FIELD_NZACCESS(This, interlaceTimer)--;
   i1&= (jint)255;
   (JCGO_CALL_NZVFUNC(This)->draw__(
    This));
   JCGO_FIELD_NZACCESS(This, fps)= jcgo_div((j * (jint)1000), (JCGO_FIELD_NZACCESS(This,
    targetFps) * (jint)256));
  }
  if (JCGO_FIELD_NZACCESS(This, stopTimeout) == (-(jint)1))
  {
   (package_GameShell__closeProgram__(
    This));
  }
  JCGO_FIELD_NZACCESS(This, appletThread)= (java_lang_Thread)jnull;
 }
}

JCGO_NOSEP_STATIC jbyteArr CFASTCALL
package_GameShell__readDataFile__LsLsI( package_GameShell This, java_lang_String
 file, java_lang_String description, jint percent )
{
 {
  jbyteArr JCGO_TRY_VOLATILE archiveData;
  JCGO_TRY_VOLATILE jint archiveSize;
  JCGO_TRY_VOLATILE jint archiveSizeCompressed;
  file= java_lang_VMSystem__concat0X__LsLs(
   JCGO_STRREF_OF(jcgo_string20_GameShll), file);
  archiveSize= 0;
  archiveSizeCompressed= 0;
  archiveData= (jbyteArr)jnull;
  {
   JCGO_TRY_BLOCK
   {
    java_io_InputStream inputstream;
    java_io_DataInputStream datainputstream;
    jbyteArr header;
    jint read;
    jint jcgo_rcvrI1;
    struct java_lang_StringBuilder_s jcgo_stackobj1;
    struct java_lang_String_s jcgo_stackobj2;
    struct java_io_DataInputStream_s jcgo_stackobj3;
    struct java_lang_StringBuilder_s jcgo_stackobj4;
    struct java_lang_String_s jcgo_stackobj5;
    (package_GameShell__showLoadingProgress__ILs(
     This, java_lang_String__this__L5dy9e(
     JCGO_STACKOBJ_NEW(jcgo_stackobj2, java_lang_String_methods), java_lang_StringBuilder__append__Ls(
     java_lang_StringBuilder__append__Ls(
     java_lang_StringBuilder__append__Ls(
     java_lang_StringBuilder__this__(
     JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuilder_methods)),
     JCGO_STRREF_OF(jcgo_string21_GameShll)), description), JCGO_STRREF_OF(jcgo_string22_GameShll))),
     percent));
    inputstream= (package_Utility__openFile__Ls(
     file));
    datainputstream= (java_io_DataInputStream__this__L0gpra(
     JCGO_STACKOBJ_NEW(jcgo_stackobj3, java_io_DataInputStream_methods),
     inputstream));
    header= (jbyteArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jbyte),
     0, (jint)6);
    (java_io_DataInputStream__readFully__BAII(
     datainputstream, header, 0, (jint)6));
    archiveSize= (jcgo_rcvrI1= (jcgo_rcvrI1= JCGO_SHL_F(((jint)((unsigned char)(JCGO_ARRAY_NZBACCESS(header,
     0)))), (jint)16), jcgo_rcvrI1 + JCGO_SHL_F(((jint)((unsigned char)(JCGO_ARRAY_NZBACCESS(header,
     (jint)1)))), (jint)8)), jcgo_rcvrI1 + ((jint)((unsigned char)(JCGO_ARRAY_NZBACCESS(header,
     (jint)2)))));
    archiveSizeCompressed= (jcgo_rcvrI1= (jcgo_rcvrI1= JCGO_SHL_F(((jint)((unsigned char)(JCGO_ARRAY_NZBACCESS(header,
     (jint)3)))), (jint)16), jcgo_rcvrI1 + JCGO_SHL_F(((jint)((unsigned char)(JCGO_ARRAY_NZBACCESS(header,
     (jint)4)))), (jint)8)), jcgo_rcvrI1 + ((jint)((unsigned char)(JCGO_ARRAY_NZBACCESS(header,
     (jint)5)))));
    (package_GameShell__showLoadingProgress__ILs(
     This, java_lang_String__this__L5dy9e(
     JCGO_STACKOBJ_NEW(jcgo_stackobj5, java_lang_String_methods), java_lang_StringBuilder__append__Ls(
     java_lang_StringBuilder__append__Ls(
     java_lang_StringBuilder__append__Ls(
     java_lang_StringBuilder__this__(
     JCGO_STACKOBJ_NEW(jcgo_stackobj4, java_lang_StringBuilder_methods)),
     JCGO_STRREF_OF(jcgo_string21_GameShll)), description), JCGO_STRREF_OF(jcgo_string23_GameShll))),
     percent));
    read= 0;
    archiveData= (jbyteArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jbyte),
     0, archiveSizeCompressed);
    while (read < archiveSizeCompressed)
    {
     jint length;
     struct java_lang_StringBuilder_s jcgo_stackobj6;
     struct java_lang_String_s jcgo_stackobj7;
     struct java_lang_String_s jcgo_stackobj8;
     length= archiveSizeCompressed - read;
     if (length > (jint)1000)
     {
      length= (jint)1000;
     }
     (java_io_DataInputStream__readFully__BAII(
      datainputstream, archiveData, read, length));
     read+= length;
     (package_GameShell__showLoadingProgress__ILs(
      This, java_lang_String__this__L5dy9e(
      JCGO_STACKOBJ_NEW(jcgo_stackobj8, java_lang_String_methods),
      java_lang_StringBuilder__append__Ls(
      java_lang_StringBuilder__append__Ls(
      java_lang_StringBuilder__append__Ls(
      java_lang_StringBuilder__append__Ls(
      java_lang_StringBuilder__append__Ls(
      java_lang_StringBuilder__this__(
      JCGO_STACKOBJ_NEW(jcgo_stackobj6, java_lang_StringBuilder_methods)),
      JCGO_STRREF_OF(jcgo_string21_GameShll)), description), JCGO_STRREF_OF(jcgo_string24_GameShll)),
      (java_lang_String__valueOf__IX(
      (jcgo_div((read * (jint)95), archiveSizeCompressed) + (jint)5),
      JCGO_STACKOBJ_NEW(jcgo_stackobj7, java_lang_String_methods)))),
      JCGO_STRREF_OF(jcgo_string25_GameShll))), percent));
    }
    (java_io_FilterInputStream__close__(
     (java_io_FilterInputStream)datainputstream));
   }
   JCGO_TRY_LEAVE
   JCGO_TRY_CATCHES(1)
   JCGO_TRY_CATCH(OBJT_java_io_IOException, MAXT_java_io_IOException)
   {
   }
   JCGO_TRY_RETHROW(1)
  }
  (package_GameShell__showLoadingProgress__ILs(
   This, java_lang_VMSystem__concat0X__LsLs(
   JCGO_STRREF_OF(jcgo_string26_GameShll), description), percent));
  if (archiveSizeCompressed != archiveSize)
  {
   jbyteArr decompressed;
   decompressed= (jbyteArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jbyte),
    0, archiveSize);
   (package_BZLib__decompress__BAIBAII(
    decompressed, archiveData, archiveSize, archiveSizeCompressed,
    0));
   return decompressed;
  }
  else
  {
   return archiveData;
  }
 }
}

JCGO_NOSEP_INLINE java_net_Socket CFASTCALL
package_GameShell__createSocket__LsI( package_GameShell This, java_lang_String
 s, jint i )
{
 {
  java_net_Socket socket;
  socket= (java_net_Socket__new__L7lnuwI(
   (java_net_InetAddress__getByName__Ls(
   s)), i));
  (java_net_Socket__setSoTimeout__I(
   socket, (jint)30000L));
  (java_net_Socket__setTcpNoDelay__Z(
   socket, (jboolean)jtrue));
  return socket;
 }
}

JCGO_NOSEP_INLINE void CFASTCALL
package_GameShell__startThread__L1k0ty( package_GameShell This, java_lang_Runnable
 runnable )
{
 {
  java_lang_Thread thread;
  thread= (java_lang_Thread__new__L1k0ty(
   runnable));
  (java_lang_Thread__setDaemon__Z(
   thread, (jboolean)jtrue));
  (java_lang_Thread__start__(
   thread));
 }
}

JCGO_NOSEP_DATA CONST struct package_GameShell_methods_s package_GameShell_methods=
{
 JCGO_CLASSREF_OF(package_GameShell__class),
 JCGO_GCJDESCR_INIT(package_GameShell_s, timings)
 OBJT_package_GameShell,
 (JCGO_OBJSIZE_T)sizeof(struct package_GameShell_s),
 NULL,
 JCGO_CLINIT_INIT(0)
 package_GameShell__this__,
 java_lang_Object__equals__Lo,
 java_lang_Object__hashCode__,
 java_lang_Object__toString__,
 java_lang_Object__finalize__,
 package_GameShell__run__,
 (void (CFASTCALL*)(package_GameShell))java_lang_Object__finalize__,
 package_GameShell__handleInputs__,
 (void (CFASTCALL*)(package_GameShell))java_lang_Object__finalize__,
 package_GameShell__draw__,
 package_GameShell__handleKeyPress__I,
 package_GameShell__handleMouseDown__III,
 package_GameShell__createSocket__LsI,
 package_GameShell__startThread__L1k0ty
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct package_GameShell_class_s
 package_GameShell__class JCGO_THRD_ATTRNONGC=
{
 {
  &java_lang_Class_methods,
  JCGO_MON_INIT
  JCGO_OBJREF_OF(*(java_lang_Object)&package_GameShell_methods),
  JCGO_STRREF_OF(jcgo_string1_GameShll),
  JCGO_CLASSREF_OF(java_lang_Object__class),
  ((jObjectArr)JCGO_OBJREF_OF(jcgo_array27_GameShll)),
  0x101
 }
};

JCGO_NOSEP_DATA CONST java_lang_String package_GameShell__charMap=
 JCGO_STRREF_OF(jcgo_string4_PanelA73);

JCGO_NOSEP_DATA CONST jcgo_arrtype2_GameMdl jcgo_array27_GameShll=
{
 (jvtable)&jObjectArr_methods,
 JCGO_MON_INIT
 1,
 JCGO_CLASSREF_OF(java_lang_Class__class),
 {
  (jObject)JCGO_CLASSREF_OF(java_lang_Runnable__class)
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype28_GameShll jcgo_array28_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 9,
 {
  (jbyte)(jchar)71/*'G'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)109/*'m'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)83/*'S'*/, (jbyte)(jchar)104/*'h'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)108/*'l'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype28_GameShll jcgo_array29_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 9,
 {
  (jbyte)(jchar)106/*'j'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)103/*'g'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)120/*'x'*/, (jbyte)(jchar)46/*'.'*/,
   (jbyte)(jchar)106/*'j'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)103/*'g'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype30_GameShll jcgo_array30_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 13,
 {
  (jbyte)(jchar)74/*'J'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)103/*'g'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)120/*'x'*/, (jbyte)(jchar)32/*' '*/,
   (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)98/*'b'*/,
   (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)114/*'r'*/,
   (jbyte)(jchar)121/*'y'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype31_GameShll jcgo_array31_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 8,
 {
  (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)103/*'g'*/,
   (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)116/*'t'*/,
   (jbyte)(jchar)103/*'g'*/, (jbyte)(jchar)97/*'a'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype32_GameShll jcgo_array32_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 10,
 {
  (jbyte)(jchar)71/*'G'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)109/*'m'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)102/*'f'*/,
   (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)116/*'t'*/,
   (jbyte)(jchar)115/*'s'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array33_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)49/*'1'*/, (jbyte)(jchar)49/*'1'*/,
   (jbyte)(jchar)112/*'p'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array34_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)49/*'1'*/, (jbyte)(jchar)50/*'2'*/,
   (jbyte)(jchar)98/*'b'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array35_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)49/*'1'*/, (jbyte)(jchar)50/*'2'*/,
   (jbyte)(jchar)112/*'p'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array36_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)49/*'1'*/, (jbyte)(jchar)51/*'3'*/,
   (jbyte)(jchar)98/*'b'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array37_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)49/*'1'*/, (jbyte)(jchar)52/*'4'*/,
   (jbyte)(jchar)98/*'b'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array38_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)49/*'1'*/, (jbyte)(jchar)54/*'6'*/,
   (jbyte)(jchar)98/*'b'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array39_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)50/*'2'*/, (jbyte)(jchar)48/*'0'*/,
   (jbyte)(jchar)98/*'b'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype24_Object jcgo_array40_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 7,
 {
  (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)50/*'2'*/, (jbyte)(jchar)52/*'4'*/,
   (jbyte)(jchar)98/*'b'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)102/*'f'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype31_GameShll jcgo_array41_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 8,
 {
  (jbyte)(jchar)76/*'L'*/, (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)110/*'n'*/,
   (jbyte)(jchar)103/*'g'*/, (jbyte)(jchar)32/*' '*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype42_GameShll jcgo_array42_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 19,
 {
  (jbyte)(jchar)83/*'S'*/, (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)101/*'e'*/,
   (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)112/*'p'*/, (jbyte)(jchar)112/*'p'*/, (jbyte)(jchar)108/*'l'*/,
   (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)99/*'c'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)111/*'o'*/,
   (jbyte)(jchar)110/*'n'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype43_GameShll jcgo_array43_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 15,
 {
  (jbyte)(jchar)67/*'C'*/, (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)111/*'o'*/,
   (jbyte)(jchar)115/*'s'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)110/*'n'*/,
   (jbyte)(jchar)103/*'g'*/, (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)112/*'p'*/,
   (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)103/*'g'*/,
   (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)109/*'m'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype44_GameShll jcgo_array44_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 22,
 {
  (jbyte)(jchar)76/*'L'*/, (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)110/*'n'*/,
   (jbyte)(jchar)103/*'g'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)46/*'.'*/,
   (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)80/*'P'*/,
   (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)115/*'s'*/, (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)32/*' '*/,
   (jbyte)(jchar)119/*'w'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)105/*'i'*/,
   (jbyte)(jchar)116/*'t'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype32_GameShll jcgo_array45_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 10,
 {
  (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)47/*'/'*/, (jbyte)(jchar)100/*'d'*/,
   (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)50/*'2'*/, (jbyte)(jchar)48/*'0'*/, (jbyte)(jchar)52/*'4'*/,
   (jbyte)(jchar)47/*'/'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype30_Object jcgo_array46_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 5,
 {
  (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)45/*'-'*/, (jbyte)(jchar)32/*' '*/,
   (jbyte)(jchar)48/*'0'*/, (jbyte)(jchar)37/*'%'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype30_Object jcgo_array47_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 5,
 {
  (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)45/*'-'*/, (jbyte)(jchar)32/*' '*/,
   (jbyte)(jchar)53/*'5'*/, (jbyte)(jchar)37/*'%'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype48_GameShll jcgo_array48_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 33,
 {
  (jbyte)(jchar)69/*'E'*/, (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)114/*'r'*/,
   (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)32/*' '*/,
   (jbyte)(jchar)45/*'-'*/, (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)102/*'f'*/,
   (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)108/*'l'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)32/*' '*/,
   (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)32/*' '*/,
   (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)99/*'c'*/,
   (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)100/*'d'*/, (jbyte)(jchar)101/*'e'*/,
   (jbyte)(jchar)32/*' '*/, (jbyte)(jchar)112/*'p'*/, (jbyte)(jchar)114/*'r'*/,
   (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)102/*'f'*/, (jbyte)(jchar)105/*'i'*/,
   (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)46/*'.'*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype49_GameShll jcgo_array49_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 95,
 {
  (jbyte)(jchar)65/*'A'*/, (jbyte)(jchar)66/*'B'*/, (jbyte)(jchar)67/*'C'*/,
   (jbyte)(jchar)68/*'D'*/, (jbyte)(jchar)69/*'E'*/, (jbyte)(jchar)70/*'F'*/,
   (jbyte)(jchar)71/*'G'*/, (jbyte)(jchar)72/*'H'*/, (jbyte)(jchar)73/*'I'*/,
   (jbyte)(jchar)74/*'J'*/, (jbyte)(jchar)75/*'K'*/, (jbyte)(jchar)76/*'L'*/,
   (jbyte)(jchar)77/*'M'*/, (jbyte)(jchar)78/*'N'*/, (jbyte)(jchar)79/*'O'*/,
   (jbyte)(jchar)80/*'P'*/, (jbyte)(jchar)81/*'Q'*/, (jbyte)(jchar)82/*'R'*/,
   (jbyte)(jchar)83/*'S'*/, (jbyte)(jchar)84/*'T'*/, (jbyte)(jchar)85/*'U'*/,
   (jbyte)(jchar)86/*'V'*/, (jbyte)(jchar)87/*'W'*/, (jbyte)(jchar)88/*'X'*/,
   (jbyte)(jchar)89/*'Y'*/, (jbyte)(jchar)90/*'Z'*/, (jbyte)(jchar)97/*'a'*/,
   (jbyte)(jchar)98/*'b'*/, (jbyte)(jchar)99/*'c'*/, (jbyte)(jchar)100/*'d'*/,
   (jbyte)(jchar)101/*'e'*/, (jbyte)(jchar)102/*'f'*/, (jbyte)(jchar)103/*'g'*/,
   (jbyte)(jchar)104/*'h'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)106/*'j'*/,
   (jbyte)(jchar)107/*'k'*/, (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)109/*'m'*/,
   (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)112/*'p'*/,
   (jbyte)(jchar)113/*'q'*/, (jbyte)(jchar)114/*'r'*/, (jbyte)(jchar)115/*'s'*/,
   (jbyte)(jchar)116/*'t'*/, (jbyte)(jchar)117/*'u'*/, (jbyte)(jchar)118/*'v'*/,
   (jbyte)(jchar)119/*'w'*/, (jbyte)(jchar)120/*'x'*/, (jbyte)(jchar)121/*'y'*/,
   (jbyte)(jchar)122/*'z'*/, (jbyte)(jchar)48/*'0'*/, (jbyte)(jchar)49/*'1'*/,
   (jbyte)(jchar)50/*'2'*/, (jbyte)(jchar)51/*'3'*/, (jbyte)(jchar)52/*'4'*/,
   (jbyte)(jchar)53/*'5'*/, (jbyte)(jchar)54/*'6'*/, (jbyte)(jchar)55/*'7'*/,
   (jbyte)(jchar)56/*'8'*/, (jbyte)(jchar)57/*'9'*/, (jbyte)(jchar)33/*'!'*/,
   (jbyte)(jchar)34/*'"'*/, (jbyte)(jchar)163, (jbyte)(jchar)36/*'$'*/,
   (jbyte)(jchar)37/*'%'*/, (jbyte)(jchar)94/*'^'*/, (jbyte)(jchar)38/*'&'*/,
   (jbyte)(jchar)42/*'*'*/, (jbyte)(jchar)40/*'('*/, (jbyte)(jchar)41/*')'*/,
   (jbyte)(jchar)45/*'-'*/, (jbyte)(jchar)95/*'_'*/, (jbyte)(jchar)61/*'='*/,
   (jbyte)(jchar)43/*'+'*/, (jbyte)(jchar)91/*'['*/, (jbyte)(jchar)123/*'{'*/,
   (jbyte)(jchar)93/*']'*/, (jbyte)(jchar)125/*'}'*/, (jbyte)(jchar)59/*';'*/,
   (jbyte)(jchar)58/*':'*/, (jbyte)(jchar)39/*'\''*/, (jbyte)(jchar)64/*'@'*/,
   (jbyte)(jchar)35/*'#'*/, (jbyte)(jchar)126/*'~'*/, (jbyte)(jchar)44/*','*/,
   (jbyte)(jchar)60/*'<'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)62/*'>'*/,
   (jbyte)(jchar)47/*'/'*/, (jbyte)(jchar)63/*'?'*/, (jbyte)(jchar)92/*'\\'*/,
   (jbyte)(jchar)124/*'|'*/, (jbyte)(jchar)32/*' '*/
 }
};

JCGO_NOSEP_DATA CONST jcgo_arrtype32_GameShll jcgo_array50_GameShll=
{
 (jvtable)&jbyteArr_methods,
 JCGO_MON_INIT
 10,
 {
  (jbyte)(jchar)85/*'U'*/, (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)112/*'p'*/,
   (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)99/*'c'*/, (jbyte)(jchar)107/*'k'*/,
   (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)110/*'n'*/, (jbyte)(jchar)103/*'g'*/,
   (jbyte)(jchar)32/*' '*/
 }
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array28_GameShll),
 0, 9, (jint)0xb26fe93eL
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string2_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array29_GameShll),
 0, 9, (jint)0xbc54cc65L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string3_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array30_GameShll),
 0, 13, (jint)0xab4ee03eL
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string4_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array31_GameShll),
 0, 8, (jint)0x78c8a18bL
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string5_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array32_GameShll),
 5, 5, (jint)0x5d17e04L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string6_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array29_GameShll),
 5, 4, (jint)0x168322L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string7_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array32_GameShll),
 0, 10, (jint)0x446e7c76L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string8_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array33_GameShll),
 0, 7, (jint)0xd40bac02L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string9_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array34_GameShll),
 0, 7, (jint)0xd4136651L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string10_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array35_GameShll),
 0, 7, (jint)0xd419c383L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string11_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array36_GameShll),
 0, 7, (jint)0xd4217dd2L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string12_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array37_GameShll),
 0, 7, (jint)0xd42f9553L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string13_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array38_GameShll),
 0, 7, (jint)0xd44bc455L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string14_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array39_GameShll),
 0, 7, (jint)0xd5ac0feeL
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string15_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array40_GameShll),
 0, 7, (jint)0xd5e46df2L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string16_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array41_GameShll),
 0, 7, (jint)0x7749791cL
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string17_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array42_GameShll),
 0, 19, (jint)0x159e0011L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string18_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array43_GameShll),
 0, 15, (jint)0x483449f9L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string19_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array44_GameShll),
 0, 10, (jint)0x8f2553d2L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string20_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array45_GameShll),
 0, 10, (jint)0x885534a4L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string21_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array41_GameShll),
 0, 8, (jint)0x71e5aa84L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string22_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array46_GameShll),
 0, 5, (jint)0x1d7e2e8L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string23_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array47_GameShll),
 0, 5, (jint)0x1d7e383L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string24_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array48_GameShll),
 5, 3, (jint)0x7db3L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string25_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array49_GameShll),
 66, 1, (jint)0x25L
};

JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string26_GameShll
 JCGO_THRD_ATTRNONGC=
{
 &java_lang_String_methods,
 JCGO_MON_INIT
 (java_lang_Object)JCGO_OBJREF_OF(jcgo_array50_GameShll),
 0, 10, (jint)0xfe8f53d0L
};

#ifdef CHKALL_GameShell
#include "jcgochke.h"
#endif

#endif
