// Decompiled by Jad v1.5.8f. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3) 

import java.applet.Applet;
import java.applet.AppletContext;
import java.awt.*;
import java.io.*;
import java.math.BigInteger;
import java.net.*;
import java.util.Calendar;
import java.util.Date;
import java.util.zip.CRC32;
import sign.signlink;

public class client extends Applet_Sub1
{

    public DataInputStream method14(String s)
        throws IOException
    {
        /*if(!aBoolean1267)
            if(signlink.mainapp != null)
                return signlink.openurl(s);
            else
                return new DataInputStream((new URL(getCodeBase(), s)).openStream());
        if(aSocket988 != null)
        {
            try
            {
                aSocket988.close();
            }
            catch(Exception _ex) { }
            aSocket988 = null;
        }*/
        aSocket988 = method128(43595);
        aSocket988.setSoTimeout(10000);
        java.io.InputStream inputstream = aSocket988.getInputStream();
        OutputStream outputstream = aSocket988.getOutputStream();
        outputstream.write(("JAGGRAB /" + s + "\n\n").getBytes());
        return new DataInputStream(inputstream);
    }

    public void method15(byte byte0)
    {
        aBoolean1067 = false;
        while(aBoolean1013) 
        {
            aBoolean1067 = false;
            try
            {
                Thread.sleep(50L);
            }
            catch(Exception _ex) { }
        }
        aClass31_Sub3_Sub1_Sub3_1053 = null;
        aClass31_Sub3_Sub1_Sub3_1054 = null;
        aClass31_Sub3_Sub1_Sub3Array1273 = null;
        anIntArray894 = null;
        anIntArray895 = null;
        anIntArray896 = null;
        anIntArray897 = null;
        anIntArray1028 = null;
        anIntArray1029 = null;
        if(byte0 != 3)
            aBoolean861 = !aBoolean861;
        anIntArray1077 = null;
        anIntArray1078 = null;
        aClass31_Sub3_Sub1_Sub2_1251 = null;
        aClass31_Sub3_Sub1_Sub2_1252 = null;
    }

    public boolean method16(String s, byte byte0)
    {
        if(byte0 != 9)
            aClass31_Sub3_Sub2_853.method412(161);
        if(s == null)
            return false;
        for(int i = 0; i < anInt1161; i++)
            if(s.equalsIgnoreCase(aStringArray1000[i]))
                return true;

        return s.equalsIgnoreCase(aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729);
    }

    public void method17(byte byte0)
    {
        if(byte0 != 38)
            method6();
        aClass31_Sub3_Sub1_Sub3_1053 = new Class31_Sub3_Sub1_Sub3(aClass11_1261, "titlebox", 0);
        aClass31_Sub3_Sub1_Sub3_1054 = new Class31_Sub3_Sub1_Sub3(aClass11_1261, "titlebutton", 0);
        aClass31_Sub3_Sub1_Sub3Array1273 = new Class31_Sub3_Sub1_Sub3[12];
        for(int i = 0; i < 12; i++)
            aClass31_Sub3_Sub1_Sub3Array1273[i] = new Class31_Sub3_Sub1_Sub3(aClass11_1261, "runes", i);

        aClass31_Sub3_Sub1_Sub2_1251 = new Class31_Sub3_Sub1_Sub2(128, 265);
        aClass31_Sub3_Sub1_Sub2_1252 = new Class31_Sub3_Sub1_Sub2(128, 265);
        for(int j = 0; j < 33920; j++)
            aClass31_Sub3_Sub1_Sub2_1251.anIntArray1492[j] = aClass15_1005.anIntArray237[j];

        for(int k = 0; k < 33920; k++)
            aClass31_Sub3_Sub1_Sub2_1252.anIntArray1492[k] = aClass15_1006.anIntArray237[k];

        anIntArray895 = new int[256];
        for(int l = 0; l < 64; l++)
            anIntArray895[l] = l * 0x40000;

        for(int i1 = 0; i1 < 64; i1++)
            anIntArray895[i1 + 64] = 0xff0000 + 1024 * i1;

        for(int j1 = 0; j1 < 64; j1++)
            anIntArray895[j1 + 128] = 0xffff00 + 4 * j1;

        for(int k1 = 0; k1 < 64; k1++)
            anIntArray895[k1 + 192] = 0xffffff;

        anIntArray896 = new int[256];
        for(int l1 = 0; l1 < 64; l1++)
            anIntArray896[l1] = l1 * 1024;

        for(int i2 = 0; i2 < 64; i2++)
            anIntArray896[i2 + 64] = 65280 + 4 * i2;

        for(int j2 = 0; j2 < 64; j2++)
            anIntArray896[j2 + 128] = 65535 + 0x40000 * j2;

        for(int k2 = 0; k2 < 64; k2++)
            anIntArray896[k2 + 192] = 0xffffff;

        anIntArray897 = new int[256];
        for(int l2 = 0; l2 < 64; l2++)
            anIntArray897[l2] = l2 * 4;

        for(int i3 = 0; i3 < 64; i3++)
            anIntArray897[i3 + 64] = 255 + 0x40000 * i3;

        for(int j3 = 0; j3 < 64; j3++)
            anIntArray897[j3 + 128] = 0xff00ff + 1024 * j3;

        for(int k3 = 0; k3 < 64; k3++)
            anIntArray897[k3 + 192] = 0xffffff;

        anIntArray894 = new int[256];
        anIntArray1028 = new int[32768];
        anIntArray1029 = new int[32768];
        method103(null, 0);
        anIntArray1077 = new int[32768];
        anIntArray1078 = new int[32768];
        method13(10, "Connecting to fileserver", -71);
        if(!aBoolean1067)
        {
            aBoolean1185 = true;
            aBoolean1067 = true;
            method12(this, 2);
        }
    }

    public void method18(int i)
    {
        aClass31_Sub3_Sub2_853.method411(7793, 22);
        if(i != 0)
            anInt961 = aClass31_Sub3_Sub2_1307.method422();
        if(anInt1206 != -1)
        {
            method150(3, anInt1206);
            anInt1206 = -1;
            aBoolean1315 = true;
            aBoolean1052 = false;
            aBoolean909 = true;
        }
        if(anInt1129 != -1)
        {
            method150(3, anInt1129);
            anInt1129 = -1;
            aBoolean1289 = true;
            aBoolean1052 = false;
        }
        if(anInt900 != -1)
        {
            method150(3, anInt900);
            anInt900 = -1;
            aBoolean835 = true;
        }
        if(anInt889 != -1)
        {
            method150(3, anInt889);
            anInt889 = -1;
        }
        if(anInt1303 != -1)
        {
            method150(3, anInt1303);
            anInt1303 = -1;
        }
    }

    public void method19(int i)
    {
        char c = '\u0100';
        for(int j = 10; j < 117; j++)
        {
            int k = (int)(Math.random() * 100D);
            if(k < 50)
                anIntArray1077[j + (c - 2 << 7)] = 255;
        }

        for(int l = 0; l < 100; l++)
        {
            int i1 = (int)(Math.random() * 124D) + 2;
            int k1 = (int)(Math.random() * 128D) + 128;
            int k2 = i1 + (k1 << 7);
            anIntArray1077[k2] = 192;
        }

        if(i < 5 || i > 5)
            aClass31_Sub3_Sub2_853.method412(161);
        for(int j1 = 1; j1 < c - 1; j1++)
        {
            for(int l1 = 1; l1 < 127; l1++)
            {
                int l2 = l1 + (j1 << 7);
                anIntArray1078[l2] = (anIntArray1077[l2 - 1] + anIntArray1077[l2 + 1] + anIntArray1077[l2 - 128] + anIntArray1077[l2 + 128]) / 4;
            }

        }

        anInt1308 += 128;
        if(anInt1308 > anIntArray1028.length)
        {
            anInt1308 -= anIntArray1028.length;
            int i2 = (int)(Math.random() * 12D);
            method103(aClass31_Sub3_Sub1_Sub3Array1273[i2], 0);
        }
        for(int j2 = 1; j2 < c - 1; j2++)
        {
            for(int i3 = 1; i3 < 127; i3++)
            {
                int k3 = i3 + (j2 << 7);
                int i4 = anIntArray1078[k3 + 128] - anIntArray1028[k3 + anInt1308 & anIntArray1028.length - 1] / 5;
                if(i4 < 0)
                    i4 = 0;
                anIntArray1077[k3] = i4;
            }

        }

        for(int j3 = 0; j3 < c - 1; j3++)
            anIntArray1132[j3] = anIntArray1132[j3 + 1];

        anIntArray1132[c - 1] = (int)(Math.sin((double)anInt935 / 14D) * 16D + Math.sin((double)anInt935 / 15D) * 14D + Math.sin((double)anInt935 / 16D) * 12D);
        if(anInt1275 > 0)
            anInt1275 -= 4;
        if(anInt1276 > 0)
            anInt1276 -= 4;
        if(anInt1275 == 0 && anInt1276 == 0)
        {
            int l3 = (int)(Math.random() * 2000D);
            if(l3 == 0)
                anInt1275 = 1024;
            if(l3 == 1)
                anInt1276 = 1024;
        }
    }

    public static String method20(int i, int j, int k)
    {
        if(k <= 0)
        {
            for(int l = 1; l > 0; l++);
        }
        int i1 = j - i;
        if(i1 < -9)
            return "@red@";
        if(i1 < -6)
            return "@or3@";
        if(i1 < -3)
            return "@or2@";
        if(i1 < 0)
            return "@or1@";
        if(i1 > 9)
            return "@gre@";
        if(i1 > 6)
            return "@gr3@";
        if(i1 > 3)
            return "@gr2@";
        if(i1 > 0)
            return "@gr1@";
        else
            return "@yel@";
    }

    public void method21(boolean flag)
    {
        for(int i = 0; i < anInt1102; i++)
        {
            int j = anIntArray1103[i];
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j];
            if(class31_sub3_sub3_sub4_sub1 != null)
                method22(class31_sub3_sub3_sub4_sub1.aClass45_1711.aByte706, true, class31_sub3_sub3_sub4_sub1);
        }

        if(!flag)
            anInt938 = 429;
    }

    public void method22(int i, boolean flag, Class31_Sub3_Sub3_Sub4 class31_sub3_sub3_sub4)
    {
        if(!flag)
            method6();
        if(class31_sub3_sub3_sub4.anInt1635 < 128 || class31_sub3_sub3_sub4.anInt1636 < 128 || class31_sub3_sub3_sub4.anInt1635 >= 13184 || class31_sub3_sub3_sub4.anInt1636 >= 13184)
        {
            class31_sub3_sub3_sub4.anInt1674 = -1;
            class31_sub3_sub3_sub4.anInt1627 = -1;
            class31_sub3_sub3_sub4.anInt1671 = 0;
            class31_sub3_sub3_sub4.anInt1672 = 0;
            class31_sub3_sub3_sub4.anInt1635 = class31_sub3_sub3_sub4.anIntArray1633[0] * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            class31_sub3_sub3_sub4.anInt1636 = class31_sub3_sub3_sub4.anIntArray1634[0] * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            class31_sub3_sub3_sub4.method494(aByte997);
        }
        if(class31_sub3_sub3_sub4 == aClass31_Sub3_Sub3_Sub4_Sub2_885 && (class31_sub3_sub3_sub4.anInt1635 < 1536 || class31_sub3_sub3_sub4.anInt1636 < 1536 || class31_sub3_sub3_sub4.anInt1635 >= 11776 || class31_sub3_sub3_sub4.anInt1636 >= 11776))
        {
            class31_sub3_sub3_sub4.anInt1674 = -1;
            class31_sub3_sub3_sub4.anInt1627 = -1;
            class31_sub3_sub3_sub4.anInt1671 = 0;
            class31_sub3_sub3_sub4.anInt1672 = 0;
            class31_sub3_sub3_sub4.anInt1635 = class31_sub3_sub3_sub4.anIntArray1633[0] * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            class31_sub3_sub3_sub4.anInt1636 = class31_sub3_sub3_sub4.anIntArray1634[0] * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            class31_sub3_sub3_sub4.method494(aByte997);
        }
        if(class31_sub3_sub3_sub4.anInt1671 > anInt935)
            method23((byte)-23, class31_sub3_sub3_sub4);
        else
        if(class31_sub3_sub3_sub4.anInt1672 >= anInt935)
            method24(class31_sub3_sub3_sub4, 924);
        else
            method25(class31_sub3_sub3_sub4, aBoolean901);
        method26(class31_sub3_sub3_sub4, 0);
        method27(-530, class31_sub3_sub3_sub4);
    }

    public void method23(byte byte0, Class31_Sub3_Sub3_Sub4 class31_sub3_sub3_sub4)
    {
        int i = class31_sub3_sub3_sub4.anInt1671 - anInt935;
        int j = class31_sub3_sub3_sub4.anInt1667 * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
        int k = class31_sub3_sub3_sub4.anInt1669 * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
        class31_sub3_sub3_sub4.anInt1635 += (j - class31_sub3_sub3_sub4.anInt1635) / i;
        class31_sub3_sub3_sub4.anInt1636 += (k - class31_sub3_sub3_sub4.anInt1636) / i;
        if(byte0 != -23)
            method6();
        class31_sub3_sub3_sub4.anInt1659 = 0;
        if(class31_sub3_sub3_sub4.anInt1673 == 0)
            class31_sub3_sub3_sub4.anInt1649 = 1024;
        if(class31_sub3_sub3_sub4.anInt1673 == 1)
            class31_sub3_sub3_sub4.anInt1649 = 1536;
        if(class31_sub3_sub3_sub4.anInt1673 == 2)
            class31_sub3_sub3_sub4.anInt1649 = 0;
        if(class31_sub3_sub3_sub4.anInt1673 == 3)
            class31_sub3_sub3_sub4.anInt1649 = 512;
    }

    public void method24(Class31_Sub3_Sub3_Sub4 class31_sub3_sub3_sub4, int i)
    {
        if(class31_sub3_sub3_sub4.anInt1672 == anInt935 || class31_sub3_sub3_sub4.anInt1674 == -1 || class31_sub3_sub3_sub4.anInt1677 != 0 || class31_sub3_sub3_sub4.anInt1676 + 1 > Class8.aClass8Array140[class31_sub3_sub3_sub4.anInt1674].method179(class31_sub3_sub3_sub4.anInt1675, -26977))
        {
            int j = class31_sub3_sub3_sub4.anInt1672 - class31_sub3_sub3_sub4.anInt1671;
            int k = anInt935 - class31_sub3_sub3_sub4.anInt1671;
            int l = class31_sub3_sub3_sub4.anInt1667 * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            int i1 = class31_sub3_sub3_sub4.anInt1669 * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            int j1 = class31_sub3_sub3_sub4.anInt1668 * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            int k1 = class31_sub3_sub3_sub4.anInt1670 * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
            class31_sub3_sub3_sub4.anInt1635 = (l * (j - k) + j1 * k) / j;
            class31_sub3_sub3_sub4.anInt1636 = (i1 * (j - k) + k1 * k) / j;
        }
        class31_sub3_sub3_sub4.anInt1659 = 0;
        if(i <= 0)
            aClass28ArrayArrayArray996 = null;
        if(class31_sub3_sub3_sub4.anInt1673 == 0)
            class31_sub3_sub3_sub4.anInt1649 = 1024;
        if(class31_sub3_sub3_sub4.anInt1673 == 1)
            class31_sub3_sub3_sub4.anInt1649 = 1536;
        if(class31_sub3_sub3_sub4.anInt1673 == 2)
            class31_sub3_sub3_sub4.anInt1649 = 0;
        if(class31_sub3_sub3_sub4.anInt1673 == 3)
            class31_sub3_sub3_sub4.anInt1649 = 512;
        class31_sub3_sub3_sub4.anInt1637 = class31_sub3_sub3_sub4.anInt1649;
    }

    public void method25(Class31_Sub3_Sub3_Sub4 class31_sub3_sub3_sub4, boolean flag)
    {
        class31_sub3_sub3_sub4.anInt1661 = class31_sub3_sub3_sub4.anInt1647;
        if(class31_sub3_sub3_sub4.anInt1657 == 0)
        {
            class31_sub3_sub3_sub4.anInt1659 = 0;
            return;
        }
        if(class31_sub3_sub3_sub4.anInt1674 != -1 && class31_sub3_sub3_sub4.anInt1677 == 0)
        {
            Class8 class8 = Class8.aClass8Array140[class31_sub3_sub3_sub4.anInt1674];
            if(class31_sub3_sub3_sub4.anInt1638 > 0 && class8.anInt152 == 0)
            {
                class31_sub3_sub3_sub4.anInt1659++;
                return;
            }
            if(class31_sub3_sub3_sub4.anInt1638 <= 0 && class8.anInt153 == 0)
            {
                class31_sub3_sub3_sub4.anInt1659++;
                return;
            }
        }
        int i = class31_sub3_sub3_sub4.anInt1635;
        int j = class31_sub3_sub3_sub4.anInt1636;
        int k = class31_sub3_sub3_sub4.anIntArray1633[class31_sub3_sub3_sub4.anInt1657 - 1] * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
        int l = class31_sub3_sub3_sub4.anIntArray1634[class31_sub3_sub3_sub4.anInt1657 - 1] * 128 + class31_sub3_sub3_sub4.anInt1650 * 64;
        if(k - i > 256 || k - i < -256 || l - j > 256 || l - j < -256)
        {
            class31_sub3_sub3_sub4.anInt1635 = k;
            class31_sub3_sub3_sub4.anInt1636 = l;
            return;
        }
        if(i < k)
        {
            if(j < l)
                class31_sub3_sub3_sub4.anInt1649 = 1280;
            else
            if(j > l)
                class31_sub3_sub3_sub4.anInt1649 = 1792;
            else
                class31_sub3_sub3_sub4.anInt1649 = 1536;
        } else
        if(i > k)
        {
            if(j < l)
                class31_sub3_sub3_sub4.anInt1649 = 768;
            else
            if(j > l)
                class31_sub3_sub3_sub4.anInt1649 = 256;
            else
                class31_sub3_sub3_sub4.anInt1649 = 512;
        } else
        if(j < l)
            class31_sub3_sub3_sub4.anInt1649 = 1024;
        else
            class31_sub3_sub3_sub4.anInt1649 = 0;
        int i1 = class31_sub3_sub3_sub4.anInt1649 - class31_sub3_sub3_sub4.anInt1637 & 0x7ff;
        if(i1 > 1024)
            i1 -= 2048;
        int j1 = class31_sub3_sub3_sub4.anInt1640;
        if(i1 >= -256 && i1 <= 256)
            j1 = class31_sub3_sub3_sub4.anInt1639;
        else
        if(i1 >= 256 && i1 < 768)
            j1 = class31_sub3_sub3_sub4.anInt1642;
        else
        if(i1 >= -768 && i1 <= -256)
            j1 = class31_sub3_sub3_sub4.anInt1641;
        if(j1 == -1)
            j1 = class31_sub3_sub3_sub4.anInt1639;
        class31_sub3_sub3_sub4.anInt1661 = j1;
        int k1 = 4;
        if(flag)
        {
            for(int l1 = 1; l1 > 0; l1++);
        }
        if(class31_sub3_sub3_sub4.anInt1637 != class31_sub3_sub3_sub4.anInt1649 && class31_sub3_sub3_sub4.anInt1666 == -1 && class31_sub3_sub3_sub4.anInt1660 != 0)
            k1 = 2;
        if(class31_sub3_sub3_sub4.anInt1657 > 2)
            k1 = 6;
        if(class31_sub3_sub3_sub4.anInt1657 > 3)
            k1 = 8;
        if(class31_sub3_sub3_sub4.anInt1659 > 0 && class31_sub3_sub3_sub4.anInt1657 > 1)
        {
            k1 = 8;
            class31_sub3_sub3_sub4.anInt1659--;
        }
        if(class31_sub3_sub3_sub4.aBooleanArray1646[class31_sub3_sub3_sub4.anInt1657 - 1])
            k1 <<= 1;
        if(k1 >= 8 && class31_sub3_sub3_sub4.anInt1661 == class31_sub3_sub3_sub4.anInt1639 && class31_sub3_sub3_sub4.anInt1658 != -1)
            class31_sub3_sub3_sub4.anInt1661 = class31_sub3_sub3_sub4.anInt1658;
        if(i < k)
        {
            class31_sub3_sub3_sub4.anInt1635 += k1;
            if(class31_sub3_sub3_sub4.anInt1635 > k)
                class31_sub3_sub3_sub4.anInt1635 = k;
        } else
        if(i > k)
        {
            class31_sub3_sub3_sub4.anInt1635 -= k1;
            if(class31_sub3_sub3_sub4.anInt1635 < k)
                class31_sub3_sub3_sub4.anInt1635 = k;
        }
        if(j < l)
        {
            class31_sub3_sub3_sub4.anInt1636 += k1;
            if(class31_sub3_sub3_sub4.anInt1636 > l)
                class31_sub3_sub3_sub4.anInt1636 = l;
        } else
        if(j > l)
        {
            class31_sub3_sub3_sub4.anInt1636 -= k1;
            if(class31_sub3_sub3_sub4.anInt1636 < l)
                class31_sub3_sub3_sub4.anInt1636 = l;
        }
        if(class31_sub3_sub3_sub4.anInt1635 == k && class31_sub3_sub3_sub4.anInt1636 == l)
        {
            class31_sub3_sub3_sub4.anInt1657--;
            if(class31_sub3_sub3_sub4.anInt1638 > 0)
                class31_sub3_sub3_sub4.anInt1638--;
        }
    }

    public void method26(Class31_Sub3_Sub3_Sub4 class31_sub3_sub3_sub4, int i)
    {
        if(i != 0)
            return;
        if(class31_sub3_sub3_sub4.anInt1660 == 0)
            return;
        if(class31_sub3_sub3_sub4.anInt1666 != -1 && class31_sub3_sub3_sub4.anInt1666 < 32768)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[class31_sub3_sub3_sub4.anInt1666];
            if(class31_sub3_sub3_sub4_sub1 != null)
            {
                int i1 = class31_sub3_sub3_sub4.anInt1635 - ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635;
                int k1 = class31_sub3_sub3_sub4.anInt1636 - ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636;
                if(i1 != 0 || k1 != 0)
                    class31_sub3_sub3_sub4.anInt1649 = (int)(Math.atan2(i1, k1) * 325.94900000000001D) & 0x7ff;
            }
        }
        if(class31_sub3_sub3_sub4.anInt1666 >= 32768)
        {
            int j = class31_sub3_sub3_sub4.anInt1666 - 32768;
            if(j == anInt1215)
                j = anInt967;
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j];
            if(class31_sub3_sub3_sub4_sub2 != null)
            {
                int l1 = class31_sub3_sub3_sub4.anInt1635 - ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635;
                int i2 = class31_sub3_sub3_sub4.anInt1636 - ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636;
                if(l1 != 0 || i2 != 0)
                    class31_sub3_sub3_sub4.anInt1649 = (int)(Math.atan2(l1, i2) * 325.94900000000001D) & 0x7ff;
            }
        }
        if((class31_sub3_sub3_sub4.anInt1653 != 0 || class31_sub3_sub3_sub4.anInt1654 != 0) && (class31_sub3_sub3_sub4.anInt1657 == 0 || class31_sub3_sub3_sub4.anInt1659 > 0))
        {
            int k = class31_sub3_sub3_sub4.anInt1635 - (class31_sub3_sub3_sub4.anInt1653 - anInt929 - anInt929) * 64;
            int j1 = class31_sub3_sub3_sub4.anInt1636 - (class31_sub3_sub3_sub4.anInt1654 - anInt930 - anInt930) * 64;
            if(k != 0 || j1 != 0)
                class31_sub3_sub3_sub4.anInt1649 = (int)(Math.atan2(k, j1) * 325.94900000000001D) & 0x7ff;
            class31_sub3_sub3_sub4.anInt1653 = 0;
            class31_sub3_sub3_sub4.anInt1654 = 0;
        }
        int l = class31_sub3_sub3_sub4.anInt1649 - class31_sub3_sub3_sub4.anInt1637 & 0x7ff;
        if(l != 0)
        {
            if(l < class31_sub3_sub3_sub4.anInt1660 || l > 2048 - class31_sub3_sub3_sub4.anInt1660)
                class31_sub3_sub3_sub4.anInt1637 = class31_sub3_sub3_sub4.anInt1649;
            else
            if(l > 1024)
                class31_sub3_sub3_sub4.anInt1637 -= class31_sub3_sub3_sub4.anInt1660;
            else
                class31_sub3_sub3_sub4.anInt1637 += class31_sub3_sub3_sub4.anInt1660;
            class31_sub3_sub3_sub4.anInt1637 &= 0x7ff;
            if(class31_sub3_sub3_sub4.anInt1661 == class31_sub3_sub3_sub4.anInt1647 && class31_sub3_sub3_sub4.anInt1637 != class31_sub3_sub3_sub4.anInt1649)
            {
                if(class31_sub3_sub3_sub4.anInt1648 != -1)
                {
                    class31_sub3_sub3_sub4.anInt1661 = class31_sub3_sub3_sub4.anInt1648;
                    return;
                }
                class31_sub3_sub3_sub4.anInt1661 = class31_sub3_sub3_sub4.anInt1639;
            }
        }
    }

    public void method27(int i, Class31_Sub3_Sub3_Sub4 class31_sub3_sub3_sub4)
    {
        while(i >= 0) 
            anInt990 = 287;
        class31_sub3_sub3_sub4.aBoolean1664 = false;
        if(class31_sub3_sub3_sub4.anInt1661 != -1)
        {
            Class8 class8 = Class8.aClass8Array140[class31_sub3_sub3_sub4.anInt1661];
            class31_sub3_sub3_sub4.anInt1663++;
            if(class31_sub3_sub3_sub4.anInt1662 < class8.anInt141 && class31_sub3_sub3_sub4.anInt1663 > class8.method179(class31_sub3_sub3_sub4.anInt1662, -26977))
            {
                class31_sub3_sub3_sub4.anInt1663 = 0;
                class31_sub3_sub3_sub4.anInt1662++;
            }
            if(class31_sub3_sub3_sub4.anInt1662 >= class8.anInt141)
            {
                class31_sub3_sub3_sub4.anInt1663 = 0;
                class31_sub3_sub3_sub4.anInt1662 = 0;
            }
        }
        if(class31_sub3_sub3_sub4.anInt1627 != -1 && anInt935 >= class31_sub3_sub3_sub4.anInt1630)
        {
            if(class31_sub3_sub3_sub4.anInt1628 < 0)
                class31_sub3_sub3_sub4.anInt1628 = 0;
            Class8 class8_1 = Class3.aClass3Array73[class31_sub3_sub3_sub4.anInt1627].aClass8_77;
            for(class31_sub3_sub3_sub4.anInt1629++; class31_sub3_sub3_sub4.anInt1628 < class8_1.anInt141 && class31_sub3_sub3_sub4.anInt1629 > class8_1.method179(class31_sub3_sub3_sub4.anInt1628, -26977); class31_sub3_sub3_sub4.anInt1628++)
                class31_sub3_sub3_sub4.anInt1629 -= class8_1.method179(class31_sub3_sub3_sub4.anInt1628, -26977);

            if(class31_sub3_sub3_sub4.anInt1628 >= class8_1.anInt141 && (class31_sub3_sub3_sub4.anInt1628 < 0 || class31_sub3_sub3_sub4.anInt1628 >= class8_1.anInt141))
                class31_sub3_sub3_sub4.anInt1627 = -1;
        }
        if(class31_sub3_sub3_sub4.anInt1674 != -1 && class31_sub3_sub3_sub4.anInt1677 <= 1)
        {
            Class8 class8_2 = Class8.aClass8Array140[class31_sub3_sub3_sub4.anInt1674];
            if(class8_2.anInt152 == 1 && class31_sub3_sub3_sub4.anInt1638 > 0 && class31_sub3_sub3_sub4.anInt1671 <= anInt935 && class31_sub3_sub3_sub4.anInt1672 < anInt935)
            {
                class31_sub3_sub3_sub4.anInt1677 = 1;
                return;
            }
        }
        if(class31_sub3_sub3_sub4.anInt1674 != -1 && class31_sub3_sub3_sub4.anInt1677 == 0)
        {
            Class8 class8_3 = Class8.aClass8Array140[class31_sub3_sub3_sub4.anInt1674];
            for(class31_sub3_sub3_sub4.anInt1676++; class31_sub3_sub3_sub4.anInt1675 < class8_3.anInt141 && class31_sub3_sub3_sub4.anInt1676 > class8_3.method179(class31_sub3_sub3_sub4.anInt1675, -26977); class31_sub3_sub3_sub4.anInt1675++)
                class31_sub3_sub3_sub4.anInt1676 -= class8_3.method179(class31_sub3_sub3_sub4.anInt1675, -26977);

            if(class31_sub3_sub3_sub4.anInt1675 >= class8_3.anInt141)
            {
                class31_sub3_sub3_sub4.anInt1675 -= class8_3.anInt145;
                class31_sub3_sub3_sub4.anInt1678++;
                if(class31_sub3_sub3_sub4.anInt1678 >= class8_3.anInt151)
                    class31_sub3_sub3_sub4.anInt1674 = -1;
                if(class31_sub3_sub3_sub4.anInt1675 < 0 || class31_sub3_sub3_sub4.anInt1675 >= class8_3.anInt141)
                    class31_sub3_sub3_sub4.anInt1674 = -1;
            }
            class31_sub3_sub3_sub4.aBoolean1664 = class8_3.aBoolean147;
        }
        if(class31_sub3_sub3_sub4.anInt1677 > 0)
            class31_sub3_sub3_sub4.anInt1677--;
    }

    public void method28(int i)
    {
        if(i < 4 || i > 4)
            method6();
        if(anInt900 != -1 && (anInt1051 == 2 || super.aClass15_16 != null))
        {
            if(anInt1051 == 2)
            {
                method31(anInt900, anInt877, (byte)5);
                if(anInt889 != -1)
                    method31(anInt889, anInt877, (byte)5);
                anInt877 = 0;
                method76(false);
                super.aClass15_16.method213(0);
                Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1280;
                Class31_Sub3_Sub1.method348(true);
                aBoolean835 = true;
                Class30 class30 = Class30.method339(anInt900);
                if(class30.anInt455 == 512 && class30.anInt452 == 334 && class30.anInt435 == 0)
                {
                    class30.anInt455 = 765;
                    class30.anInt452 = 503;
                }
                method38(0, 0, class30, -545, 0);
                if(anInt889 != -1)
                {
                    Class30 class30_1 = Class30.method339(anInt889);
                    if(class30_1.anInt455 == 512 && class30_1.anInt452 == 334 && class30_1.anInt435 == 0)
                    {
                        class30_1.anInt455 = 765;
                        class30_1.anInt452 = 503;
                    }
                    method38(0, 0, class30_1, -545, 0);
                }
                if(!aBoolean1268)
                {
                    method119(-597);
                    method135(3);
                } else
                {
                    method139(614);
                }
            }
            super.aClass15_16.method214(super.aGraphics15, 0, 0, 0);
            return;
        }
        if(aBoolean835)
        {
            method145(7);
            aBoolean835 = false;
            aClass15_1189.method214(super.aGraphics15, 0, 0, 4);
            aClass15_1190.method214(super.aGraphics15, 0, 0, 357);
            aClass15_1191.method214(super.aGraphics15, 722, 0, 4);
            aClass15_1192.method214(super.aGraphics15, 743, 0, 205);
            aClass15_1193.method214(super.aGraphics15, 0, 0, 0);
            aClass15_1194.method214(super.aGraphics15, 516, 0, 4);
            aClass15_1195.method214(super.aGraphics15, 516, 0, 205);
            aClass15_1196.method214(super.aGraphics15, 496, 0, 357);
            aClass15_1197.method214(super.aGraphics15, 0, 0, 338);
            aBoolean1315 = true;
            aBoolean1289 = true;
            aBoolean909 = true;
            aBoolean902 = true;
            if(anInt1051 != 2)
            {
                aClass15_1226.method214(super.aGraphics15, 4, 0, 4);
                aClass15_1225.method214(super.aGraphics15, 550, 0, 4);
            }
        }
        if(anInt1051 == 2)
            method79(aByte1137);
        if(aBoolean1268 && anInt923 == 1)
            aBoolean1315 = true;
        if(anInt1206 != -1)
        {
            boolean flag = method31(anInt1206, anInt877, (byte)5);
            if(flag)
                aBoolean1315 = true;
        }
        if(anInt1048 == 2)
            aBoolean1315 = true;
        if(anInt1311 == 2)
            aBoolean1315 = true;
        if(aBoolean1315)
        {
            method133(-409);
            aBoolean1315 = false;
        }
        if(anInt1129 == -1 && anInt823 == 0)
        {
            aClass30_863.anInt460 = anInt1121 - anInt1119 - 77;
            if(super.anInt23 > 448 && super.anInt23 < 560 && super.anInt24 > 332)
                method121(super.anInt24 - 357, super.anInt23 - 17, aClass30_863, anInt1121, 77, (byte)110, -1, 463, 0);
            int j = anInt1121 - 77 - aClass30_863.anInt460;
            if(j < 0)
                j = 0;
            if(j > anInt1121 - 77)
                j = anInt1121 - 77;
            if(anInt1119 != j)
            {
                anInt1119 = j;
                aBoolean1289 = true;
            }
        }
        if(anInt1129 == -1 && anInt823 == 3)
        {
            int k = anInt825 * 14 + 7;
            aClass30_863.anInt460 = anInt828;
            if(super.anInt23 > 448 && super.anInt23 < 560 && super.anInt24 > 332)
                method121(super.anInt24 - 357, super.anInt23 - 17, aClass30_863, k, 77, (byte)110, -1, 463, 0);
            int l = aClass30_863.anInt460;
            if(l < 0)
                l = 0;
            if(l > k - 77)
                l = k - 77;
            if(anInt828 != l)
            {
                anInt828 = l;
                aBoolean1289 = true;
            }
        }
        if(anInt1129 != -1)
        {
            boolean flag1 = method31(anInt1129, anInt877, (byte)5);
            if(flag1)
                aBoolean1289 = true;
        }
        if(anInt1048 == 3)
            aBoolean1289 = true;
        if(anInt1311 == 3)
            aBoolean1289 = true;
        if(aString892 != null)
            aBoolean1289 = true;
        if(aBoolean1268 && anInt923 == 2)
            aBoolean1289 = true;
        if(aBoolean1289)
        {
            method54(aBoolean1210);
            aBoolean1289 = false;
        }
        if(anInt1051 == 2)
        {
            method104(-604);
            aClass15_1225.method214(super.aGraphics15, 550, 0, 4);
        }
        if(anInt918 != -1)
            aBoolean909 = true;
        if(aBoolean909)
        {
            if(anInt918 != -1 && anInt918 == anInt1014)
            {
                anInt918 = -1;
                aClass31_Sub3_Sub2_853.method411(7793, 170);
                aClass31_Sub3_Sub2_853.method412(anInt1014);
            }
            aBoolean909 = false;
            aClass15_1266.method213(0);
            aClass31_Sub3_Sub1_Sub3_1034.method392(-4899, 0, 0);
            if(anInt1206 == -1)
            {
                if(anIntArray1110[anInt1014] != -1)
                {
                    if(anInt1014 == 0)
                        aClass31_Sub3_Sub1_Sub3_1241.method392(-4899, 22, 10);
                    if(anInt1014 == 1)
                        aClass31_Sub3_Sub1_Sub3_1242.method392(-4899, 54, 8);
                    if(anInt1014 == 2)
                        aClass31_Sub3_Sub1_Sub3_1242.method392(-4899, 82, 8);
                    if(anInt1014 == 3)
                        aClass31_Sub3_Sub1_Sub3_1243.method392(-4899, 110, 8);
                    if(anInt1014 == 4)
                        aClass31_Sub3_Sub1_Sub3_1245.method392(-4899, 153, 8);
                    if(anInt1014 == 5)
                        aClass31_Sub3_Sub1_Sub3_1245.method392(-4899, 181, 8);
                    if(anInt1014 == 6)
                        aClass31_Sub3_Sub1_Sub3_1244.method392(-4899, 209, 9);
                }
                if(anIntArray1110[0] != -1 && (anInt918 != 0 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[0].method392(-4899, 29, 13);
                if(anIntArray1110[1] != -1 && (anInt918 != 1 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[1].method392(-4899, 53, 11);
                if(anIntArray1110[2] != -1 && (anInt918 != 2 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[2].method392(-4899, 82, 11);
                if(anIntArray1110[3] != -1 && (anInt918 != 3 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[3].method392(-4899, 115, 12);
                if(anIntArray1110[4] != -1 && (anInt918 != 4 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[4].method392(-4899, 153, 13);
                if(anIntArray1110[5] != -1 && (anInt918 != 5 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[5].method392(-4899, 180, 11);
                if(anIntArray1110[6] != -1 && (anInt918 != 6 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[6].method392(-4899, 208, 13);
            }
            aClass15_1266.method214(super.aGraphics15, 516, 0, 160);
            aClass15_1265.method213(0);
            aClass31_Sub3_Sub1_Sub3_1033.method392(-4899, 0, 0);
            if(anInt1206 == -1)
            {
                if(anIntArray1110[anInt1014] != -1)
                {
                    if(anInt1014 == 7)
                        aClass31_Sub3_Sub1_Sub3_856.method392(-4899, 42, 0);
                    if(anInt1014 == 8)
                        aClass31_Sub3_Sub1_Sub3_857.method392(-4899, 74, 0);
                    if(anInt1014 == 9)
                        aClass31_Sub3_Sub1_Sub3_857.method392(-4899, 102, 0);
                    if(anInt1014 == 10)
                        aClass31_Sub3_Sub1_Sub3_858.method392(-4899, 130, 1);
                    if(anInt1014 == 11)
                        aClass31_Sub3_Sub1_Sub3_860.method392(-4899, 173, 0);
                    if(anInt1014 == 12)
                        aClass31_Sub3_Sub1_Sub3_860.method392(-4899, 201, 0);
                    if(anInt1014 == 13)
                        aClass31_Sub3_Sub1_Sub3_859.method392(-4899, 229, 0);
                }
                if(anIntArray1110[8] != -1 && (anInt918 != 8 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[7].method392(-4899, 74, 2);
                if(anIntArray1110[9] != -1 && (anInt918 != 9 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[8].method392(-4899, 102, 3);
                if(anIntArray1110[10] != -1 && (anInt918 != 10 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[9].method392(-4899, 137, 4);
                if(anIntArray1110[11] != -1 && (anInt918 != 11 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[10].method392(-4899, 174, 2);
                if(anIntArray1110[12] != -1 && (anInt918 != 12 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[11].method392(-4899, 201, 2);
                if(anIntArray1110[13] != -1 && (anInt918 != 13 || anInt935 % 20 < 10))
                    aClass31_Sub3_Sub1_Sub3Array1141[12].method392(-4899, 226, 2);
            }
            aClass15_1265.method214(super.aGraphics15, 496, 0, 466);
            aClass15_1226.method213(0);
            Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
        }
        if(aBoolean902)
        {
            aBoolean902 = false;
            aClass15_1264.method213(0);
            aClass31_Sub3_Sub1_Sub3_1032.method392(-4899, 0, 0);
            aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Public chat", aByte1113, 0xffffff, 28, 55);
            if(anInt995 == 0)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "On", aByte1113, 65280, 41, 55);
            if(anInt995 == 1)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Friends", aByte1113, 0xffff00, 41, 55);
            if(anInt995 == 2)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Off", aByte1113, 0xff0000, 41, 55);
            if(anInt995 == 3)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Hide", aByte1113, 65535, 41, 55);
            aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Private chat", aByte1113, 0xffffff, 28, 184);
            if(anInt849 == 0)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "On", aByte1113, 65280, 41, 184);
            if(anInt849 == 1)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Friends", aByte1113, 0xffff00, 41, 184);
            if(anInt849 == 2)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Off", aByte1113, 0xff0000, 41, 184);
            aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Trade/compete", aByte1113, 0xffffff, 28, 324);
            if(anInt837 == 0)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "On", aByte1113, 65280, 41, 324);
            if(anInt837 == 1)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Friends", aByte1113, 0xffff00, 41, 324);
            if(anInt837 == 2)
                aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Off", aByte1113, 0xff0000, 41, 324);
            aClass31_Sub3_Sub1_Sub4_1235.method396(true, "Report abuse", aByte1113, 0xffffff, 33, 458);
            aClass15_1264.method214(super.aGraphics15, 0, 0, 453);
            aClass15_1226.method213(0);
            Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
        }
        anInt877 = 0;
    }

    public void method29(String s, String s1, boolean flag)
    {
        signlink.errorname = s;
        try
        {
            if(!flag)
            {
                aString854 = "";
                aString855 = "Connecting to server...";
                method83(true, anInt990);
            }
            aClass12_1075 = new Class12((byte)-87, this, method128(43594 + anInt977));
            long l = Class26.method297(s);
            int i = (int)(l >> 16 & 31L);
            aClass31_Sub3_Sub2_853.anInt1440 = 0;
            aClass31_Sub3_Sub2_853.method412(14);
            aClass31_Sub3_Sub2_853.method412(i);
            aClass12_1075.method209(0, false, aClass31_Sub3_Sub2_853.aByteArray1439, 2);
            for(int j = 0; j < 8; j++)
                aClass12_1075.method206();

            int k = aClass12_1075.method206();
            int i1 = k;
            if(k == 0)
            {
                aClass12_1075.method208(aClass31_Sub3_Sub2_1307.aByteArray1439, 0, 8);
                aClass31_Sub3_Sub2_1307.anInt1440 = 0;
                aLong911 = aClass31_Sub3_Sub2_1307.method428(true);
                int ai[] = new int[4];
                ai[0] = (int)(Math.random() * 99999999D);
                ai[1] = (int)(Math.random() * 99999999D);
                ai[2] = (int)(aLong911 >> 32);
                ai[3] = (int)aLong911;
                aClass31_Sub3_Sub2_853.anInt1440 = 0;
                aClass31_Sub3_Sub2_853.method412(10);
                aClass31_Sub3_Sub2_853.method416(ai[0]);
                aClass31_Sub3_Sub2_853.method416(ai[1]);
                aClass31_Sub3_Sub2_853.method416(ai[2]);
                aClass31_Sub3_Sub2_853.method416(ai[3]);
                aClass31_Sub3_Sub2_853.method416(signlink.uid);
                aClass31_Sub3_Sub2_853.method419(s);
                aClass31_Sub3_Sub2_853.method419(s1);
                aClass31_Sub3_Sub2_853.method437(aBigInteger1059, aBigInteger1286, false);
                aClass31_Sub3_Sub2_1222.anInt1440 = 0;
                if(flag)
                    aClass31_Sub3_Sub2_1222.method412(18);
                else
                    aClass31_Sub3_Sub2_1222.method412(16);
                aClass31_Sub3_Sub2_1222.method412(aClass31_Sub3_Sub2_853.anInt1440 + 36 + 1 + 1 + 2);
                aClass31_Sub3_Sub2_1222.method412(255);
                aClass31_Sub3_Sub2_1222.method413(356);
                aClass31_Sub3_Sub2_1222.method412(aBoolean979 ? 1 : 0);
                for(int l1 = 0; l1 < 9; l1++)
                    aClass31_Sub3_Sub2_1222.method416(anIntArray1157[l1]);

                aClass31_Sub3_Sub2_1222.method420(0, aClass31_Sub3_Sub2_853.aByteArray1439, -21870, aClass31_Sub3_Sub2_853.anInt1440);
                aClass31_Sub3_Sub2_853.aClass24_1444 = new Class24(-568, ai);
                for(int j2 = 0; j2 < 4; j2++)
                    ai[j2] += 50;

                aClass24_993 = new Class24(-568, ai);
                aClass12_1075.method209(0, false, aClass31_Sub3_Sub2_1222.aByteArray1439, aClass31_Sub3_Sub2_1222.anInt1440);
                k = aClass12_1075.method206();
            }
            if(k == 1)
            {
                try
                {
                    Thread.sleep(2000L);
                }
                catch(Exception _ex) { }
                method29(s, s1, flag);
                return;
            }
            if(k == 2)
            {
                anInt1117 = aClass12_1075.method206();
                aBoolean1256 = aClass12_1075.method206() == 1;
                aLong1071 = 0L;
                anInt1262 = 0;
                aClass10_1200.anInt192 = 0;
                super.aBoolean20 = true;
                aBoolean910 = true;
                aBoolean1079 = true;
                aClass31_Sub3_Sub2_853.anInt1440 = 0;
                aClass31_Sub3_Sub2_1307.anInt1440 = 0;
                anInt961 = -1;
                anInt904 = -1;
                anInt905 = -1;
                anInt906 = -1;
                anInt960 = 0;
                anInt962 = 0;
                anInt1167 = 0;
                anInt964 = 0;
                anInt1024 = 0;
                anInt878 = 0;
                aBoolean1268 = false;
                super.anInt21 = 0;
                for(int j1 = 0; j1 < 100; j1++)
                    aStringArray1107[j1] = null;

                anInt943 = 0;
                anInt948 = 0;
                anInt1051 = 0;
                anInt1182 = 0;
                anInt874 = (int)(Math.random() * 100D) - 50;
                anInt1030 = (int)(Math.random() * 110D) - 55;
                anInt1019 = (int)(Math.random() * 80D) - 40;
                anInt1231 = (int)(Math.random() * 120D) - 60;
                anInt1290 = (int)(Math.random() * 30D) - 20;
                anInt820 = (int)(Math.random() * 20D) - 10 & 0x7ff;
                anInt1285 = 0;
                anInt1049 = -1;
                anInt982 = 0;
                anInt983 = 0;
                anInt969 = 0;
                anInt1102 = 0;
                for(int i2 = 0; i2 < anInt966; i2++)
                {
                    aClass31_Sub3_Sub3_Sub4_Sub2Array968[i2] = null;
                    aClass31_Sub3_Sub2Array973[i2] = null;
                }

                for(int k2 = 0; k2 < 16384; k2++)
                    aClass31_Sub3_Sub3_Sub4_Sub1Array1101[k2] = null;

                aClass31_Sub3_Sub3_Sub4_Sub2_885 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anInt967] = new Class31_Sub3_Sub3_Sub4_Sub2();
                aClass28_1080.method332();
                aClass28_1124.method332();
                for(int l2 = 0; l2 < 4; l2++)
                {
                    for(int i3 = 0; i3 < 104; i3++)
                    {
                        for(int k3 = 0; k3 < 104; k3++)
                            aClass28ArrayArrayArray996[l2][i3][k3] = null;

                    }

                }

                aClass28_836 = new Class28(0);
                anInt1162 = 0;
                anInt1161 = 0;
                method150(3, anInt899);
                anInt899 = -1;
                method150(3, anInt1129);
                anInt1129 = -1;
                method150(3, anInt1303);
                anInt1303 = -1;
                method150(3, anInt900);
                anInt900 = -1;
                method150(3, anInt889);
                anInt889 = -1;
                method150(3, anInt1206);
                anInt1206 = -1;
                method150(3, anInt1160);
                anInt1160 = -1;
                aBoolean1052 = false;
                anInt1014 = 3;
                anInt823 = 0;
                aBoolean1268 = false;
                aBoolean829 = false;
                aString892 = null;
                anInt940 = 0;
                anInt918 = -1;
                aBoolean1155 = true;
                method86(493);
                for(int j3 = 0; j3 < 5; j3++)
                    anIntArray1238[j3] = 0;

                for(int l3 = 0; l3 < 5; l3++)
                {
                    aStringArray1150[l3] = null;
                    aBooleanArray1151[l3] = false;
                }

                anInt1219 = 0;
                anInt882 = 0;
                anInt953 = 0;
                anInt1271 = 0;
                anInt986 = 0;
                anInt1022 = 0;
                anInt1207 = 0;
                anInt1287 = 0;
                anInt832 = 0;
                anInt1042 = 0;
                method145(7);
                return;
            }
            if(k == 3)
            {
                aString854 = "";
                aString855 = "Invalid username or password.";
                return;
            }
            if(k == 4)
            {
                aString854 = "Your account has been disabled.";
                aString855 = "Please check your message-centre for details.";
                return;
            }
            if(k == 5)
            {
                aString854 = "Your account is already logged in.";
                aString855 = "Try again in 60 secs...";
                return;
            }
            if(k == 6)
            {
                aString854 = "RuneScape has been updated!";
                aString855 = "Please reload this page.";
                return;
            }
            if(k == 7)
            {
                aString854 = "This world is full.";
                aString855 = "Please use a different world.";
                return;
            }
            if(k == 8)
            {
                aString854 = "Unable to connect.";
                aString855 = "Login server offline.";
                return;
            }
            if(k == 9)
            {
                aString854 = "Login limit exceeded.";
                aString855 = "Too many connections from your address.";
                return;
            }
            if(k == 10)
            {
                aString854 = "Unable to connect.";
                aString855 = "Bad session id.";
                return;
            }
            if(k == 11)
            {
                aString854 = "Login server rejected session.";
                aString855 = "Please try again.";
                return;
            }
            if(k == 12)
            {
                aString854 = "You need a members account to login to this world.";
                aString855 = "Please subscribe, or use a different world.";
                return;
            }
            if(k == 13)
            {
                aString854 = "Could not complete login.";
                aString855 = "Please try using a different world.";
                return;
            }
            if(k == 14)
            {
                aString854 = "The server is being updated.";
                aString855 = "Please wait 1 minute and try again.";
                return;
            }
            if(k == 15)
            {
                aBoolean1079 = true;
                aClass31_Sub3_Sub2_853.anInt1440 = 0;
                aClass31_Sub3_Sub2_1307.anInt1440 = 0;
                anInt961 = -1;
                anInt904 = -1;
                anInt905 = -1;
                anInt906 = -1;
                anInt960 = 0;
                anInt962 = 0;
                anInt1167 = 0;
                anInt878 = 0;
                aBoolean1268 = false;
                aLong1255 = System.currentTimeMillis();
                return;
            }
            if(k == 16)
            {
                aString854 = "Login attempts exceeded.";
                aString855 = "Please wait 1 minute and try again.";
                return;
            }
            if(k == 17)
            {
                aString854 = "You are standing in a members-only area.";
                aString855 = "To play on this world move to a free area first";
                return;
            }
            if(k == 20)
            {
                aString854 = "Invalid loginserver requested";
                aString855 = "Please try using a different world.";
                return;
            }
            if(k == 21)
            {
                int k1 = aClass12_1075.method206();
                for(k1 += 3; k1 >= 0; k1--)
                {
                    aString854 = "You have only just left another world";
                    aString855 = "Your profile will be transferred in: " + k1;
                    method83(true, anInt990);
                    try
                    {
                        Thread.sleep(1200L);
                    }
                    catch(Exception _ex) { }
                }

                method29(s, s1, flag);
                return;
            }
            if(k == 22)
            {
                aString854 = "Malformed login packet.";
                aString855 = "Please try again.";
                return;
            }
            if(k == -1)
            {
                if(i1 == 0)
                {
                    if(anInt1220 < 2)
                    {
                        try
                        {
                            Thread.sleep(2000L);
                        }
                        catch(Exception _ex) { }
                        anInt1220++;
                        method29(s, s1, flag);
                        return;
                    } else
                    {
                        aString854 = "No response from loginserver";
                        aString855 = "Please wait 1 minute and try again.";
                        return;
                    }
                } else
                {
                    aString854 = "No response from server";
                    aString855 = "Please try using a different world.";
                    return;
                }
            } else
            {
                System.out.println("response:" + k);
                aString854 = "Unexpected server response";
                aString855 = "Please try using a different world.";
                return;
            }
        }
        catch(IOException _ex)
        {
            aString854 = "";
        }
        aString855 = "Error connecting to server.";
    }

    public void method30(boolean flag)
    {
        anInt893 = 0;
        int i = (((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 >> 7) + anInt929;
        int j = (((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 >> 7) + anInt930;
        if(flag)
            anInt961 = aClass31_Sub3_Sub2_1307.method422();
        if(i >= 3053 && i <= 3156 && j >= 3056 && j <= 3136)
            anInt893 = 1;
        if(i >= 3072 && i <= 3118 && j >= 9492 && j <= 9535)
            anInt893 = 1;
        if(anInt893 == 1 && i >= 3139 && i <= 3199 && j >= 3008 && j <= 3062)
            anInt893 = 0;
    }

    public boolean method31(int i, int j, byte byte0)
    {
        if(byte0 == 5)
            byte0 = 0;
        else
            throw new NullPointerException();
        boolean flag = false;
        Class30 class30 = Class30.method339(i);
        for(int k = 0; k < class30.anIntArray405.length; k++)
        {
            if(class30.anIntArray405[k] == -1)
                break;
            Class30 class30_1 = Class30.method339(class30.anIntArray405[k]);
            if(class30_1.anInt435 == 0)
                flag |= method31(class30_1.anInt459, j, (byte)5);
            if(class30_1.anInt435 == 6 && (class30_1.anInt464 != -1 || class30_1.anInt465 != -1))
            {
                boolean flag1 = method113(class30_1, 0);
                int i1;
                if(flag1)
                    i1 = class30_1.anInt465;
                else
                    i1 = class30_1.anInt464;
                if(i1 != -1)
                {
                    Class8 class8 = Class8.aClass8Array140[i1];
                    for(class30_1.anInt449 += j; class30_1.anInt449 > class8.method179(class30_1.anInt442, -26977);)
                    {
                        class30_1.anInt449 -= class8.method179(class30_1.anInt442, -26977) + 1;
                        class30_1.anInt442++;
                        if(class30_1.anInt442 >= class8.anInt141)
                        {
                            class30_1.anInt442 -= class8.anInt145;
                            if(class30_1.anInt442 < 0 || class30_1.anInt442 >= class8.anInt141)
                                class30_1.anInt442 = 0;
                        }
                        flag = true;
                    }

                }
            }
            if(class30_1.anInt435 == 6 && class30_1.anInt458 != 0)
            {
                int l = class30_1.anInt458 >> 16;
                int j1 = (class30_1.anInt458 << 16) >> 16;
                l *= j;
                j1 *= j;
                class30_1.anInt467 = class30_1.anInt467 + l & 0x7ff;
                class30_1.anInt468 = class30_1.anInt468 + j1 & 0x7ff;
                flag = true;
            }
        }

        return flag;
    }

    public void method32(boolean flag)
    {
        if(aClass15_1002 != null)
            return;
        super.aClass15_16 = null;
        aClass15_1227 = null;
        aClass15_1225 = null;
        aClass15_1224 = null;
        aClass15_1226 = null;
        aClass15_1264 = null;
        aClass15_1265 = null;
        aClass15_1266 = null;
        aClass15_1005 = new Class15(265, 128, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1006 = new Class15(265, 128, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1002 = new Class15(171, 509, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1003 = new Class15(132, 360, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1004 = new Class15(200, 360, method11(true), anInt1144);
        aBoolean1079 &= flag;
        Class31_Sub3_Sub1.method348(true);
        aClass15_1007 = new Class15(238, 202, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1008 = new Class15(238, 203, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1009 = new Class15(94, 74, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1010 = new Class15(94, 75, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        if(aClass11_1261 != null)
        {
            method67(-480);
            method17((byte)38);
        }
        aBoolean835 = true;
    }

    public void method33(int i, int j, Class31_Sub3_Sub2 class31_sub3_sub2)
    {
        j = 95 / j;
        while(class31_sub3_sub2.anInt1441 + 10 < i * 8) 
        {
            int k = class31_sub3_sub2.method433(11, (byte)-50);
            if(k == 2047)
                break;
            if(aClass31_Sub3_Sub3_Sub4_Sub2Array968[k] == null)
            {
                aClass31_Sub3_Sub3_Sub4_Sub2Array968[k] = new Class31_Sub3_Sub3_Sub4_Sub2();
                if(aClass31_Sub3_Sub2Array973[k] != null)
                    aClass31_Sub3_Sub3_Sub4_Sub2Array968[k].method500(aClass31_Sub3_Sub2Array973[k], anInt1233);
            }
            anIntArray970[anInt969++] = k;
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[k];
            class31_sub3_sub3_sub4_sub2.anInt1626 = anInt935;
            int l = class31_sub3_sub2.method433(5, (byte)-50);
            if(l > 15)
                l -= 32;
            int i1 = class31_sub3_sub2.method433(1, (byte)-50);
            if(i1 == 1)
                anIntArray972[anInt971++] = k;
            int j1 = class31_sub3_sub2.method433(5, (byte)-50);
            if(j1 > 15)
                j1 -= 32;
            int k1 = class31_sub3_sub2.method433(1, (byte)-50);
            class31_sub3_sub3_sub4_sub2.method497(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0] + l, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0] + j1, aByte1109, k1 == 1);
        }
        class31_sub3_sub2.method434(true);
    }

    public void method9(int i)
    {
        if(aBoolean958 || aBoolean928 || aBoolean1058)
        {
            method62(0);
            return;
        }
        anInt1254++;
        if(!aBoolean1079)
            method83(false, anInt990);
        else
            method28(4);
        anInt965 = 0;
        if(i != 0)
            aClass31_Sub3_Sub2_853.method412(159);
    }

    public void method34(int i)
    {
        i = 30 / i;
        if(anInt1051 == 2)
        {
            for(Class31_Sub2 class31_sub2 = (Class31_Sub2)aClass28_836.method328(); class31_sub2 != null; class31_sub2 = (Class31_Sub2)aClass28_836.method330(-582))
            {
                if(class31_sub2.anInt1391 > 0)
                    class31_sub2.anInt1391--;
                if(class31_sub2.anInt1391 == 0)
                {
                    if(class31_sub2.anInt1392 < 0 || Class9.method191(class31_sub2.anInt1394, class31_sub2.anInt1392, 0))
                    {
                        method111(class31_sub2.anInt1398, class31_sub2.anInt1394, class31_sub2.anInt1396, class31_sub2.anInt1392, class31_sub2.anInt1393, class31_sub2.anInt1395, -785, class31_sub2.anInt1397);
                        class31_sub2.method343();
                    }
                } else
                {
                    if(class31_sub2.anInt1402 > 0)
                        class31_sub2.anInt1402--;
                    if(class31_sub2.anInt1402 == 0 && class31_sub2.anInt1397 >= 1 && class31_sub2.anInt1398 >= 1 && class31_sub2.anInt1397 <= 102 && class31_sub2.anInt1398 <= 102 && (class31_sub2.anInt1399 < 0 || Class9.method191(class31_sub2.anInt1401, class31_sub2.anInt1399, 0)))
                    {
                        method111(class31_sub2.anInt1398, class31_sub2.anInt1401, class31_sub2.anInt1396, class31_sub2.anInt1399, class31_sub2.anInt1400, class31_sub2.anInt1395, -785, class31_sub2.anInt1397);
                        class31_sub2.anInt1402 = -1;
                        if(class31_sub2.anInt1399 == class31_sub2.anInt1392 && class31_sub2.anInt1392 == -1)
                            class31_sub2.method343();
                        else
                        if(class31_sub2.anInt1399 == class31_sub2.anInt1392 && class31_sub2.anInt1400 == class31_sub2.anInt1393 && class31_sub2.anInt1401 == class31_sub2.anInt1394)
                            class31_sub2.method343();
                    }
                }
            }

            anInt1213++;
            if(anInt1213 > 109)
            {
                anInt1213 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 229);
                aClass31_Sub3_Sub2_853.method413(8929);
            }
        }
    }

    public void method35(Class31_Sub3_Sub2 class31_sub3_sub2, int i, int j)
    {
        int k = class31_sub3_sub2.method433(8, (byte)-50);
        if(k < anInt969)
        {
            for(int l = k; l < anInt969; l++)
                anIntArray1295[anInt1294++] = anIntArray970[l];

        }
        if(k > anInt969)
        {
            signlink.reporterror(aString1211 + " Too many players");
            throw new RuntimeException("eek");
        }
        anInt969 = 0;
        if(j != 39779)
        {
            for(int i1 = 1; i1 > 0; i1++);
        }
        for(int j1 = 0; j1 < k; j1++)
        {
            int k1 = anIntArray970[j1];
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[k1];
            int l1 = class31_sub3_sub2.method433(1, (byte)-50);
            if(l1 == 0)
            {
                anIntArray970[anInt969++] = k1;
                class31_sub3_sub3_sub4_sub2.anInt1626 = anInt935;
            } else
            {
                int i2 = class31_sub3_sub2.method433(2, (byte)-50);
                if(i2 == 0)
                {
                    anIntArray970[anInt969++] = k1;
                    class31_sub3_sub3_sub4_sub2.anInt1626 = anInt935;
                    anIntArray972[anInt971++] = k1;
                } else
                if(i2 == 1)
                {
                    anIntArray970[anInt969++] = k1;
                    class31_sub3_sub3_sub4_sub2.anInt1626 = anInt935;
                    int j2 = class31_sub3_sub2.method433(3, (byte)-50);
                    class31_sub3_sub3_sub4_sub2.method495(j2, false, true);
                    int l2 = class31_sub3_sub2.method433(1, (byte)-50);
                    if(l2 == 1)
                        anIntArray972[anInt971++] = k1;
                } else
                if(i2 == 2)
                {
                    anIntArray970[anInt969++] = k1;
                    class31_sub3_sub3_sub4_sub2.anInt1626 = anInt935;
                    int k2 = class31_sub3_sub2.method433(3, (byte)-50);
                    class31_sub3_sub3_sub4_sub2.method495(k2, true, true);
                    int i3 = class31_sub3_sub2.method433(3, (byte)-50);
                    class31_sub3_sub3_sub4_sub2.method495(i3, true, true);
                    int j3 = class31_sub3_sub2.method433(1, (byte)-50);
                    if(j3 == 1)
                        anIntArray972[anInt971++] = k1;
                } else
                if(i2 == 3)
                    anIntArray1295[anInt1294++] = k1;
            }
        }

    }

    public void method36(int i)
    {
        if(i != 44393)
            anInt938 = aClass24_993.method288();
        do
        {
            Class31_Sub3_Sub4 class31_sub3_sub4;
            do
            {
                class31_sub3_sub4 = aClass27_Sub1_843.method317();
                if(class31_sub3_sub4 == null)
                    return;
                if(class31_sub3_sub4.anInt1456 == 0)
                {
                    Class31_Sub3_Sub3_Sub2.method465(0, class31_sub3_sub4.anInt1457, class31_sub3_sub4.aByteArray1459);
                    if((aClass27_Sub1_843.method309(aByte891, class31_sub3_sub4.anInt1457) & 0x62) != 0)
                    {
                        aBoolean1315 = true;
                        if(anInt1129 != -1 || anInt899 != -1)
                            aBoolean1289 = true;
                    }
                }
                if(class31_sub3_sub4.anInt1456 == 1 && class31_sub3_sub4.aByteArray1459 != null)
                    Class32.method506(class31_sub3_sub4.aByteArray1459, (byte)-21);
                if(class31_sub3_sub4.anInt1456 == 2 && class31_sub3_sub4.anInt1457 == anInt1292 && class31_sub3_sub4.aByteArray1459 != null)
                    method152(aBoolean1293, class31_sub3_sub4.aByteArray1459, 47025);
                if(class31_sub3_sub4.anInt1456 == 3 && anInt1051 == 1)
                {
                    for(int j = 0; j < aByteArrayArray1142.length; j++)
                    {
                        if(anIntArray1283[j] == class31_sub3_sub4.anInt1457)
                        {
                            aByteArrayArray1142[j] = class31_sub3_sub4.aByteArray1459;
                            if(class31_sub3_sub4.aByteArray1459 == null)
                                anIntArray1283[j] = -1;
                            break;
                        }
                        if(anIntArray1284[j] != class31_sub3_sub4.anInt1457)
                            continue;
                        aByteArrayArray1248[j] = class31_sub3_sub4.aByteArray1459;
                        if(class31_sub3_sub4.aByteArray1459 == null)
                            anIntArray1284[j] = -1;
                        break;
                    }

                }
            } while(class31_sub3_sub4.anInt1456 != 93 || !aClass27_Sub1_843.method321(class31_sub3_sub4.anInt1457, (byte)70));
            Class9.method187(aClass27_Sub1_843, (byte)3, new Class31_Sub3_Sub2((byte)114, class31_sub3_sub4.aByteArray1459));
        } while(true);
    }

    public void method37(int i)
    {
        if(i != -346)
            anInt1263 = aClass24_993.method288();
        if(super.anInt29 == 1)
        {
            if(super.anInt30 >= 539 && super.anInt30 <= 573 && super.anInt31 >= 169 && super.anInt31 < 205 && anIntArray1110[0] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 0;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 569 && super.anInt30 <= 599 && super.anInt31 >= 168 && super.anInt31 < 205 && anIntArray1110[1] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 1;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 597 && super.anInt30 <= 627 && super.anInt31 >= 168 && super.anInt31 < 205 && anIntArray1110[2] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 2;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 625 && super.anInt30 <= 669 && super.anInt31 >= 168 && super.anInt31 < 203 && anIntArray1110[3] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 3;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 666 && super.anInt30 <= 696 && super.anInt31 >= 168 && super.anInt31 < 205 && anIntArray1110[4] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 4;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 694 && super.anInt30 <= 724 && super.anInt31 >= 168 && super.anInt31 < 205 && anIntArray1110[5] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 5;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 722 && super.anInt30 <= 756 && super.anInt31 >= 169 && super.anInt31 < 205 && anIntArray1110[6] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 6;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 540 && super.anInt30 <= 574 && super.anInt31 >= 466 && super.anInt31 < 502 && anIntArray1110[7] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 7;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 572 && super.anInt30 <= 602 && super.anInt31 >= 466 && super.anInt31 < 503 && anIntArray1110[8] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 8;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 599 && super.anInt30 <= 629 && super.anInt31 >= 466 && super.anInt31 < 503 && anIntArray1110[9] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 9;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 627 && super.anInt30 <= 671 && super.anInt31 >= 467 && super.anInt31 < 502 && anIntArray1110[10] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 10;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 669 && super.anInt30 <= 699 && super.anInt31 >= 466 && super.anInt31 < 503 && anIntArray1110[11] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 11;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 696 && super.anInt30 <= 726 && super.anInt31 >= 466 && super.anInt31 < 503 && anIntArray1110[12] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 12;
                aBoolean909 = true;
            }
            if(super.anInt30 >= 724 && super.anInt30 <= 758 && super.anInt31 >= 466 && super.anInt31 < 502 && anIntArray1110[13] != -1)
            {
                aBoolean1315 = true;
                anInt1014 = 13;
                aBoolean909 = true;
            }
        }
    }

    public void method38(int i, int j, Class30 class30, int k, int l)
    {
        if(class30.anInt435 != 0 || class30.anIntArray405 == null)
            return;
        if(class30.aBoolean462 && anInt1156 != class30.anInt459 && anInt1301 != class30.anInt459 && anInt1230 != class30.anInt459)
            return;
        int i1 = Class31_Sub3_Sub1.anInt1416;
        int j1 = Class31_Sub3_Sub1.anInt1414;
        int k1 = Class31_Sub3_Sub1.anInt1417;
        int l1 = Class31_Sub3_Sub1.anInt1415;
        if(k >= 0)
            return;
        Class31_Sub3_Sub1.method347(l, j, (byte)21, j + class30.anInt455, l + class30.anInt452);
        int i2 = class30.anIntArray405.length;
        for(int j2 = 0; j2 < i2; j2++)
        {
            int k2 = class30.anIntArray453[j2] + j;
            int l2 = (class30.anIntArray456[j2] + l) - i;
            Class30 class30_1 = Class30.method339(class30.anIntArray405[j2]);
            k2 += class30_1.anInt439;
            l2 += class30_1.anInt425;
            if(class30_1.anInt399 > 0)
                method91((byte)-22, class30_1);
            if(class30_1.anInt435 == 0)
            {
                if(class30_1.anInt460 > class30_1.anInt434 - class30_1.anInt452)
                    class30_1.anInt460 = class30_1.anInt434 - class30_1.anInt452;
                if(class30_1.anInt460 < 0)
                    class30_1.anInt460 = 0;
                method38(class30_1.anInt460, k2, class30_1, -545, l2);
                if(class30_1.anInt434 > class30_1.anInt452)
                    method41(k2 + class30_1.anInt455, l2, class30_1.anInt434, class30_1.anInt460, 227, class30_1.anInt452);
            } else
            if(class30_1.anInt435 != 1)
                if(class30_1.anInt435 == 2)
                {
                    int i3 = 0;
                    for(int i4 = 0; i4 < class30_1.anInt452; i4++)
                    {
                        for(int j5 = 0; j5 < class30_1.anInt455; j5++)
                        {
                            int i6 = k2 + j5 * (32 + class30_1.anInt461);
                            int l6 = l2 + i4 * (32 + class30_1.anInt417);
                            if(i3 < 20)
                            {
                                i6 += class30_1.anIntArray450[i3];
                                l6 += class30_1.anIntArray463[i3];
                            }
                            if(class30_1.anIntArray406[i3] > 0)
                            {
                                int i7 = 0;
                                int j8 = 0;
                                int l10 = class30_1.anIntArray406[i3] - 1;
                                if(i6 > Class31_Sub3_Sub1.anInt1416 - 32 && i6 < Class31_Sub3_Sub1.anInt1417 && l6 > Class31_Sub3_Sub1.anInt1414 - 32 && l6 < Class31_Sub3_Sub1.anInt1415 || anInt1311 != 0 && anInt1310 == i3)
                                {
                                    int k11 = 0;
                                    if(anInt943 == 1 && anInt944 == i3 && anInt945 == class30_1.anInt459)
                                        k11 = 0xffffff;
                                    Class31_Sub3_Sub1_Sub2 class31_sub3_sub1_sub2_2 = Class41.method576(class30_1.anIntArray411[i3], l10, k11, 968);
                                    if(class31_sub3_sub1_sub2_2 != null)
                                    {
                                        if(anInt1311 != 0 && anInt1310 == i3 && anInt1309 == class30_1.anInt459)
                                        {
                                            i7 = super.anInt23 - anInt1312;
                                            j8 = super.anInt24 - anInt1313;
                                            if(i7 < 5 && i7 > -5)
                                                i7 = 0;
                                            if(j8 < 5 && j8 > -5)
                                                j8 = 0;
                                            if(anInt1170 < 5)
                                            {
                                                i7 = 0;
                                                j8 = 0;
                                            }
                                            class31_sub3_sub1_sub2_2.method381(228, 128, i6 + i7, l6 + j8);
                                            if(l6 + j8 < Class31_Sub3_Sub1.anInt1414 && class30.anInt460 > 0)
                                            {
                                                int i12 = (anInt877 * (Class31_Sub3_Sub1.anInt1414 - l6 - j8)) / 3;
                                                if(i12 > anInt877 * 10)
                                                    i12 = anInt877 * 10;
                                                if(i12 > class30.anInt460)
                                                    i12 = class30.anInt460;
                                                class30.anInt460 -= i12;
                                                anInt1313 += i12;
                                            }
                                            if(l6 + j8 + 32 > Class31_Sub3_Sub1.anInt1415 && class30.anInt460 < class30.anInt434 - class30.anInt452)
                                            {
                                                int j12 = (anInt877 * ((l6 + j8 + 32) - Class31_Sub3_Sub1.anInt1415)) / 3;
                                                if(j12 > anInt877 * 10)
                                                    j12 = anInt877 * 10;
                                                if(j12 > class30.anInt434 - class30.anInt452 - class30.anInt460)
                                                    j12 = class30.anInt434 - class30.anInt452 - class30.anInt460;
                                                class30.anInt460 += j12;
                                                anInt1313 -= j12;
                                            }
                                        } else
                                        if(anInt1048 != 0 && anInt1047 == i3 && anInt1046 == class30_1.anInt459)
                                            class31_sub3_sub1_sub2_2.method381(228, 128, i6, l6);
                                        else
                                            class31_sub3_sub1_sub2_2.method379(-4899, i6, l6);
                                        if(class31_sub3_sub1_sub2_2.anInt1497 == 33 || class30_1.anIntArray411[i3] != 1)
                                        {
                                            int k12 = class30_1.anIntArray411[i3];
                                            aClass31_Sub3_Sub1_Sub4_1234.method399(method130(anInt903, k12), l6 + 10 + j8, i6 + 1 + i7, 0, -32001);
                                            aClass31_Sub3_Sub1_Sub4_1234.method399(method130(anInt903, k12), l6 + 9 + j8, i6 + i7, 0xffff00, -32001);
                                        }
                                    }
                                }
                            } else
                            if(class30_1.aClass31_Sub3_Sub1_Sub2Array430 != null && i3 < 20)
                            {
                                Class31_Sub3_Sub1_Sub2 class31_sub3_sub1_sub2_1 = class30_1.aClass31_Sub3_Sub1_Sub2Array430[i3];
                                if(class31_sub3_sub1_sub2_1 != null)
                                    class31_sub3_sub1_sub2_1.method379(-4899, i6, l6);
                            }
                            i3++;
                        }

                    }

                } else
                if(class30_1.anInt435 == 3)
                {
                    boolean flag = false;
                    if(anInt1230 == class30_1.anInt459 || anInt1301 == class30_1.anInt459 || anInt1156 == class30_1.anInt459)
                        flag = true;
                    int j3;
                    if(method113(class30_1, 0))
                    {
                        j3 = class30_1.anInt422;
                        if(flag && class30_1.anInt427 != 0)
                            j3 = class30_1.anInt427;
                    } else
                    {
                        j3 = class30_1.anInt410;
                        if(flag && class30_1.anInt403 != 0)
                            j3 = class30_1.anInt403;
                    }
                    if(class30_1.aByte440 == 0)
                    {
                        if(class30_1.aBoolean415)
                            Class31_Sub3_Sub1.method350(class30_1.anInt455, 2, k2, j3, l2, class30_1.anInt452);
                        else
                            Class31_Sub3_Sub1.method351(class30_1.anInt452, j3, 0, k2, class30_1.anInt455, l2);
                    } else
                    if(class30_1.aBoolean415)
                        Class31_Sub3_Sub1.method349(256 - (class30_1.aByte440 & 0xff), k2, class30_1.anInt455, class30_1.anInt452, -852, l2, j3);
                    else
                        Class31_Sub3_Sub1.method352(j3, l2, k2, class30_1.anInt455, class30_1.anInt452, 28, 256 - (class30_1.aByte440 & 0xff));
                } else
                if(class30_1.anInt435 == 4)
                {
                    Class31_Sub3_Sub1_Sub4 class31_sub3_sub1_sub4 = class30_1.aClass31_Sub3_Sub1_Sub4_414;
                    String s = class30_1.aString441;
                    boolean flag1 = false;
                    if(anInt1230 == class30_1.anInt459 || anInt1301 == class30_1.anInt459 || anInt1156 == class30_1.anInt459)
                        flag1 = true;
                    int j4;
                    if(method113(class30_1, 0))
                    {
                        j4 = class30_1.anInt422;
                        if(flag1 && class30_1.anInt427 != 0)
                            j4 = class30_1.anInt427;
                        if(class30_1.aString426.length() > 0)
                            s = class30_1.aString426;
                    } else
                    {
                        j4 = class30_1.anInt410;
                        if(flag1 && class30_1.anInt403 != 0)
                            j4 = class30_1.anInt403;
                    }
                    if(class30_1.anInt469 == 6 && aBoolean1052)
                    {
                        s = "Please wait...";
                        j4 = class30_1.anInt410;
                    }
                    if(Class31_Sub3_Sub1.anInt1412 == 479)
                    {
                        if(j4 == 0xffff00)
                            j4 = 255;
                        if(j4 == 49152)
                            j4 = 0xffffff;
                    }
                    for(int j7 = l2 + class31_sub3_sub1_sub4.anInt1522; s.length() > 0; j7 += class31_sub3_sub1_sub4.anInt1522)
                    {
                        if(s.indexOf("%") != -1)
                        {
                            do
                            {
                                int k8 = s.indexOf("%1");
                                if(k8 == -1)
                                    break;
                                s = s.substring(0, k8) + method151(method84(0, (byte)0, class30_1), (byte)-1) + s.substring(k8 + 2);
                            } while(true);
                            do
                            {
                                int l8 = s.indexOf("%2");
                                if(l8 == -1)
                                    break;
                                s = s.substring(0, l8) + method151(method84(1, (byte)0, class30_1), (byte)-1) + s.substring(l8 + 2);
                            } while(true);
                            do
                            {
                                int i9 = s.indexOf("%3");
                                if(i9 == -1)
                                    break;
                                s = s.substring(0, i9) + method151(method84(2, (byte)0, class30_1), (byte)-1) + s.substring(i9 + 2);
                            } while(true);
                            do
                            {
                                int j9 = s.indexOf("%4");
                                if(j9 == -1)
                                    break;
                                s = s.substring(0, j9) + method151(method84(3, (byte)0, class30_1), (byte)-1) + s.substring(j9 + 2);
                            } while(true);
                            do
                            {
                                int k9 = s.indexOf("%5");
                                if(k9 == -1)
                                    break;
                                s = s.substring(0, k9) + method151(method84(4, (byte)0, class30_1), (byte)-1) + s.substring(k9 + 2);
                            } while(true);
                        }
                        int l9 = s.indexOf("\\n");
                        String s3;
                        if(l9 != -1)
                        {
                            s3 = s.substring(0, l9);
                            s = s.substring(l9 + 2);
                        } else
                        {
                            s3 = s;
                            s = "";
                        }
                        if(class30_1.aBoolean402)
                            class31_sub3_sub1_sub4.method396(class30_1.aBoolean443, s3, aByte1113, j4, j7, k2 + class30_1.anInt455 / 2);
                        else
                            class31_sub3_sub1_sub4.method403(j4, s3, class30_1.aBoolean443, k2, aBoolean861, j7);
                    }

                } else
                if(class30_1.anInt435 == 5)
                {
                    Class31_Sub3_Sub1_Sub2 class31_sub3_sub1_sub2;
                    if(method113(class30_1, 0))
                        class31_sub3_sub1_sub2 = class30_1.aClass31_Sub3_Sub1_Sub2_445;
                    else
                        class31_sub3_sub1_sub2 = class30_1.aClass31_Sub3_Sub1_Sub2_448;
                    if(class31_sub3_sub1_sub2 != null)
                        class31_sub3_sub1_sub2.method379(-4899, k2, l2);
                } else
                if(class30_1.anInt435 == 6)
                {
                    int k3 = Class31_Sub3_Sub1_Sub1.anInt1468;
                    int k4 = Class31_Sub3_Sub1_Sub1.anInt1469;
                    Class31_Sub3_Sub1_Sub1.anInt1468 = k2 + class30_1.anInt455 / 2;
                    Class31_Sub3_Sub1_Sub1.anInt1469 = l2 + class30_1.anInt452 / 2;
                    int k5 = Class31_Sub3_Sub1_Sub1.anIntArray1472[class30_1.anInt467] * class30_1.anInt466 >> 16;
                    int j6 = Class31_Sub3_Sub1_Sub1.anIntArray1473[class30_1.anInt467] * class30_1.anInt466 >> 16;
                    boolean flag2 = method113(class30_1, 0);
                    int k7;
                    if(flag2)
                        k7 = class30_1.anInt465;
                    else
                        k7 = class30_1.anInt464;
                    Class31_Sub3_Sub3_Sub2 class31_sub3_sub3_sub2;
                    if(k7 == -1)
                    {
                        class31_sub3_sub3_sub2 = class30_1.method333(-1, (byte)0, -1, flag2);
                    } else
                    {
                        Class8 class8 = Class8.aClass8Array140[k7];
                        class31_sub3_sub3_sub2 = class30_1.method333(class8.anIntArray143[class30_1.anInt442], (byte)0, class8.anIntArray142[class30_1.anInt442], flag2);
                    }
                    if(class31_sub3_sub3_sub2 != null)
                        class31_sub3_sub3_sub2.method488(0, class30_1.anInt468, 0, class30_1.anInt467, 0, k5, j6);
                    Class31_Sub3_Sub1_Sub1.anInt1468 = k3;
                    Class31_Sub3_Sub1_Sub1.anInt1469 = k4;
                } else
                {
                    if(class30_1.anInt435 == 7)
                    {
                        Class31_Sub3_Sub1_Sub4 class31_sub3_sub1_sub4_1 = class30_1.aClass31_Sub3_Sub1_Sub4_414;
                        int l4 = 0;
                        for(int l5 = 0; l5 < class30_1.anInt452; l5++)
                        {
                            for(int k6 = 0; k6 < class30_1.anInt455; k6++)
                            {
                                if(class30_1.anIntArray406[l4] > 0)
                                {
                                    Class41 class41 = Class41.method577(class30_1.anIntArray406[l4] - 1);
                                    String s6 = class41.aString650;
                                    if(class41.aBoolean651 || class30_1.anIntArray411[l4] != 1)
                                        s6 = s6 + " x" + method60(class30_1.anIntArray411[l4], (byte)119);
                                    int i10 = k2 + k6 * (115 + class30_1.anInt461);
                                    int i11 = l2 + l5 * (12 + class30_1.anInt417);
                                    if(class30_1.aBoolean402)
                                        class31_sub3_sub1_sub4_1.method396(class30_1.aBoolean443, s6, aByte1113, class30_1.anInt410, i11, i10 + class30_1.anInt455 / 2);
                                    else
                                        class31_sub3_sub1_sub4_1.method403(class30_1.anInt410, s6, class30_1.aBoolean443, i10, aBoolean861, i11);
                                }
                                l4++;
                            }

                        }

                    }
                    if(class30_1.anInt435 == 8 && (anInt1247 == class30_1.anInt459 || anInt1096 == class30_1.anInt459 || anInt1088 == class30_1.anInt459) && anInt881 == 100)
                    {
                        int l3 = 0;
                        int i5 = 0;
                        Class31_Sub3_Sub1_Sub4 class31_sub3_sub1_sub4_2 = aClass31_Sub3_Sub1_Sub4_1235;
                        for(String s1 = class30_1.aString441; s1.length() > 0;)
                        {
                            int l7 = s1.indexOf("\\n");
                            String s4;
                            if(l7 != -1)
                            {
                                s4 = s1.substring(0, l7);
                                s1 = s1.substring(l7 + 2);
                            } else
                            {
                                s4 = s1;
                                s1 = "";
                            }
                            int j10 = class31_sub3_sub1_sub4_2.method397(s4, aByte1304);
                            if(j10 > l3)
                                l3 = j10;
                            i5 += class31_sub3_sub1_sub4_2.anInt1522 + 1;
                        }

                        l3 += 6;
                        i5 += 7;
                        int i8 = (k2 + class30_1.anInt455) - 5 - l3;
                        int k10 = l2 + class30_1.anInt452 + 5;
                        if(i8 < k2 + 5)
                            i8 = k2 + 5;
                        if(i8 + l3 > j + class30.anInt455)
                            i8 = (j + class30.anInt455) - l3;
                        if(k10 + i5 > l + class30.anInt452)
                            k10 = (l + class30.anInt452) - i5;
                        Class31_Sub3_Sub1.method350(l3, 2, i8, 0xffffa0, k10, i5);
                        Class31_Sub3_Sub1.method351(i5, 0, 0, i8, l3, k10);
                        String s2 = class30_1.aString441;
                        for(int j11 = k10 + class31_sub3_sub1_sub4_2.anInt1522 + 2; s2.length() > 0; j11 += class31_sub3_sub1_sub4_2.anInt1522 + 1)
                        {
                            int l11 = s2.indexOf("\\n");
                            String s5;
                            if(l11 != -1)
                            {
                                s5 = s2.substring(0, l11);
                                s2 = s2.substring(l11 + 2);
                            } else
                            {
                                s5 = s2;
                                s2 = "";
                            }
                            class31_sub3_sub1_sub4_2.method403(0, s5, false, i8 + 3, aBoolean861, j11);
                        }

                    }
                }
        }

        Class31_Sub3_Sub1.method347(j1, i1, (byte)21, k1, l1);
    }

    public void run()
    {
        if(aBoolean1185)
        {
            method144(true);
            return;
        } else
        {
            super.run();
            return;
        }
    }

    public String getParameter(String s)
    {
        if(signlink.mainapp != null)
            return signlink.mainapp.getParameter(s);
        else
            return super.getParameter(s);
    }

    public void method39(int i, int j)
    {
        int k = Class21.aClass21Array286[i].anInt294;
        j = 80 / j;
        if(k == 0)
            return;
        int l = anIntArray1111[i];
        if(k == 1)
        {
            if(l == 1)
                Class31_Sub3_Sub1_Sub1.method366(-157, 0.90000000000000002D);
            if(l == 2)
                Class31_Sub3_Sub1_Sub1.method366(-157, 0.80000000000000004D);
            if(l == 3)
                Class31_Sub3_Sub1_Sub1.method366(-157, 0.69999999999999996D);
            if(l == 4)
                Class31_Sub3_Sub1_Sub1.method366(-157, 0.59999999999999998D);
            Class41.aClass36_631.method567();
            aBoolean835 = true;
        }
        if(k == 3)
        {
            boolean flag = aBoolean1214;
            if(l == 0)
            {
                method149(0, (byte)-75, aBoolean1214);
                aBoolean1214 = true;
            }
            if(l == 1)
            {
                method149(-400, (byte)-75, aBoolean1214);
                aBoolean1214 = true;
            }
            if(l == 2)
            {
                method149(-800, (byte)-75, aBoolean1214);
                aBoolean1214 = true;
            }
            if(l == 3)
            {
                method149(-1200, (byte)-75, aBoolean1214);
                aBoolean1214 = true;
            }
            if(l == 4)
                aBoolean1214 = false;
            if(aBoolean1214 != flag && !aBoolean979)
            {
                if(aBoolean1214)
                {
                    anInt1292 = anInt1072;
                    aBoolean1293 = true;
                    aClass27_Sub1_843.method320(2, anInt1292);
                } else
                {
                    method105((byte)-65);
                }
                anInt1066 = 0;
            }
        }
        if(k == 4)
        {
            if(l == 0)
            {
                aBoolean1154 = true;
                method87(0, 9);
            }
            if(l == 1)
            {
                aBoolean1154 = true;
                method87(-400, 9);
            }
            if(l == 2)
            {
                aBoolean1154 = true;
                method87(-800, 9);
            }
            if(l == 3)
            {
                aBoolean1154 = true;
                method87(-1200, 9);
            }
            if(l == 4)
                aBoolean1154 = false;
        }
        if(k == 5)
            anInt1128 = l;
        if(k == 6)
            anInt952 = l;
        if(k == 8)
        {
            anInt842 = l;
            aBoolean1289 = true;
        }
        if(k == 9)
            anInt1158 = l;
    }

    public void method40(boolean flag)
    {
        if(anInt964 > 0)
        {
            method71(-852);
            return;
        }
        method72("Please wait - attempting to reestablish", 0, "Connection lost");
        anInt1285 = 0;
        anInt982 = 0;
        if(flag)
            aClass31_Sub3_Sub2_853.method412(96);
        Class12 class12 = aClass12_1075;
        aBoolean1079 = false;
        anInt1220 = 0;
        method29(aString1211, aString1212, true);
        if(!aBoolean1079)
            method71(-852);
        try
        {
            class12.method205();
            return;
        }
        catch(Exception _ex)
        {
            return;
        }
    }

    public void method41(int i, int j, int k, int l, int i1, int j1)
    {
        aClass31_Sub3_Sub1_Sub3_879.method392(-4899, i, j);
        aClass31_Sub3_Sub1_Sub3_880.method392(-4899, i, (j + j1) - 16);
        Class31_Sub3_Sub1.method350(16, 2, i, anInt980, j + 16, j1 - 32);
        i1 = 2 / i1;
        int k1 = ((j1 - 32) * j1) / k;
        if(k1 < 8)
            k1 = 8;
        int l1 = ((j1 - 32 - k1) * l) / (k - j1);
        Class31_Sub3_Sub1.method350(16, 2, i, anInt833, j + 16 + l1, k1);
        Class31_Sub3_Sub1.method355(k1, j + 16 + l1, i, anInt1260, (byte)105);
        Class31_Sub3_Sub1.method355(k1, j + 16 + l1, i + 1, anInt1260, (byte)105);
        Class31_Sub3_Sub1.method353(16, i, 0, j + 16 + l1, anInt1260);
        Class31_Sub3_Sub1.method353(16, i, 0, j + 17 + l1, anInt1260);
        Class31_Sub3_Sub1.method355(k1, j + 16 + l1, i + 15, anInt1095, (byte)105);
        Class31_Sub3_Sub1.method355(k1 - 1, j + 17 + l1, i + 14, anInt1095, (byte)105);
        Class31_Sub3_Sub1.method353(16, i, 0, j + 15 + l1 + k1, anInt1095);
        Class31_Sub3_Sub1.method353(15, i + 1, 0, j + 14 + l1 + k1, anInt1095);
    }

    public void method42(boolean flag, byte byte0)
    {
        if(byte0 != -25)
            anInt1064 = -138;
        if(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 >> 7 == anInt982 && ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 >> 7 == anInt983)
            anInt982 = 0;
        int i = anInt969;
        if(flag)
            i = 1;
        for(int j = 0; j < i; j++)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2;
            int k;
            if(flag)
            {
                class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2_885;
                k = anInt967 << 14;
            } else
            {
                class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anIntArray970[j]];
                k = anIntArray970[j] << 14;
            }
            if(class31_sub3_sub3_sub4_sub2 == null || !class31_sub3_sub3_sub4_sub2.method496(21781))
                continue;
            class31_sub3_sub3_sub4_sub2.aBoolean1715 = false;
            if((aBoolean979 && anInt969 > 50 || anInt969 > 200) && !flag && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1661 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1647)
                class31_sub3_sub3_sub4_sub2.aBoolean1715 = true;
            int l = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 >> 7;
            int i1 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636 >> 7;
            if(l < 0 || l >= 104 || i1 < 0 || i1 >= 104)
                continue;
            if(class31_sub3_sub3_sub4_sub2.aClass31_Sub3_Sub3_Sub2_1720 != null && anInt935 >= class31_sub3_sub3_sub4_sub2.anInt1725 && anInt935 < class31_sub3_sub3_sub4_sub2.anInt1726)
            {
                class31_sub3_sub3_sub4_sub2.aBoolean1715 = false;
                class31_sub3_sub3_sub4_sub2.anInt1724 = method143(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635, 0, anInt981, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636);
                aClass34_937.method523(60, class31_sub3_sub3_sub4_sub2.anInt1733, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635, k, class31_sub3_sub3_sub4_sub2.anInt1724, anInt981, class31_sub3_sub3_sub4_sub2.anInt1732, class31_sub3_sub3_sub4_sub2, class31_sub3_sub3_sub4_sub2.anInt1735, anInt862, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1637, class31_sub3_sub3_sub4_sub2.anInt1734);
                continue;
            }
            if((((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 & 0x7f) == 64 && (((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636 & 0x7f) == 64)
            {
                if(anIntArrayArray884[l][i1] == anInt1139)
                    continue;
                anIntArrayArray884[l][i1] = anInt1139;
            }
            class31_sub3_sub3_sub4_sub2.anInt1724 = method143(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635, 0, anInt981, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636);
            aClass34_937.method522(class31_sub3_sub3_sub4_sub2, anInt981, -978, class31_sub3_sub3_sub4_sub2.anInt1724, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1637, k, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635, 60, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).aBoolean1664, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636);
        }

    }

    public void method43(int i, int j, int k, int l, int i1, int j1, int k1)
    {
        int l1 = 2048 - i1 & 0x7ff;
        int i2 = 2048 - j & 0x7ff;
        if(l != 0)
            anInt961 = -1;
        int j2 = 0;
        int k2 = 0;
        int l2 = k;
        if(l1 != 0)
        {
            int i3 = Class31_Sub3_Sub3_Sub2.anIntArray1606[l1];
            int k3 = Class31_Sub3_Sub3_Sub2.anIntArray1607[l1];
            int i4 = k2 * k3 - l2 * i3 >> 16;
            l2 = k2 * i3 + l2 * k3 >> 16;
            k2 = i4;
        }
        if(i2 != 0)
        {
            int j3 = Class31_Sub3_Sub3_Sub2.anIntArray1606[i2];
            int l3 = Class31_Sub3_Sub3_Sub2.anIntArray1607[i2];
            int j4 = l2 * j3 + j2 * l3 >> 16;
            l2 = l2 * l3 - j2 * j3 >> 16;
            j2 = j4;
        }
        anInt1201 = i - j2;
        anInt1202 = j1 - k2;
        anInt1203 = k1 - l2;
        anInt1204 = i1;
        anInt1205 = j;
    }

    public void method44(Class31_Sub3_Sub3_Sub4 class31_sub3_sub3_sub4, int i, int j)
    {
        if(i != 0)
            aClass31_Sub3_Sub2_853.method412(182);
        method45(142, class31_sub3_sub3_sub4.anInt1636, j, class31_sub3_sub3_sub4.anInt1635);
    }

    public void method45(int i, int j, int k, int l)
    {
        if(l < 128 || j < 128 || l > 13056 || j > 13056)
        {
            anInt941 = -1;
            anInt942 = -1;
            return;
        }
        int i1 = method143(l, 0, anInt981, j) - k;
        l -= anInt1201;
        i = 95 / i;
        i1 -= anInt1202;
        j -= anInt1203;
        int j1 = Class31_Sub3_Sub3_Sub2.anIntArray1606[anInt1204];
        int k1 = Class31_Sub3_Sub3_Sub2.anIntArray1607[anInt1204];
        int l1 = Class31_Sub3_Sub3_Sub2.anIntArray1606[anInt1205];
        int i2 = Class31_Sub3_Sub3_Sub2.anIntArray1607[anInt1205];
        int j2 = j * l1 + l * i2 >> 16;
        j = j * i2 - l * l1 >> 16;
        l = j2;
        j2 = i1 * k1 - j * j1 >> 16;
        j = i1 * j1 + j * k1 >> 16;
        i1 = j2;
        if(j >= 50)
        {
            anInt941 = Class31_Sub3_Sub1_Sub1.anInt1468 + (l << 9) / j;
            anInt942 = Class31_Sub3_Sub1_Sub1.anInt1469 + (i1 << 9) / j;
            return;
        } else
        {
            anInt941 = -1;
            anInt942 = -1;
            return;
        }
    }

    public void method46(byte byte0, long l)
    {
        try
        {
            if(byte0 != 5)
            {
                for(int i = 1; i > 0; i++);
            }
            if(l == 0L)
                return;
            if(anInt1161 >= 100 && anInt1184 != 1)
            {
                method66("Your friendlist is full. Max of 100 for free users, and 200 for members", "", 0, -39349);
                return;
            }
            if(anInt1161 >= 200)
            {
                method66("Your friendlist is full. Max of 100 for free users, and 200 for members", "", 0, -39349);
                return;
            }
            String s = Class26.method301(true, Class26.method298(359, l));
            for(int j = 0; j < anInt1161; j++)
                if(aLongArray1218[j] == l)
                {
                    method66(s + " is already on your friend list", "", 0, -39349);
                    return;
                }

            for(int k = 0; k < anInt998; k++)
                if(aLongArray1131[k] == l)
                {
                    method66("Please remove " + s + " from your ignore list first", "", 0, -39349);
                    return;
                }

            if(s.equals(aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729))
            {
                return;
            } else
            {
                aStringArray1000[anInt1161] = s;
                aLongArray1218[anInt1161] = l;
                anIntArray915[anInt1161] = 0;
                anInt1161++;
                aBoolean1315 = true;
                aClass31_Sub3_Sub2_853.method411(7793, 252);
                aClass31_Sub3_Sub2_853.method418(l, (byte)56);
                return;
            }
        }
        catch(RuntimeException runtimeexception)
        {
            signlink.reporterror("6421, " + byte0 + ", " + l + ", " + runtimeexception.toString());
        }
        throw new RuntimeException();
    }

    public void method47(boolean flag)
    {
        if(!flag)
            anInt961 = aClass31_Sub3_Sub2_1307.method422();
        if(anInt1285 != 0)
            return;
        if(super.anInt29 == 1)
        {
            int i = super.anInt30 - 25 - 550;
            int j = super.anInt31 - 5 - 4;
            if(i >= 0 && j >= 0 && i < 146 && j < 151)
            {
                i -= 73;
                j -= 75;
                int k = anInt820 + anInt1231 & 0x7ff;
                int i1 = Class31_Sub3_Sub1_Sub1.anIntArray1472[k];
                int j1 = Class31_Sub3_Sub1_Sub1.anIntArray1473[k];
                i1 = i1 * (anInt1290 + 256) >> 8;
                j1 = j1 * (anInt1290 + 256) >> 8;
                int k1 = j * i1 + i * j1 >> 11;
                int l1 = j * j1 - i * i1 >> 11;
                int i2 = ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 + k1 >> 7;
                int j2 = ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 - l1 >> 7;
                boolean flag1 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 1, j2, true, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, i2);
                if(flag1)
                {
                    aClass31_Sub3_Sub2_853.method412(i);
                    aClass31_Sub3_Sub2_853.method412(j);
                    aClass31_Sub3_Sub2_853.method413(anInt820);
                    aClass31_Sub3_Sub2_853.method412(57);
                    aClass31_Sub3_Sub2_853.method412(anInt1231);
                    aClass31_Sub3_Sub2_853.method412(anInt1290);
                    aClass31_Sub3_Sub2_853.method412(89);
                    aClass31_Sub3_Sub2_853.method413(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635);
                    aClass31_Sub3_Sub2_853.method413(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636);
                    aClass31_Sub3_Sub2_853.method412(anInt841);
                    aClass31_Sub3_Sub2_853.method412(63);
                }
            }
            anInt831++;
            if(anInt831 > 1719)
            {
                anInt831 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 13);
                aClass31_Sub3_Sub2_853.method412(0);
                int l = aClass31_Sub3_Sub2_853.anInt1440;
                aClass31_Sub3_Sub2_853.method413(16649);
                aClass31_Sub3_Sub2_853.method413(22579);
                aClass31_Sub3_Sub2_853.method412((int)(Math.random() * 256D));
                aClass31_Sub3_Sub2_853.method413(18261);
                aClass31_Sub3_Sub2_853.method413(22681);
                if((int)(Math.random() * 2D) == 0)
                    aClass31_Sub3_Sub2_853.method412(29);
                if((int)(Math.random() * 2D) == 0)
                    aClass31_Sub3_Sub2_853.method412(167);
                aClass31_Sub3_Sub2_853.method413(6244);
                if((int)(Math.random() * 2D) == 0)
                    aClass31_Sub3_Sub2_853.method413(30915);
                aClass31_Sub3_Sub2_853.method412(232);
                aClass31_Sub3_Sub2_853.method421(aClass31_Sub3_Sub2_853.anInt1440 - l, 8);
            }
        }
    }

    public void method48(boolean flag)
    {
        Class31_Sub3_Sub3_Sub1 class31_sub3_sub3_sub1 = (Class31_Sub3_Sub3_Sub1)aClass28_1124.method328();
        if(!flag)
            aClass31_Sub3_Sub2_853.method412(89);
        for(; class31_sub3_sub3_sub1 != null; class31_sub3_sub3_sub1 = (Class31_Sub3_Sub3_Sub1)aClass28_1124.method330(-582))
            if(class31_sub3_sub3_sub1.anInt1526 != anInt981 || class31_sub3_sub3_sub1.aBoolean1530)
                class31_sub3_sub3_sub1.method343();
            else
            if(anInt935 >= class31_sub3_sub3_sub1.anInt1534)
            {
                class31_sub3_sub3_sub1.method462(anInt877, (byte)102);
                if(class31_sub3_sub3_sub1.aBoolean1530)
                    class31_sub3_sub3_sub1.method343();
                else
                    aClass34_937.method522(class31_sub3_sub3_sub1, class31_sub3_sub3_sub1.anInt1526, -978, class31_sub3_sub3_sub1.anInt1529, 0, -1, class31_sub3_sub3_sub1.anInt1527, 60, false, class31_sub3_sub3_sub1.anInt1528);
            }

    }

    public void method49(int i)
    {
        if(i >= 0)
        {
            for(int j = 1; j > 0; j++);
        }
        if(super.anInt29 == 1)
        {
            if(super.anInt30 >= 6 && super.anInt30 <= 106 && super.anInt31 >= 467 && super.anInt31 <= 499)
            {
                anInt995 = (anInt995 + 1) % 4;
                aBoolean902 = true;
                aBoolean1289 = true;
                aClass31_Sub3_Sub2_853.method411(7793, 145);
                aClass31_Sub3_Sub2_853.method412(anInt995);
                aClass31_Sub3_Sub2_853.method412(anInt849);
                aClass31_Sub3_Sub2_853.method412(anInt837);
            }
            if(super.anInt30 >= 135 && super.anInt30 <= 235 && super.anInt31 >= 467 && super.anInt31 <= 499)
            {
                anInt849 = (anInt849 + 1) % 3;
                aBoolean902 = true;
                aBoolean1289 = true;
                aClass31_Sub3_Sub2_853.method411(7793, 145);
                aClass31_Sub3_Sub2_853.method412(anInt995);
                aClass31_Sub3_Sub2_853.method412(anInt849);
                aClass31_Sub3_Sub2_853.method412(anInt837);
            }
            if(super.anInt30 >= 273 && super.anInt30 <= 373 && super.anInt31 >= 467 && super.anInt31 <= 499)
            {
                anInt837 = (anInt837 + 1) % 3;
                aBoolean902 = true;
                aBoolean1289 = true;
                aClass31_Sub3_Sub2_853.method411(7793, 145);
                aClass31_Sub3_Sub2_853.method412(anInt995);
                aClass31_Sub3_Sub2_853.method412(anInt849);
                aClass31_Sub3_Sub2_853.method412(anInt837);
            }
            if(super.anInt30 >= 412 && super.anInt30 <= 512 && super.anInt31 >= 467 && super.anInt31 <= 499)
            {
                if(anInt1303 == -1)
                {
                    method18(0);
                    aString992 = "";
                    aBoolean1171 = false;
                    anInt1108 = anInt1303 = Class30.anInt401;
                    return;
                }
                method66("Please close the interface you have open before using 'report abuse'", "", 0, -39349);
            }
        }
    }

    public int method50(boolean flag)
    {
        if(!flag)
            aBoolean1210 = !aBoolean1210;
        int i = 3;
        if(anInt1204 < 310)
        {
            int j = anInt1201 >> 7;
            int k = anInt1203 >> 7;
            int l = ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 >> 7;
            int i1 = ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 >> 7;
            if((aByteArrayArrayArray917[anInt981][j][k] & 4) != 0)
                i = anInt981;
            int j1;
            if(l > j)
                j1 = l - j;
            else
                j1 = j - l;
            int k1;
            if(i1 > k)
                k1 = i1 - k;
            else
                k1 = k - i1;
            if(j1 > k1)
            {
                int l1 = (k1 * 0x10000) / j1;
                int j2 = 32768;
                while(j != l) 
                {
                    if(j < l)
                        j++;
                    else
                    if(j > l)
                        j--;
                    if((aByteArrayArrayArray917[anInt981][j][k] & 4) != 0)
                        i = anInt981;
                    j2 += l1;
                    if(j2 >= 0x10000)
                    {
                        j2 -= 0x10000;
                        if(k < i1)
                            k++;
                        else
                        if(k > i1)
                            k--;
                        if((aByteArrayArrayArray917[anInt981][j][k] & 4) != 0)
                            i = anInt981;
                    }
                }
            } else
            {
                int i2 = (j1 * 0x10000) / k1;
                int k2 = 32768;
                while(k != i1) 
                {
                    if(k < i1)
                        k++;
                    else
                    if(k > i1)
                        k--;
                    if((aByteArrayArrayArray917[anInt981][j][k] & 4) != 0)
                        i = anInt981;
                    k2 += i2;
                    if(k2 >= 0x10000)
                    {
                        k2 -= 0x10000;
                        if(j < l)
                            j++;
                        else
                        if(j > l)
                            j--;
                        if((aByteArrayArrayArray917[anInt981][j][k] & 4) != 0)
                            i = anInt981;
                    }
                }
            }
        }
        if((aByteArrayArrayArray917[anInt981][((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 >> 7][((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 >> 7] & 4) != 0)
            i = anInt981;
        return i;
    }

    public int method51(int i)
    {
        if(i < anInt817 || i > anInt817)
            return 0;
        int j = method143(anInt1201, 0, anInt981, anInt1203);
        if(j - anInt1202 < 800 && (aByteArrayArrayArray917[anInt981][anInt1201 >> 7][anInt1203 >> 7] & 4) != 0)
            return anInt981;
        else
            return 3;
    }

    public static void method52(byte byte0)
    {
        Class34.aBoolean494 = true;
        Class31_Sub3_Sub1_Sub1.aBoolean1463 = true;
        if(byte0 != aByte991)
            aBoolean1229 = !aBoolean1229;
        aBoolean979 = true;
        Class9.aBoolean168 = true;
        Class22.aBoolean309 = true;
    }

    public void method53(int i, int j, int k, int l, Class30 class30, int i1, int j1, 
            int k1)
    {
        if(class30.anInt435 != 0 || class30.anIntArray405 == null || class30.aBoolean462)
            return;
        if(k < i1 || k1 < j1 || k > i1 + class30.anInt455 || k1 > j1 + class30.anInt452)
            return;
        int l1 = class30.anIntArray405.length;
        for(int i2 = 0; i2 < l1; i2++)
        {
            int j2 = class30.anIntArray453[i2] + i1;
            int k2 = (class30.anIntArray456[i2] + j1) - i;
            Class30 class30_1 = Class30.method339(class30.anIntArray405[i2]);
            j2 += class30_1.anInt439;
            k2 += class30_1.anInt425;
            if((class30_1.anInt446 >= 0 || class30_1.anInt403 != 0) && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                if(class30_1.anInt446 >= 0)
                    anInt1272 = class30_1.anInt446;
                else
                    anInt1272 = class30_1.anInt459;
            if(class30_1.anInt435 == 8 && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                anInt919 = class30_1.anInt459;
            if(class30_1.anInt435 == 0)
            {
                method53(class30_1.anInt460, j, k, 0, class30_1, j2, k2, k1);
                if(class30_1.anInt434 > class30_1.anInt452)
                    method121(k1, k, class30_1, class30_1.anInt434, class30_1.anInt452, (byte)110, j, j2 + class30_1.anInt455, k2);
            } else
            {
                if(class30_1.anInt469 == 1 && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                {
                    boolean flag = false;
                    if(class30_1.anInt399 != 0)
                        flag = method99(46001, class30_1);
                    if(!flag)
                    {
                        aStringArray1208[anInt878] = class30_1.aString420;
                        anIntArray1017[anInt878] = 496;
                        anIntArray1016[anInt878] = class30_1.anInt459;
                        anInt878++;
                    }
                }
                if(class30_1.anInt469 == 2 && anInt948 == 0 && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                {
                    String s = class30_1.aString413;
                    if(s.indexOf(" ") != -1)
                        s = s.substring(0, s.indexOf(" "));
                    aStringArray1208[anInt878] = s + " @gre@" + class30_1.aString395;
                    anIntArray1017[anInt878] = 619;
                    anIntArray1016[anInt878] = class30_1.anInt459;
                    anInt878++;
                }
                if(class30_1.anInt469 == 3 && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                {
                    aStringArray1208[anInt878] = "Close";
                    if(j == 3)
                        anIntArray1017[anInt878] = 895;
                    else
                        anIntArray1017[anInt878] = 1;
                    anIntArray1016[anInt878] = class30_1.anInt459;
                    anInt878++;
                }
                if(class30_1.anInt469 == 4 && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                {
                    aStringArray1208[anInt878] = class30_1.aString420;
                    anIntArray1017[anInt878] = 652;
                    anIntArray1016[anInt878] = class30_1.anInt459;
                    anInt878++;
                }
                if(class30_1.anInt469 == 5 && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                {
                    aStringArray1208[anInt878] = class30_1.aString420;
                    anIntArray1017[anInt878] = 915;
                    anIntArray1016[anInt878] = class30_1.anInt459;
                    anInt878++;
                }
                if(class30_1.anInt469 == 6 && !aBoolean1052 && k >= j2 && k1 >= k2 && k < j2 + class30_1.anInt455 && k1 < k2 + class30_1.anInt452)
                {
                    aStringArray1208[anInt878] = class30_1.aString420;
                    anIntArray1017[anInt878] = 43;
                    anIntArray1016[anInt878] = class30_1.anInt459;
                    anInt878++;
                }
                if(class30_1.anInt435 == 2)
                {
                    int l2 = 0;
                    for(int i3 = 0; i3 < class30_1.anInt452; i3++)
                    {
                        for(int j3 = 0; j3 < class30_1.anInt455; j3++)
                        {
                            int k3 = j2 + j3 * (32 + class30_1.anInt461);
                            int l3 = k2 + i3 * (32 + class30_1.anInt417);
                            if(l2 < 20)
                            {
                                k3 += class30_1.anIntArray450[l2];
                                l3 += class30_1.anIntArray463[l2];
                            }
                            if(k >= k3 && k1 >= l3 && k < k3 + 32 && k1 < l3 + 32)
                            {
                                anInt1035 = l2;
                                anInt1036 = class30_1.anInt459;
                                if(class30_1.anIntArray406[l2] > 0)
                                {
                                    Class41 class41 = Class41.method577(class30_1.anIntArray406[l2] - 1);
                                    if(anInt943 == 1 && class30_1.aBoolean438)
                                    {
                                        if(class30_1.anInt459 != anInt945 || l2 != anInt944)
                                        {
                                            aStringArray1208[anInt878] = "Use " + aString947 + " with @lre@" + class41.aString650;
                                            anIntArray1017[anInt878] = 402;
                                            anIntArray1018[anInt878] = class41.anInt615;
                                            anIntArray1015[anInt878] = l2;
                                            anIntArray1016[anInt878] = class30_1.anInt459;
                                            anInt878++;
                                        }
                                    } else
                                    if(anInt948 == 1 && class30_1.aBoolean438)
                                    {
                                        if((anInt950 & 0x10) == 16)
                                        {
                                            aStringArray1208[anInt878] = aString951 + " @lre@" + class41.aString650;
                                            anIntArray1017[anInt878] = 987;
                                            anIntArray1018[anInt878] = class41.anInt615;
                                            anIntArray1015[anInt878] = l2;
                                            anIntArray1016[anInt878] = class30_1.anInt459;
                                            anInt878++;
                                        }
                                    } else
                                    {
                                        if(class30_1.aBoolean438)
                                        {
                                            for(int i4 = 4; i4 >= 3; i4--)
                                                if(class41.aStringArray618 != null && class41.aStringArray618[i4] != null)
                                                {
                                                    aStringArray1208[anInt878] = class41.aStringArray618[i4] + " @lre@" + class41.aString650;
                                                    if(i4 == 3)
                                                        anIntArray1017[anInt878] = 273;
                                                    if(i4 == 4)
                                                        anIntArray1017[anInt878] = 377;
                                                    anIntArray1018[anInt878] = class41.anInt615;
                                                    anIntArray1015[anInt878] = l2;
                                                    anIntArray1016[anInt878] = class30_1.anInt459;
                                                    anInt878++;
                                                } else
                                                if(i4 == 4)
                                                {
                                                    aStringArray1208[anInt878] = "Drop @lre@" + class41.aString650;
                                                    anIntArray1017[anInt878] = 377;
                                                    anIntArray1018[anInt878] = class41.anInt615;
                                                    anIntArray1015[anInt878] = l2;
                                                    anIntArray1016[anInt878] = class30_1.anInt459;
                                                    anInt878++;
                                                }

                                        }
                                        if(class30_1.aBoolean431)
                                        {
                                            aStringArray1208[anInt878] = "Use @lre@" + class41.aString650;
                                            anIntArray1017[anInt878] = 138;
                                            anIntArray1018[anInt878] = class41.anInt615;
                                            anIntArray1015[anInt878] = l2;
                                            anIntArray1016[anInt878] = class30_1.anInt459;
                                            anInt878++;
                                        }
                                        if(class30_1.aBoolean438 && class41.aStringArray618 != null)
                                        {
                                            for(int j4 = 2; j4 >= 0; j4--)
                                                if(class41.aStringArray618[j4] != null)
                                                {
                                                    aStringArray1208[anInt878] = class41.aStringArray618[j4] + " @lre@" + class41.aString650;
                                                    if(j4 == 0)
                                                        anIntArray1017[anInt878] = 495;
                                                    if(j4 == 1)
                                                        anIntArray1017[anInt878] = 220;
                                                    if(j4 == 2)
                                                        anIntArray1017[anInt878] = 34;
                                                    anIntArray1018[anInt878] = class41.anInt615;
                                                    anIntArray1015[anInt878] = l2;
                                                    anIntArray1016[anInt878] = class30_1.anInt459;
                                                    anInt878++;
                                                }

                                        }
                                        if(class30_1.aStringArray400 != null)
                                        {
                                            for(int k4 = 4; k4 >= 0; k4--)
                                                if(class30_1.aStringArray400[k4] != null)
                                                {
                                                    aStringArray1208[anInt878] = class30_1.aStringArray400[k4] + " @lre@" + class41.aString650;
                                                    if(k4 == 0)
                                                        anIntArray1017[anInt878] = 971;
                                                    if(k4 == 1)
                                                        anIntArray1017[anInt878] = 364;
                                                    if(k4 == 2)
                                                        anIntArray1017[anInt878] = 855;
                                                    if(k4 == 3)
                                                        anIntArray1017[anInt878] = 817;
                                                    if(k4 == 4)
                                                        anIntArray1017[anInt878] = 168;
                                                    anIntArray1018[anInt878] = class41.anInt615;
                                                    anIntArray1015[anInt878] = l2;
                                                    anIntArray1016[anInt878] = class30_1.anInt459;
                                                    anInt878++;
                                                }

                                        }
                                        aStringArray1208[anInt878] = "Examine @lre@" + class41.aString650;
                                        anIntArray1017[anInt878] = 1759;
                                        anIntArray1018[anInt878] = class41.anInt615;
                                        anIntArray1015[anInt878] = l2;
                                        anIntArray1016[anInt878] = class30_1.anInt459;
                                        anInt878++;
                                    }
                                }
                            }
                            l2++;
                        }

                    }

                }
            }
        }

        if(l != 0)
            anInt961 = aClass31_Sub3_Sub2_1307.method422();
    }

    public void init()
    {
        anInt976 = Integer.parseInt(getParameter("nodeid"));
        anInt977 = Integer.parseInt(getParameter("portoff"));
        String s = getParameter("lowmem");
        if(s != null && s.equals("1"))
            method52(aByte1112);
        else
            method93(0);
        String s1 = getParameter("free");
        if(s1 != null && s1.equals("1"))
            aBoolean978 = false;
        else
            aBoolean978 = true;
        method2(503, (byte)5, 765);
    }

    public void method13(int i, String s, int j)
    {
        anInt838 = i;
        aString1061 = s;
        if(j >= 0)
            method6();
        method32(true);
        if(aClass11_1261 == null)
        {
            super.method13(i, s, -71);
            return;
        }
        aClass15_1004.method213(0);
        char c = '\u0168';
        char c1 = '\310';
        byte byte0 = 20;
        aClass31_Sub3_Sub1_Sub4_1236.method395(0xffffff, c / 2, c1 / 2 - 26 - byte0, "RuneScape is loading - please wait...", (byte)119);
        int k = c1 / 2 - 18 - byte0;
        Class31_Sub3_Sub1.method351(34, 0x8c1111, 0, c / 2 - 152, 304, k);
        Class31_Sub3_Sub1.method351(32, 0, 0, c / 2 - 151, 302, k + 1);
        Class31_Sub3_Sub1.method350(i * 3, 2, c / 2 - 150, 0x8c1111, k + 2, 30);
        Class31_Sub3_Sub1.method350(300 - i * 3, 2, (c / 2 - 150) + i * 3, 0, k + 2, 30);
        aClass31_Sub3_Sub1_Sub4_1236.method395(0xffffff, c / 2, (c1 / 2 + 5) - byte0, s, (byte)119);
        aClass15_1004.method214(super.aGraphics15, 202, 0, 171);
        if(aBoolean835)
        {
            aBoolean835 = false;
            if(!aBoolean1067)
            {
                aClass15_1005.method214(super.aGraphics15, 0, 0, 0);
                aClass15_1006.method214(super.aGraphics15, 637, 0, 0);
            }
            aClass15_1002.method214(super.aGraphics15, 128, 0, 0);
            aClass15_1003.method214(super.aGraphics15, 202, 0, 371);
            aClass15_1007.method214(super.aGraphics15, 0, 0, 265);
            aClass15_1008.method214(super.aGraphics15, 562, 0, 265);
            aClass15_1009.method214(super.aGraphics15, 128, 0, 171);
            aClass15_1010.method214(super.aGraphics15, 562, 0, 171);
        }
    }

    public void method54(boolean flag)
    {
        aClass15_1227.method213(0);
        Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1277;
        aClass31_Sub3_Sub1_Sub3_1174.method392(-4899, 0, 0);
        if(aBoolean829)
        {
            aClass31_Sub3_Sub1_Sub4_1236.method395(0, 239, 40, aString1065, (byte)119);
            aClass31_Sub3_Sub1_Sub4_1236.method395(128, 239, 60, aString1069 + "*", (byte)119);
        } else
        if(anInt823 == 1)
        {
            aClass31_Sub3_Sub1_Sub4_1236.method395(0, 239, 40, "Enter amount:", (byte)119);
            aClass31_Sub3_Sub1_Sub4_1236.method395(128, 239, 60, aString1199 + "*", (byte)119);
        } else
        if(anInt823 == 2)
        {
            aClass31_Sub3_Sub1_Sub4_1236.method395(0, 239, 40, "Enter name:", (byte)119);
            aClass31_Sub3_Sub1_Sub4_1236.method395(128, 239, 60, aString1199 + "*", (byte)119);
        } else
        if(anInt823 == 3)
        {
            if(aString1199 != aString824)
            {
                method137(aString1199, true);
                aString824 = aString1199;
            }
            Class31_Sub3_Sub1_Sub4 class31_sub3_sub1_sub4 = aClass31_Sub3_Sub1_Sub4_1235;
            Class31_Sub3_Sub1.method347(0, 0, (byte)21, 463, 77);
            for(int i = 0; i < anInt825; i++)
            {
                int k = (18 + i * 14) - anInt828;
                if(k > 0 && k < 110)
                    class31_sub3_sub1_sub4.method395(0, 239, k, aStringArray826[i], (byte)119);
            }

            Class31_Sub3_Sub1.method346(632);
            if(anInt825 > 5)
                method41(463, 0, anInt825 * 14 + 7, anInt828, 227, 77);
            if(aString1199.length() == 0)
                aClass31_Sub3_Sub1_Sub4_1236.method395(255, 239, 40, "Enter object name", (byte)119);
            else
            if(anInt825 == 0)
                aClass31_Sub3_Sub1_Sub4_1236.method395(0, 239, 40, "No matching objects found, please shorten search", (byte)119);
            class31_sub3_sub1_sub4.method395(0, 239, 90, aString1199 + "*", (byte)119);
            Class31_Sub3_Sub1.method353(479, 0, 0, 77, 0);
        } else
        if(aString892 != null)
        {
            aClass31_Sub3_Sub1_Sub4_1236.method395(0, 239, 40, aString892, (byte)119);
            aClass31_Sub3_Sub1_Sub4_1236.method395(128, 239, 60, "Click to continue", (byte)119);
        } else
        if(anInt1129 != -1)
            method38(0, 0, Class30.method339(anInt1129), -545, 0);
        else
        if(anInt899 != -1)
        {
            method38(0, 0, Class30.method339(anInt899), -545, 0);
        } else
        {
            Class31_Sub3_Sub1_Sub4 class31_sub3_sub1_sub4_1 = aClass31_Sub3_Sub1_Sub4_1235;
            int j = 0;
            Class31_Sub3_Sub1.method347(0, 0, (byte)21, 463, 77);
            for(int l = 0; l < 100; l++)
                if(aStringArray1107[l] != null)
                {
                    int i1 = anIntArray1105[l];
                    int j1 = (70 - j * 14) + anInt1119;
                    String s1 = aStringArray1106[l];
                    byte byte0 = 0;
                    if(s1 != null && s1.startsWith("@cr1@"))
                    {
                        s1 = s1.substring(5);
                        byte0 = 1;
                    }
                    if(s1 != null && s1.startsWith("@cr2@"))
                    {
                        s1 = s1.substring(5);
                        byte0 = 2;
                    }
                    if(i1 == 0)
                    {
                        if(j1 > 0 && j1 < 110)
                            class31_sub3_sub1_sub4_1.method399(aStringArray1107[l], j1, 4, 0, -32001);
                        j++;
                    }
                    if((i1 == 1 || i1 == 2) && (i1 == 1 || anInt995 == 0 || anInt995 == 1 && method16(s1, (byte)9)))
                    {
                        if(j1 > 0 && j1 < 110)
                        {
                            int k1 = 4;
                            if(byte0 == 1)
                            {
                                aClass31_Sub3_Sub1_Sub3Array1115[0].method392(-4899, k1, j1 - 12);
                                k1 += 14;
                            }
                            if(byte0 == 2)
                            {
                                aClass31_Sub3_Sub1_Sub3Array1115[1].method392(-4899, k1, j1 - 12);
                                k1 += 14;
                            }
                            class31_sub3_sub1_sub4_1.method399(s1 + ":", j1, k1, 0, -32001);
                            k1 += class31_sub3_sub1_sub4_1.method397(s1, aByte1304) + 8;
                            class31_sub3_sub1_sub4_1.method399(aStringArray1107[l], j1, k1, 255, -32001);
                        }
                        j++;
                    }
                    if((i1 == 3 || i1 == 7) && anInt842 == 0 && (i1 == 7 || anInt849 == 0 || anInt849 == 1 && method16(s1, (byte)9)))
                    {
                        if(j1 > 0 && j1 < 110)
                        {
                            int l1 = 4;
                            class31_sub3_sub1_sub4_1.method399("From", j1, l1, 0, -32001);
                            l1 += class31_sub3_sub1_sub4_1.method397("From ", aByte1304);
                            if(byte0 == 1)
                            {
                                aClass31_Sub3_Sub1_Sub3Array1115[0].method392(-4899, l1, j1 - 12);
                                l1 += 14;
                            }
                            if(byte0 == 2)
                            {
                                aClass31_Sub3_Sub1_Sub3Array1115[1].method392(-4899, l1, j1 - 12);
                                l1 += 14;
                            }
                            class31_sub3_sub1_sub4_1.method399(s1 + ":", j1, l1, 0, -32001);
                            l1 += class31_sub3_sub1_sub4_1.method397(s1, aByte1304) + 8;
                            class31_sub3_sub1_sub4_1.method399(aStringArray1107[l], j1, l1, 0x800000, -32001);
                        }
                        j++;
                    }
                    if(i1 == 4 && (anInt837 == 0 || anInt837 == 1 && method16(s1, (byte)9)))
                    {
                        if(j1 > 0 && j1 < 110)
                            class31_sub3_sub1_sub4_1.method399(s1 + " " + aStringArray1107[l], j1, 4, 0x800080, -32001);
                        j++;
                    }
                    if(i1 == 5 && anInt842 == 0 && anInt849 < 2)
                    {
                        if(j1 > 0 && j1 < 110)
                            class31_sub3_sub1_sub4_1.method399(aStringArray1107[l], j1, 4, 0x800000, -32001);
                        j++;
                    }
                    if(i1 == 6 && anInt842 == 0 && anInt849 < 2)
                    {
                        if(j1 > 0 && j1 < 110)
                        {
                            class31_sub3_sub1_sub4_1.method399("To " + s1 + ":", j1, 4, 0, -32001);
                            class31_sub3_sub1_sub4_1.method399(aStringArray1107[l], j1, 12 + class31_sub3_sub1_sub4_1.method397("To " + s1, aByte1304), 0x800000, -32001);
                        }
                        j++;
                    }
                    if(i1 == 8 && (anInt837 == 0 || anInt837 == 1 && method16(s1, (byte)9)))
                    {
                        if(j1 > 0 && j1 < 110)
                            class31_sub3_sub1_sub4_1.method399(s1 + " " + aStringArray1107[l], j1, 4, 0x7e3200, -32001);
                        j++;
                    }
                }

            Class31_Sub3_Sub1.method346(632);
            anInt1121 = j * 14 + 7;
            if(anInt1121 < 78)
                anInt1121 = 78;
            method41(463, 0, anInt1121, anInt1121 - anInt1119 - 77, 227, 77);
            String s;
            if(aClass31_Sub3_Sub3_Sub4_Sub2_885 != null && aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729 != null)
                s = aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729;
            else
                s = Class26.method301(true, aString1211);
            class31_sub3_sub1_sub4_1.method399(s + ":", 90, 4, 0, -32001);
            class31_sub3_sub1_sub4_1.method399(aString1168 + "*", 90, 6 + class31_sub3_sub1_sub4_1.method397(s + ": ", aByte1304), 255, -32001);
            Class31_Sub3_Sub1.method353(479, 0, 0, 77, 0);
        }
        if(aBoolean1268 && anInt923 == 2)
            method139(614);
        aClass15_1227.method214(super.aGraphics15, 17, 0, 357);
        if(flag)
            aClass28ArrayArrayArray996 = null;
        aClass15_1226.method213(0);
        Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
    }

    public void method55(boolean flag)
    {
        for(int i = -1; i < anInt969; i++)
        {
            int j;
            if(i == -1)
                j = anInt967;
            else
                j = anIntArray970[i];
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j];
            if(class31_sub3_sub3_sub4_sub2 != null && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1651 > 0)
            {
                class31_sub3_sub3_sub4_sub2.anInt1651--;
                if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1651 == 0)
                    class31_sub3_sub3_sub4_sub2.aString1665 = null;
            }
        }

        for(int k = 0; k < anInt1102; k++)
        {
            int l = anIntArray1103[k];
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[l];
            if(class31_sub3_sub3_sub4_sub1 != null && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1651 > 0)
            {
                class31_sub3_sub3_sub4_sub1.anInt1651--;
                if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1651 == 0)
                    class31_sub3_sub3_sub4_sub1.aString1665 = null;
            }
        }

        if(flag)
            anInt1144 = aClass24_993.method288();
    }

    public void method56(int i)
    {
        if(anInt1167 > 1)
            anInt1167--;
        if(anInt964 > 0)
            anInt964--;
        for(int j = 0; j < 5; j++)
            if(!method82(-37766))
                break;

        while(i >= 0) 
            return;
        if(!aBoolean1079)
            return;
        synchronized(aClass10_1200.anObject195)
        {
            if(aBoolean1256)
            {
                if(super.anInt29 != 0 || aClass10_1200.anInt192 >= 40)
                {
                    aClass31_Sub3_Sub2_853.method411(7793, 212);
                    aClass31_Sub3_Sub2_853.method412(0);
                    int j2 = aClass31_Sub3_Sub2_853.anInt1440;
                    int j3 = 0;
                    for(int j4 = 0; j4 < aClass10_1200.anInt192; j4++)
                    {
                        if(j2 - aClass31_Sub3_Sub2_853.anInt1440 >= 240)
                            break;
                        j3++;
                        int l4 = aClass10_1200.anIntArray190[j4];
                        if(l4 < 0)
                            l4 = 0;
                        else
                        if(l4 > 502)
                            l4 = 502;
                        int k5 = aClass10_1200.anIntArray194[j4];
                        if(k5 < 0)
                            k5 = 0;
                        else
                        if(k5 > 764)
                            k5 = 764;
                        int i6 = l4 * 765 + k5;
                        if(aClass10_1200.anIntArray190[j4] == -1 && aClass10_1200.anIntArray194[j4] == -1)
                        {
                            k5 = -1;
                            l4 = -1;
                            i6 = 0x7ffff;
                        }
                        if(k5 == anInt974 && l4 == anInt975)
                        {
                            if(anInt1262 < 2047)
                                anInt1262++;
                        } else
                        {
                            int j6 = k5 - anInt974;
                            anInt974 = k5;
                            int k6 = l4 - anInt975;
                            anInt975 = l4;
                            if(anInt1262 < 8 && j6 >= -32 && j6 <= 31 && k6 >= -32 && k6 <= 31)
                            {
                                j6 += 32;
                                k6 += 32;
                                aClass31_Sub3_Sub2_853.method413((anInt1262 << 12) + (j6 << 6) + k6);
                                anInt1262 = 0;
                            } else
                            if(anInt1262 < 8)
                            {
                                aClass31_Sub3_Sub2_853.method415(0x800000 + (anInt1262 << 19) + i6);
                                anInt1262 = 0;
                            } else
                            {
                                aClass31_Sub3_Sub2_853.method416(0xc0000000 + (anInt1262 << 19) + i6);
                                anInt1262 = 0;
                            }
                        }
                    }

                    aClass31_Sub3_Sub2_853.method421(aClass31_Sub3_Sub2_853.anInt1440 - j2, 8);
                    if(j3 >= aClass10_1200.anInt192)
                    {
                        aClass10_1200.anInt192 = 0;
                    } else
                    {
                        aClass10_1200.anInt192 -= j3;
                        for(int i5 = 0; i5 < aClass10_1200.anInt192; i5++)
                        {
                            aClass10_1200.anIntArray194[i5] = aClass10_1200.anIntArray194[i5 + j3];
                            aClass10_1200.anIntArray190[i5] = aClass10_1200.anIntArray190[i5 + j3];
                        }

                    }
                }
            } else
            {
                aClass10_1200.anInt192 = 0;
            }
        }
        if(super.anInt29 != 0)
        {
            long l = (super.aLong32 - aLong1071) / 50L;
            if(l > 4095L)
                l = 4095L;
            aLong1071 = super.aLong32;
            int k2 = super.anInt31;
            if(k2 < 0)
                k2 = 0;
            else
            if(k2 > 502)
                k2 = 502;
            int k3 = super.anInt30;
            if(k3 < 0)
                k3 = 0;
            else
            if(k3 > 764)
                k3 = 764;
            int k4 = k2 * 765 + k3;
            int j5 = 0;
            if(super.anInt29 == 2)
                j5 = 1;
            int l5 = (int)l;
            aClass31_Sub3_Sub2_853.method411(7793, 41);
            aClass31_Sub3_Sub2_853.method454((l5 << 20) + (j5 << 19) + k4, (byte)2);
        }
        if(anInt1092 > 0)
            anInt1092--;
        if(super.anIntArray33[1] == 1 || super.anIntArray33[2] == 1 || super.anIntArray33[3] == 1 || super.anIntArray33[4] == 1)
            aBoolean1093 = true;
        if(aBoolean1093 && anInt1092 <= 0)
        {
            anInt1092 = 20;
            aBoolean1093 = false;
            aClass31_Sub3_Sub2_853.method411(7793, 81);
            aClass31_Sub3_Sub2_853.method445(anInt820, false);
            aClass31_Sub3_Sub2_853.method446(anInt819, (byte)1);
        }
        if(super.aBoolean20 && !aBoolean910)
        {
            aBoolean910 = true;
            aClass31_Sub3_Sub2_853.method411(7793, 46);
            aClass31_Sub3_Sub2_853.method412(1);
        }
        if(!super.aBoolean20 && aBoolean910)
        {
            aBoolean910 = false;
            aClass31_Sub3_Sub2_853.method411(7793, 46);
            aClass31_Sub3_Sub2_853.method412(0);
        }
        method88(0);
        method34(493);
        method78((byte)58);
        anInt962++;
        if(anInt962 > 750)
            method40(false);
        method129(2);
        method21(true);
        method55(aBoolean934);
        anInt877++;
        if(anInt847 != 0)
        {
            anInt846 += 20;
            if(anInt846 >= 400)
                anInt847 = 0;
        }
        if(anInt1048 != 0)
        {
            anInt1045++;
            if(anInt1045 >= 15)
            {
                if(anInt1048 == 2)
                    aBoolean1315 = true;
                if(anInt1048 == 3)
                    aBoolean1289 = true;
                anInt1048 = 0;
            }
        }
        if(anInt1311 != 0)
        {
            anInt1170++;
            if(super.anInt23 > anInt1312 + 5 || super.anInt23 < anInt1312 - 5 || super.anInt24 > anInt1313 + 5 || super.anInt24 < anInt1313 - 5)
                aBoolean933 = true;
            if(super.anInt22 == 0)
            {
                if(anInt1311 == 2)
                    aBoolean1315 = true;
                if(anInt1311 == 3)
                    aBoolean1289 = true;
                anInt1311 = 0;
                if(aBoolean933 && anInt1170 >= 5)
                {
                    anInt1036 = -1;
                    method119(-597);
                    if(anInt1036 == anInt1309 && anInt1035 != anInt1310)
                    {
                        Class30 class30 = Class30.method339(anInt1309);
                        int j1 = 0;
                        if(anInt1158 == 1 && class30.anInt399 == 206)
                            j1 = 1;
                        if(class30.anIntArray406[anInt1035] <= 0)
                            j1 = 0;
                        if(class30.aBoolean447)
                        {
                            int l2 = anInt1310;
                            int l3 = anInt1035;
                            class30.anIntArray406[l3] = class30.anIntArray406[l2];
                            class30.anIntArray411[l3] = class30.anIntArray411[l2];
                            class30.anIntArray406[l2] = -1;
                            class30.anIntArray411[l2] = 0;
                        } else
                        if(j1 == 1)
                        {
                            int i3 = anInt1310;
                            for(int i4 = anInt1035; i3 != i4;)
                                if(i3 > i4)
                                {
                                    class30.method338(true, i3 - 1, i3);
                                    i3--;
                                } else
                                if(i3 < i4)
                                {
                                    class30.method338(true, i3 + 1, i3);
                                    i3++;
                                }

                        } else
                        {
                            class30.method338(true, anInt1035, anInt1310);
                        }
                        aClass31_Sub3_Sub2_853.method411(7793, 198);
                        aClass31_Sub3_Sub2_853.method446(anInt1309, (byte)1);
                        aClass31_Sub3_Sub2_853.method438(0, j1);
                        aClass31_Sub3_Sub2_853.method413(anInt1035);
                        aClass31_Sub3_Sub2_853.method413(anInt1310);
                    }
                } else
                if((anInt1128 == 1 || method112(false, anInt878 - 1)) && anInt878 > 2)
                    method58(3);
                else
                if(anInt878 > 0)
                    method85(anInt878 - 1, 413);
                anInt1045 = 10;
                super.anInt29 = 0;
            }
        }
        if(Class34.anInt528 != -1)
        {
            int k = Class34.anInt528;
            int k1 = Class34.anInt529;
            boolean flag = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 0, k1, true, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            Class34.anInt528 = -1;
            if(flag)
            {
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 1;
                anInt846 = 0;
            }
        }
        if(super.anInt29 == 1 && aString892 != null)
        {
            aString892 = null;
            aBoolean1289 = true;
            super.anInt29 = 0;
        }
        method131(11405);
        if(anInt900 == -1)
        {
            method47(true);
            method37(-346);
            method49(anInt1064);
        }
        if(super.anInt22 == 1 || super.anInt29 == 1)
            anInt965++;
        if(anInt1247 != 0 || anInt1096 != 0 || anInt1088 != 0)
        {
            if(anInt881 < 100)
            {
                anInt881++;
                if(anInt881 == 100)
                {
                    if(anInt1247 != 0)
                        aBoolean1289 = true;
                    if(anInt1096 != 0)
                        aBoolean1315 = true;
                }
            }
        } else
        if(anInt881 > 0)
            anInt881--;
        if(anInt1051 == 2)
            method146(438);
        if(anInt1051 == 2 && aBoolean1127)
            method136(true);
        for(int i1 = 0; i1 < 5; i1++)
            anIntArray1089[i1]++;

        method132(-979);
        super.anInt21++;
        if(super.anInt21 > 4500)
        {
            anInt964 = 250;
            super.anInt21 -= 500;
            aClass31_Sub3_Sub2_853.method411(7793, 51);
        }
        anInt1246++;
        if(anInt1246 > 500)
        {
            anInt1246 = 0;
            int l1 = (int)(Math.random() * 8D);
            if((l1 & 1) == 1)
                anInt874 += anInt875;
            if((l1 & 2) == 2)
                anInt1030 += anInt1031;
            if((l1 & 4) == 4)
                anInt1019 += anInt1020;
        }
        if(anInt874 < -50)
            anInt875 = 2;
        if(anInt874 > 50)
            anInt875 = -2;
        if(anInt1030 < -55)
            anInt1031 = 2;
        if(anInt1030 > 55)
            anInt1031 = -2;
        if(anInt1019 < -40)
            anInt1020 = 1;
        if(anInt1019 > 40)
            anInt1020 = -1;
        anInt834++;
        if(anInt834 > 500)
        {
            anInt834 = 0;
            int i2 = (int)(Math.random() * 8D);
            if((i2 & 1) == 1)
                anInt1231 += anInt1232;
            if((i2 & 2) == 2)
                anInt1290 += anInt1291;
        }
        if(anInt1231 < -60)
            anInt1232 = 2;
        if(anInt1231 > 60)
            anInt1232 = -2;
        if(anInt1290 < -20)
            anInt1291 = 1;
        if(anInt1290 > 10)
            anInt1291 = -1;
        anInt963++;
        if(anInt963 > 50)
            aClass31_Sub3_Sub2_853.method411(7793, 100);
        try
        {
            if(aClass12_1075 != null && aClass31_Sub3_Sub2_853.anInt1440 > 0)
            {
                aClass12_1075.method209(0, false, aClass31_Sub3_Sub2_853.aByteArray1439, aClass31_Sub3_Sub2_853.anInt1440);
                aClass31_Sub3_Sub2_853.anInt1440 = 0;
                anInt963 = 0;
                return;
            }
        }
        catch(IOException _ex)
        {
            method40(false);
            return;
        }
        catch(Exception exception)
        {
            method71(-852);
        }
    }

    public void method57(int i)
    {
        try
        {
            anInt1049 = -1;
            aClass28_1124.method332();
            aClass28_1080.method332();
            anInt1055++;
            if(anInt1055 > 62)
            {
                anInt1055 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 69);
            }
            Class31_Sub3_Sub1_Sub1.method360((byte)2);
            method68(aByte876);
            aClass34_937.method511((byte)-70);
            System.gc();
            for(int j = 0; j < 4; j++)
                aClass4Array1281[j].method160();

            for(int i1 = 0; i1 < 4; i1++)
            {
                for(int l1 = 0; l1 < 104; l1++)
                {
                    for(int k2 = 0; k2 < 104; k2++)
                        aByteArrayArrayArray917[i1][l1][k2] = 0;

                }

            }

            Class9 class9 = new Class9(aByteArrayArrayArray917, 104, anIntArrayArrayArray848, 104, anInt1116);
            int l2 = aByteArrayArray1142.length;
            aClass31_Sub3_Sub2_853.method411(7793, 100);
            if(!aBoolean1068)
            {
                for(int j3 = 0; j3 < l2; j3++)
                {
                    int j4 = (anIntArray1282[j3] >> 8) * 64 - anInt929;
                    int l5 = (anIntArray1282[j3] & 0xff) * 64 - anInt930;
                    byte abyte0[] = aByteArrayArray1142[j3];
                    if(abyte0 != null)
                        class9.method199((anInt1123 - 6) * 8, l5, aClass4Array1281, (anInt1122 - 6) * 8, j4, 28908, abyte0);
                }

                for(int k4 = 0; k4 < l2; k4++)
                {
                    int i6 = (anIntArray1282[k4] >> 8) * 64 - anInt929;
                    int l7 = (anIntArray1282[k4] & 0xff) * 64 - anInt930;
                    byte abyte2[] = aByteArrayArray1142[k4];
                    if(abyte2 == null && anInt1123 < 800)
                        class9.method198(anInt1302, 64, i6, 64, l7);
                }

                aClass31_Sub3_Sub2_853.method411(7793, 100);
                for(int j6 = 0; j6 < l2; j6++)
                {
                    byte abyte1[] = aByteArrayArray1248[j6];
                    if(abyte1 != null)
                    {
                        int l8 = (anIntArray1282[j6] >> 8) * 64 - anInt929;
                        int k9 = (anIntArray1282[j6] & 0xff) * 64 - anInt930;
                        class9.method195(l8, aBoolean1186, k9, aClass34_937, abyte1, aClass4Array1281);
                    }
                }

            }
            if(aBoolean1068)
            {
                for(int k3 = 0; k3 < 4; k3++)
                {
                    for(int l4 = 0; l4 < 13; l4++)
                    {
                        for(int k6 = 0; k6 < 13; k6++)
                        {
                            boolean flag = false;
                            int i9 = anIntArrayArrayArray1258[k3][l4][k6];
                            if(i9 != -1)
                            {
                                int l9 = i9 >> 24 & 3;
                                int j10 = i9 >> 1 & 3;
                                int l10 = i9 >> 14 & 0x3ff;
                                int j11 = i9 >> 3 & 0x7ff;
                                int l11 = (l10 / 8 << 8) + j11 / 8;
                                for(int j12 = 0; j12 < anIntArray1282.length; j12++)
                                {
                                    if(anIntArray1282[j12] != l11 || aByteArrayArray1142[j12] == null)
                                        continue;
                                    class9.method186((j11 & 7) * 8, aClass4Array1281, aByteArrayArray1142[j12], (l10 & 7) * 8, l9, k6 * 8, -828, j10, k3, l4 * 8);
                                    flag = true;
                                    break;
                                }

                            }
                            if(!flag)
                                class9.method188(false, k3, k6 * 8, l4 * 8);
                        }

                    }

                }

                for(int i5 = 0; i5 < 13; i5++)
                {
                    for(int l6 = 0; l6 < 13; l6++)
                    {
                        int i8 = anIntArrayArrayArray1258[0][i5][l6];
                        if(i8 == -1)
                            class9.method198(anInt1302, 8, i5 * 8, 8, l6 * 8);
                    }

                }

                aClass31_Sub3_Sub2_853.method411(7793, 100);
                for(int i7 = 0; i7 < 4; i7++)
                {
                    for(int j8 = 0; j8 < 13; j8++)
                    {
                        for(int j9 = 0; j9 < 13; j9++)
                        {
                            int i10 = anIntArrayArrayArray1258[i7][j8][j9];
                            if(i10 != -1)
                            {
                                int k10 = i10 >> 24 & 3;
                                int i11 = i10 >> 1 & 3;
                                int k11 = i10 >> 14 & 0x3ff;
                                int i12 = i10 >> 3 & 0x7ff;
                                int k12 = (k11 / 8 << 8) + i12 / 8;
                                for(int l12 = 0; l12 < anIntArray1282.length; l12++)
                                {
                                    if(anIntArray1282[l12] != k12 || aByteArrayArray1248[l12] == null)
                                        continue;
                                    class9.method182(aClass4Array1281, j8 * 8, (k11 & 7) * 8, j9 * 8, k10, i7, (byte)7, i11, aByteArrayArray1248[l12], aClass34_937, (i12 & 7) * 8);
                                    break;
                                }

                            }
                        }

                    }

                }

            }
            aClass31_Sub3_Sub2_853.method411(7793, 100);
            class9.method200(aClass34_937, aClass4Array1281, false);
            if(aClass15_1226 != null)
            {
                aClass15_1226.method213(0);
                Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
            }
            aClass31_Sub3_Sub2_853.method411(7793, 100);
            int l3 = Class9.anInt186;
            if(l3 > anInt981)
                l3 = anInt981;
            if(l3 < anInt981 - 1)
                l3 = anInt981 - 1;
            if(aBoolean979)
                aClass34_937.method512(Class9.anInt186, -40620);
            else
                aClass34_937.method512(0, -40620);
            for(int j5 = 0; j5 < 104; j5++)
            {
                for(int j7 = 0; j7 < 104; j7++)
                    method116(j5, j7);

            }

            method107(4);
        }
        catch(Exception exception) { }
        Class22.aClass36_347.method567();
        if(i <= 0)
            return;
        if(super.aFrame_Sub1_18 != null)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 164);
            aClass31_Sub3_Sub2_853.method416(0x3f008edd);
        }
        if(aBoolean979 && signlink.cache_dat != null)
        {
            int k = aClass27_Sub1_843.method315(0, false);
            for(int j1 = 0; j1 < k; j1++)
            {
                int i2 = aClass27_Sub1_843.method309(aByte891, j1);
                if((i2 & 0x79) == 0)
                    Class31_Sub3_Sub3_Sub2.method466(0, j1);
            }

        }
        System.gc();
        Class31_Sub3_Sub1_Sub1.method361((byte)2, 20);
        aClass27_Sub1_843.method314(anInt1259);
        int l = (anInt1122 - 6) / 8 - 1;
        int k1 = (anInt1122 + 6) / 8 + 1;
        int j2 = (anInt1123 - 6) / 8 - 1;
        int i3 = (anInt1123 + 6) / 8 + 1;
        if(aBoolean1253)
        {
            l = 49;
            k1 = 50;
            j2 = 49;
            i3 = 50;
        }
        for(int i4 = l; i4 <= k1; i4++)
        {
            for(int k5 = j2; k5 <= i3; k5++)
                if(i4 == l || i4 == k1 || k5 == j2 || k5 == i3)
                {
                    int k7 = aClass27_Sub1_843.method316(k5, 0, 0, i4);
                    if(k7 != -1)
                        aClass27_Sub1_843.method308(0, k7, 3);
                    int k8 = aClass27_Sub1_843.method316(k5, 1, 0, i4);
                    if(k8 != -1)
                        aClass27_Sub1_843.method308(0, k8, 3);
                }

        }

    }

    public void method58(int i)
    {
        if(i < 3 || i > 3)
            aBoolean850 = !aBoolean850;
        int j = aClass31_Sub3_Sub1_Sub4_1236.method397("Choose Option", aByte1304);
        for(int k = 0; k < anInt878; k++)
        {
            int l = aClass31_Sub3_Sub1_Sub4_1236.method397(aStringArray1208[k], aByte1304);
            if(l > j)
                j = l;
        }

        j += 8;
        int i1 = 15 * anInt878 + 21;
        if(super.anInt30 > 4 && super.anInt31 > 4 && super.anInt30 < 516 && super.anInt31 < 338)
        {
            int j1 = super.anInt30 - 4 - j / 2;
            if(j1 + j > 512)
                j1 = 512 - j;
            if(j1 < 0)
                j1 = 0;
            int i2 = super.anInt31 - 4;
            if(i2 + i1 > 334)
                i2 = 334 - i1;
            if(i2 < 0)
                i2 = 0;
            aBoolean1268 = true;
            anInt923 = 0;
            anInt924 = j1;
            anInt925 = i2;
            anInt926 = j;
            anInt927 = 15 * anInt878 + 22;
        }
        if(super.anInt30 > 553 && super.anInt31 > 205 && super.anInt30 < 743 && super.anInt31 < 466)
        {
            int k1 = super.anInt30 - 553 - j / 2;
            if(k1 < 0)
                k1 = 0;
            else
            if(k1 + j > 190)
                k1 = 190 - j;
            int j2 = super.anInt31 - 205;
            if(j2 < 0)
                j2 = 0;
            else
            if(j2 + i1 > 261)
                j2 = 261 - i1;
            aBoolean1268 = true;
            anInt923 = 1;
            anInt924 = k1;
            anInt925 = j2;
            anInt926 = j;
            anInt927 = 15 * anInt878 + 22;
        }
        if(super.anInt30 > 17 && super.anInt31 > 357 && super.anInt30 < 496 && super.anInt31 < 453)
        {
            int l1 = super.anInt30 - 17 - j / 2;
            if(l1 < 0)
                l1 = 0;
            else
            if(l1 + j > 479)
                l1 = 479 - j;
            int k2 = super.anInt31 - 357;
            if(k2 < 0)
                k2 = 0;
            else
            if(k2 + i1 > 96)
                k2 = 96 - i1;
            aBoolean1268 = true;
            anInt923 = 2;
            anInt924 = l1;
            anInt925 = k2;
            anInt926 = j;
            anInt927 = 15 * anInt878 + 22;
        }
    }

    public String method59(byte byte0)
    {
        if(byte0 != -22)
        {
            for(int i = 1; i > 0; i++);
        }
        if(signlink.mainapp != null)
            return signlink.mainapp.getDocumentBase().getHost().toLowerCase();
        if(super.aFrame_Sub1_18 != null)
            return "runescape.com";
        else
            return super.getDocumentBase().getHost().toLowerCase();
    }

    public void method12(Runnable runnable, int i)
    {
        if(i > 10)
            i = 10;
        if(signlink.mainapp != null)
        {
            signlink.startthread(runnable, i);
            return;
        } else
        {
            super.method12(runnable, i);
            return;
        }
    }

    public static String method60(int i, byte byte0)
    {
        String s = String.valueOf(i);
        if(byte0 != 119)
            anInt1083 = -305;
        for(int j = s.length() - 3; j > 0; j -= 3)
            s = s.substring(0, j) + "," + s.substring(j);

        if(s.length() > 8)
            s = "@gre@" + s.substring(0, s.length() - 8) + " million @whi@(" + s + ")";
        else
        if(s.length() > 4)
            s = "@cya@" + s.substring(0, s.length() - 4) + "K @whi@(" + s + ")";
        return " " + s;
    }

    public void method10(int i)
    {
        while(i >= 0) 
        {
            for(int j = 1; j > 0; j++);
        }
        aBoolean835 = true;
    }

    public void method61(int i)
    {
        if(anInt842 == 0)
            return;
        Class31_Sub3_Sub1_Sub4 class31_sub3_sub1_sub4 = aClass31_Sub3_Sub1_Sub4_1235;
        int j = 0;
        if(anInt1167 != 0)
            j = 1;
        for(int k = 0; k < 100; k++)
            if(aStringArray1107[k] != null)
            {
                int l = anIntArray1105[k];
                String s = aStringArray1106[k];
                byte byte0 = 0;
                if(s != null && s.startsWith("@cr1@"))
                {
                    s = s.substring(5);
                    byte0 = 1;
                }
                if(s != null && s.startsWith("@cr2@"))
                {
                    s = s.substring(5);
                    byte0 = 2;
                }
                if((l == 3 || l == 7) && (l == 7 || anInt849 == 0 || anInt849 == 1 && method16(s, (byte)9)))
                {
                    int i1 = 329 - j * 13;
                    int l1 = 4;
                    class31_sub3_sub1_sub4.method399("From", i1, l1, 0, -32001);
                    class31_sub3_sub1_sub4.method399("From", i1 - 1, l1, 65535, -32001);
                    l1 += class31_sub3_sub1_sub4.method397("From ", aByte1304);
                    if(byte0 == 1)
                    {
                        aClass31_Sub3_Sub1_Sub3Array1115[0].method392(-4899, l1, i1 - 12);
                        l1 += 14;
                    }
                    if(byte0 == 2)
                    {
                        aClass31_Sub3_Sub1_Sub3Array1115[1].method392(-4899, l1, i1 - 12);
                        l1 += 14;
                    }
                    class31_sub3_sub1_sub4.method399(s + ": " + aStringArray1107[k], i1, l1, 0, -32001);
                    class31_sub3_sub1_sub4.method399(s + ": " + aStringArray1107[k], i1 - 1, l1, 65535, -32001);
                    if(++j >= 5)
                        return;
                }
                if(l == 5 && anInt849 < 2)
                {
                    int j1 = 329 - j * 13;
                    class31_sub3_sub1_sub4.method399(aStringArray1107[k], j1, 4, 0, -32001);
                    class31_sub3_sub1_sub4.method399(aStringArray1107[k], j1 - 1, 4, 65535, -32001);
                    if(++j >= 5)
                        return;
                }
                if(l == 6 && anInt849 < 2)
                {
                    int k1 = 329 - j * 13;
                    class31_sub3_sub1_sub4.method399("To " + s + ": " + aStringArray1107[k], k1, 4, 0, -32001);
                    class31_sub3_sub1_sub4.method399("To " + s + ": " + aStringArray1107[k], k1 - 1, 4, 65535, -32001);
                    if(++j >= 5)
                        return;
                }
            }

        anInt960 += i;
    }

    public void method62(int i)
    {
        anInt960 += i;
        Graphics g = method11(true).getGraphics();
        g.setColor(Color.black);
        g.fillRect(0, 0, 765, 503);
        method4(1, -92);
        if(aBoolean928)
        {
            aBoolean1067 = false;
            g.setFont(new Font("Helvetica", 1, 16));
            g.setColor(Color.yellow);
            int j = 35;
            g.drawString("Sorry, an error has occured whilst loading RuneScape", 30, j);
            j += 50;
            g.setColor(Color.white);
            g.drawString("To fix this try the following (in order):", 30, j);
            j += 50;
            g.setColor(Color.white);
            g.setFont(new Font("Helvetica", 1, 12));
            g.drawString("1: Try closing ALL open web-browser windows, and reloading", 30, j);
            j += 30;
            g.drawString("2: Try clearing your web-browsers cache from tools->internet options", 30, j);
            j += 30;
            g.drawString("3: Try using a different game-world", 30, j);
            j += 30;
            g.drawString("4: Try rebooting your computer", 30, j);
            j += 30;
            g.drawString("5: Try selecting a different version of Java from the play-game menu", 30, j);
        }
        if(aBoolean1058)
        {
            aBoolean1067 = false;
            g.setFont(new Font("Helvetica", 1, 20));
            g.setColor(Color.white);
            g.drawString("Error - unable to load game!", 50, 50);
            g.drawString("To play RuneScape make sure you play from", 50, 100);
            g.drawString("http://www.runescape.com", 50, 150);
        }
        if(aBoolean958)
        {
            aBoolean1067 = false;
            g.setColor(Color.yellow);
            int k = 35;
            g.drawString("Error a copy of RuneScape already appears to be loaded", 30, k);
            k += 50;
            g.setColor(Color.white);
            g.drawString("To fix this try the following (in order):", 30, k);
            k += 50;
            g.setColor(Color.white);
            g.setFont(new Font("Helvetica", 1, 12));
            g.drawString("1: Try closing ALL open web-browser windows, and reloading", 30, k);
            k += 30;
            g.drawString("2: Try rebooting your computer, and reloading", 30, k);
            k += 30;
        }
    }

    public void method63(int i, boolean flag)
    {
        int ai[] = aClass31_Sub3_Sub1_Sub2_984.anIntArray1492;
        int j = ai.length;
        if(!flag)
            method6();
        for(int k = 0; k < j; k++)
            ai[k] = 0;

        for(int l = 1; l < 103; l++)
        {
            int i1 = 24628 + (103 - l) * 512 * 4;
            for(int k1 = 1; k1 < 103; k1++)
            {
                if((aByteArrayArrayArray917[i][k1][l] & 0x18) == 0)
                    aClass34_937.method546(ai, i1, 512, i, k1, l);
                if(i < 3 && (aByteArrayArrayArray917[i + 1][k1][l] & 8) != 0)
                    aClass34_937.method546(ai, i1, 512, i + 1, k1, l);
                i1 += 4;
            }

        }

        int j1 = ((238 + (int)(Math.random() * 20D)) - 10 << 16) + ((238 + (int)(Math.random() * 20D)) - 10 << 8) + ((238 + (int)(Math.random() * 20D)) - 10);
        int l1 = (238 + (int)(Math.random() * 20D)) - 10 << 16;
        aClass31_Sub3_Sub1_Sub2_984.method374(0);
        for(int i2 = 1; i2 < 103; i2++)
        {
            for(int j2 = 1; j2 < 103; j2++)
            {
                if((aByteArrayArrayArray917[i][j2][i2] & 0x18) == 0)
                    method140((byte)-21, i, j1, j2, l1, i2);
                if(i < 3 && (aByteArrayArrayArray917[i + 1][j2][i2] & 8) != 0)
                    method140((byte)-21, i + 1, j1, j2, l1, i2);
            }

        }

        if(aClass15_1226 != null)
        {
            aClass15_1226.method213(0);
            Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
        }
        anInt1298 = 0;
        for(int k2 = 0; k2 < 104; k2++)
        {
            for(int l2 = 0; l2 < 104; l2++)
            {
                int j3 = aClass34_937.method540(anInt981, k2, l2);
                if(j3 != 0)
                {
                    j3 = j3 >> 14 & 0x7fff;
                    int k3 = Class22.method273(j3).anInt312;
                    if(k3 >= 0)
                    {
                        int l3 = k2;
                        int i4 = l2;
                        if(k3 != 22 && k3 != 29 && k3 != 34 && k3 != 36 && k3 != 46 && k3 != 47 && k3 != 48)
                        {
                            byte byte0 = 104;
                            byte byte1 = 104;
                            int ai1[][] = aClass4Array1281[anInt981].anIntArrayArray100;
                            for(int j4 = 0; j4 < 10; j4++)
                            {
                                int k4 = (int)(Math.random() * 4D);
                                if(k4 == 0 && l3 > 0 && l3 > k2 - 3 && (ai1[l3 - 1][i4] & 0x1280108) == 0)
                                    l3--;
                                if(k4 == 1 && l3 < byte0 - 1 && l3 < k2 + 3 && (ai1[l3 + 1][i4] & 0x1280180) == 0)
                                    l3++;
                                if(k4 == 2 && i4 > 0 && i4 > l2 - 3 && (ai1[l3][i4 - 1] & 0x1280102) == 0)
                                    i4--;
                                if(k4 == 3 && i4 < byte1 - 1 && i4 < l2 + 3 && (ai1[l3][i4 + 1] & 0x1280120) == 0)
                                    i4++;
                            }

                        }
                        aClass31_Sub3_Sub1_Sub2Array1228[anInt1298] = aClass31_Sub3_Sub1_Sub2Array916[k3];
                        anIntArray1299[anInt1298] = l3;
                        anIntArray1300[anInt1298] = i4;
                        anInt1298++;
                    }
                }
            }

        }

        anInt1099++;
        if(anInt1099 > 1809)
        {
            anInt1099 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 84);
            aClass31_Sub3_Sub2_853.method412(0);
            int i3 = aClass31_Sub3_Sub2_853.anInt1440;
            aClass31_Sub3_Sub2_853.method413(62257);
            if((int)(Math.random() * 2D) == 0)
                aClass31_Sub3_Sub2_853.method412(110);
            aClass31_Sub3_Sub2_853.method413(43331);
            aClass31_Sub3_Sub2_853.method413((int)(Math.random() * 65536D));
            aClass31_Sub3_Sub2_853.method413(25179);
            aClass31_Sub3_Sub2_853.method413((int)(Math.random() * 65536D));
            aClass31_Sub3_Sub2_853.method412((int)(Math.random() * 256D));
            aClass31_Sub3_Sub2_853.method413((int)(Math.random() * 65536D));
            if((int)(Math.random() * 2D) == 0)
                aClass31_Sub3_Sub2_853.method413(9644);
            aClass31_Sub3_Sub2_853.method413((int)(Math.random() * 65536D));
            aClass31_Sub3_Sub2_853.method421(aClass31_Sub3_Sub2_853.anInt1440 - i3, 8);
        }
    }

    public void method64(boolean flag)
    {
        System.out.println("============");
        if(flag)
            anInt862 = aClass24_993.method288();
        System.out.println("flame-cycle:" + anInt1073);
        if(aClass27_Sub1_843 != null)
            System.out.println("Od-cycle:" + aClass27_Sub1_843.anInt1335);
        System.out.println("loop-cycle:" + anInt935);
        System.out.println("draw-cycle:" + anInt1254);
        System.out.println("ptype:" + anInt961);
        System.out.println("psize:" + anInt960);
        if(aClass12_1075 != null)
            aClass12_1075.method210(false);
        super.aBoolean12 = true;
    }

    public Component method11(boolean flag)
    {
        aBoolean1079 &= flag;
        if(signlink.mainapp != null)
            return signlink.mainapp;
        if(super.aFrame_Sub1_18 != null)
            return super.aFrame_Sub1_18;
        else
            return this;
    }

    public void method65(boolean flag)
    {
        if(anInt943 == 0 && anInt948 == 0)
        {
            aStringArray1208[anInt878] = "Walk here";
            anIntArray1017[anInt878] = 158;
            anIntArray1015[anInt878] = super.anInt23;
            anIntArray1016[anInt878] = super.anInt24;
            anInt878++;
        }
        int i = -1;
        if(flag)
            method6();
        for(int j = 0; j < Class31_Sub3_Sub3_Sub2.anInt1604; j++)
        {
            int k = Class31_Sub3_Sub3_Sub2.anIntArray1605[j];
            int l = k & 0x7f;
            int i1 = k >> 7 & 0x7f;
            int j1 = k >> 29 & 3;
            int k1 = k >> 14 & 0x7fff;
            if(k == i)
                continue;
            i = k;
            if(j1 == 2 && aClass34_937.method541(anInt981, l, i1, k) >= 0)
            {
                Class22 class22 = Class22.method273(k1);
                if(class22.anIntArray320 != null)
                    class22 = class22.method276(453);
                if(class22 == null)
                    continue;
                if(anInt943 == 1)
                {
                    aStringArray1208[anInt878] = "Use " + aString947 + " with @cya@" + class22.aString331;
                    anIntArray1017[anInt878] = 37;
                    anIntArray1018[anInt878] = k;
                    anIntArray1015[anInt878] = l;
                    anIntArray1016[anInt878] = i1;
                    anInt878++;
                } else
                if(anInt948 == 1)
                {
                    if((anInt950 & 4) == 4)
                    {
                        aStringArray1208[anInt878] = aString951 + " @cya@" + class22.aString331;
                        anIntArray1017[anInt878] = 894;
                        anIntArray1018[anInt878] = k;
                        anIntArray1015[anInt878] = l;
                        anIntArray1016[anInt878] = i1;
                        anInt878++;
                    }
                } else
                {
                    if(class22.aStringArray339 != null)
                    {
                        for(int l1 = 4; l1 >= 0; l1--)
                            if(class22.aStringArray339[l1] != null)
                            {
                                aStringArray1208[anInt878] = class22.aStringArray339[l1] + " @cya@" + class22.aString331;
                                if(l1 == 0)
                                    anIntArray1017[anInt878] = 649;
                                if(l1 == 1)
                                    anIntArray1017[anInt878] = 912;
                                if(l1 == 2)
                                    anIntArray1017[anInt878] = 224;
                                if(l1 == 3)
                                    anIntArray1017[anInt878] = 213;
                                if(l1 == 4)
                                    anIntArray1017[anInt878] = 1161;
                                anIntArray1018[anInt878] = k;
                                anIntArray1015[anInt878] = l;
                                anIntArray1016[anInt878] = i1;
                                anInt878++;
                            }

                    }
                    aStringArray1208[anInt878] = "Examine @cya@" + class22.aString331;
                    anIntArray1017[anInt878] = 1509;
                    anIntArray1018[anInt878] = class22.anInt305 << 14;
                    anIntArray1015[anInt878] = l;
                    anIntArray1016[anInt878] = i1;
                    anInt878++;
                }
            }
            if(j1 == 1)
            {
                Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[k1];
                if(class31_sub3_sub3_sub4_sub1.aClass45_1711.aByte706 == 1 && (((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 & 0x7f) == 64 && (((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636 & 0x7f) == 64)
                {
                    for(int i2 = 0; i2 < anInt1102; i2++)
                    {
                        Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[anIntArray1103[i2]];
                        if(class31_sub3_sub3_sub4_sub1_1 != null && class31_sub3_sub3_sub4_sub1_1 != class31_sub3_sub3_sub4_sub1 && class31_sub3_sub3_sub4_sub1_1.aClass45_1711.aByte706 == 1 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_1)).anInt1635 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_1)).anInt1636 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636)
                            method138(anIntArray1103[i2], class31_sub3_sub3_sub4_sub1_1.aClass45_1711, (byte)5, l, i1);
                    }

                    for(int k2 = 0; k2 < anInt969; k2++)
                    {
                        Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_1 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anIntArray970[k2]];
                        if(class31_sub3_sub3_sub4_sub2_1 != null && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_1)).anInt1635 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_1)).anInt1636 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636)
                            method94(class31_sub3_sub3_sub4_sub2_1, l, (byte)-49, i1, anIntArray970[k2]);
                    }

                }
                method138(k1, class31_sub3_sub3_sub4_sub1.aClass45_1711, (byte)5, l, i1);
            }
            if(j1 == 0)
            {
                Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[k1];
                if((((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 & 0x7f) == 64 && (((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636 & 0x7f) == 64)
                {
                    for(int j2 = 0; j2 < anInt1102; j2++)
                    {
                        Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_2 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[anIntArray1103[j2]];
                        if(class31_sub3_sub3_sub4_sub1_2 != null && class31_sub3_sub3_sub4_sub1_2.aClass45_1711.aByte706 == 1 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_2)).anInt1635 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_2)).anInt1636 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636)
                            method138(anIntArray1103[j2], class31_sub3_sub3_sub4_sub1_2.aClass45_1711, (byte)5, l, i1);
                    }

                    for(int l2 = 0; l2 < anInt969; l2++)
                    {
                        Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anIntArray970[l2]];
                        if(class31_sub3_sub3_sub4_sub2_2 != null && class31_sub3_sub3_sub4_sub2_2 != class31_sub3_sub3_sub4_sub2 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_2)).anInt1635 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_2)).anInt1636 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636)
                            method94(class31_sub3_sub3_sub4_sub2_2, l, (byte)-49, i1, anIntArray970[l2]);
                    }

                }
                method94(class31_sub3_sub3_sub4_sub2, l, (byte)-49, i1, k1);
            }
            if(j1 == 3)
            {
                Class28 class28 = aClass28ArrayArrayArray996[anInt981][l][i1];
                if(class28 != null)
                {
                    for(Class31_Sub3_Sub3_Sub6 class31_sub3_sub3_sub6 = (Class31_Sub3_Sub3_Sub6)class28.method329((byte)-110); class31_sub3_sub3_sub6 != null; class31_sub3_sub3_sub6 = (Class31_Sub3_Sub3_Sub6)class28.method331(-706))
                    {
                        Class41 class41 = Class41.method577(class31_sub3_sub3_sub6.anInt1708);
                        if(anInt943 == 1)
                        {
                            aStringArray1208[anInt878] = "Use " + aString947 + " with @lre@" + class41.aString650;
                            anIntArray1017[anInt878] = 989;
                            anIntArray1018[anInt878] = class31_sub3_sub3_sub6.anInt1708;
                            anIntArray1015[anInt878] = l;
                            anIntArray1016[anInt878] = i1;
                            anInt878++;
                        } else
                        if(anInt948 == 1)
                        {
                            if((anInt950 & 1) == 1)
                            {
                                aStringArray1208[anInt878] = aString951 + " @lre@" + class41.aString650;
                                anIntArray1017[anInt878] = 924;
                                anIntArray1018[anInt878] = class31_sub3_sub3_sub6.anInt1708;
                                anIntArray1015[anInt878] = l;
                                anIntArray1016[anInt878] = i1;
                                anInt878++;
                            }
                        } else
                        {
                            for(int i3 = 4; i3 >= 0; i3--)
                                if(class41.aStringArray636 != null && class41.aStringArray636[i3] != null)
                                {
                                    aStringArray1208[anInt878] = class41.aStringArray636[i3] + " @lre@" + class41.aString650;
                                    if(i3 == 0)
                                        anIntArray1017[anInt878] = 48;
                                    if(i3 == 1)
                                        anIntArray1017[anInt878] = 357;
                                    if(i3 == 2)
                                        anIntArray1017[anInt878] = 368;
                                    if(i3 == 3)
                                        anIntArray1017[anInt878] = 670;
                                    if(i3 == 4)
                                        anIntArray1017[anInt878] = 972;
                                    anIntArray1018[anInt878] = class31_sub3_sub3_sub6.anInt1708;
                                    anIntArray1015[anInt878] = l;
                                    anIntArray1016[anInt878] = i1;
                                    anInt878++;
                                } else
                                if(i3 == 2)
                                {
                                    aStringArray1208[anInt878] = "Take @lre@" + class41.aString650;
                                    anIntArray1017[anInt878] = 368;
                                    anIntArray1018[anInt878] = class31_sub3_sub3_sub6.anInt1708;
                                    anIntArray1015[anInt878] = l;
                                    anIntArray1016[anInt878] = i1;
                                    anInt878++;
                                }

                            aStringArray1208[anInt878] = "Examine @lre@" + class41.aString650;
                            anIntArray1017[anInt878] = 1876;
                            anIntArray1018[anInt878] = class31_sub3_sub3_sub6.anInt1708;
                            anIntArray1015[anInt878] = l;
                            anIntArray1016[anInt878] = i1;
                            anInt878++;
                        }
                    }

                }
            }
        }

    }

    public void method66(String s, String s1, int i, int j)
    {
        if(j != anInt1120)
            anInt1116 = 117;
        if(i == 0 && anInt899 != -1)
        {
            aString892 = s;
            super.anInt29 = 0;
        }
        if(anInt1129 == -1)
            aBoolean1289 = true;
        for(int k = 99; k > 0; k--)
        {
            anIntArray1105[k] = anIntArray1105[k - 1];
            aStringArray1106[k] = aStringArray1106[k - 1];
            aStringArray1107[k] = aStringArray1107[k - 1];
        }

        anIntArray1105[0] = i;
        aStringArray1106[0] = s1;
        aStringArray1107[0] = s;
    }

    public void method67(int i)
    {
        byte abyte0[] = aClass11_1261.method204("title.dat", null);
        Class31_Sub3_Sub1_Sub2 class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(abyte0, this);
        aClass15_1005.method213(0);
        class31_sub3_sub1_sub2.method377(143, 0, 0);
        aClass15_1006.method213(0);
        class31_sub3_sub1_sub2.method377(143, -637, 0);
        while(i >= 0) 
        {
            for(int j = 1; j > 0; j++);
        }
        aClass15_1002.method213(0);
        class31_sub3_sub1_sub2.method377(143, -128, 0);
        aClass15_1003.method213(0);
        class31_sub3_sub1_sub2.method377(143, -202, -371);
        aClass15_1004.method213(0);
        class31_sub3_sub1_sub2.method377(143, -202, -171);
        aClass15_1007.method213(0);
        class31_sub3_sub1_sub2.method377(143, 0, -265);
        aClass15_1008.method213(0);
        class31_sub3_sub1_sub2.method377(143, -562, -265);
        aClass15_1009.method213(0);
        class31_sub3_sub1_sub2.method377(143, -128, -171);
        aClass15_1010.method213(0);
        class31_sub3_sub1_sub2.method377(143, -562, -171);
        int ai[] = new int[class31_sub3_sub1_sub2.anInt1493];
        for(int k = 0; k < class31_sub3_sub1_sub2.anInt1494; k++)
        {
            for(int l = 0; l < class31_sub3_sub1_sub2.anInt1493; l++)
                ai[l] = class31_sub3_sub1_sub2.anIntArray1492[(class31_sub3_sub1_sub2.anInt1493 - l - 1) + class31_sub3_sub1_sub2.anInt1493 * k];

            for(int i1 = 0; i1 < class31_sub3_sub1_sub2.anInt1493; i1++)
                class31_sub3_sub1_sub2.anIntArray1492[i1 + class31_sub3_sub1_sub2.anInt1493 * k] = ai[i1];

        }

        aClass15_1005.method213(0);
        class31_sub3_sub1_sub2.method377(143, 382, 0);
        aClass15_1006.method213(0);
        class31_sub3_sub1_sub2.method377(143, -255, 0);
        aClass15_1002.method213(0);
        class31_sub3_sub1_sub2.method377(143, 254, 0);
        aClass15_1003.method213(0);
        class31_sub3_sub1_sub2.method377(143, 180, -371);
        aClass15_1004.method213(0);
        class31_sub3_sub1_sub2.method377(143, 180, -171);
        aClass15_1007.method213(0);
        class31_sub3_sub1_sub2.method377(143, 382, -265);
        aClass15_1008.method213(0);
        class31_sub3_sub1_sub2.method377(143, -180, -265);
        aClass15_1009.method213(0);
        class31_sub3_sub1_sub2.method377(143, 254, -171);
        aClass15_1010.method213(0);
        class31_sub3_sub1_sub2.method377(143, -180, -171);
        class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(aClass11_1261, "logo", 0);
        aClass15_1002.method213(0);
        class31_sub3_sub1_sub2.method379(-4899, 382 - class31_sub3_sub1_sub2.anInt1493 / 2 - 128, 18);
        class31_sub3_sub1_sub2 = null;
        abyte0 = null;
        ai = null;
        System.gc();
    }

    public void method68(byte byte0)
    {
        Class22.aClass36_347.method567();
        Class22.aClass36_342.method567();
        Class45.aClass36_690.method567();
        if(byte0 == 4)
        {
            byte0 = 0;
        } else
        {
            for(int i = 1; i > 0; i++);
        }
        Class41.aClass36_622.method567();
        Class41.aClass36_631.method567();
        Class31_Sub3_Sub3_Sub4_Sub2.aClass36_1721.method567();
        Class3.aClass36_85.method567();
    }

    public boolean method69(Class30 class30, int i)
    {
        if(i != 12768)
            throw new NullPointerException();
        int j = class30.anInt399;
        if(anInt1162 == 2)
        {
            if(j == 201)
            {
                aBoolean1289 = true;
                anInt823 = 0;
                aBoolean829 = true;
                aString1069 = "";
                anInt1169 = 1;
                aString1065 = "Enter name of friend to add to list";
            }
            if(j == 202)
            {
                aBoolean1289 = true;
                anInt823 = 0;
                aBoolean829 = true;
                aString1069 = "";
                anInt1169 = 2;
                aString1065 = "Enter name of friend to delete from list";
            }
        }
        if(j == 205)
        {
            anInt964 = 250;
            return true;
        }
        if(j == 501)
        {
            aBoolean1289 = true;
            anInt823 = 0;
            aBoolean829 = true;
            aString1069 = "";
            anInt1169 = 4;
            aString1065 = "Enter name of player to add to list";
        }
        if(j == 502)
        {
            aBoolean1289 = true;
            anInt823 = 0;
            aBoolean829 = true;
            aString1069 = "";
            anInt1169 = 5;
            aString1065 = "Enter name of player to delete from list";
        }
        if(j >= 300 && j <= 313)
        {
            int k = (j - 300) / 2;
            int j1 = j & 1;
            int i2 = anIntArray1166[k];
            if(i2 != -1)
            {
                do
                {
                    if(j1 == 0 && --i2 < 0)
                        i2 = Class5.anInt103 - 1;
                    if(j1 == 1 && ++i2 >= Class5.anInt103)
                        i2 = 0;
                } while(Class5.aClass5Array104[i2].aBoolean110 || Class5.aClass5Array104[i2].anInt105 != k + (aBoolean1155 ? 0 : 7));
                anIntArray1166[k] = i2;
                aBoolean1097 = true;
            }
        }
        if(j >= 314 && j <= 323)
        {
            int l = (j - 314) / 2;
            int k1 = j & 1;
            int j2 = anIntArray1238[l];
            if(k1 == 0 && --j2 < 0)
                j2 = anIntArrayArray912[l].length - 1;
            if(k1 == 1 && ++j2 >= anIntArrayArray912[l].length)
                j2 = 0;
            anIntArray1238[l] = j2;
            aBoolean1097 = true;
        }
        if(j == 324 && !aBoolean1155)
        {
            aBoolean1155 = true;
            method86(493);
        }
        if(j == 325 && aBoolean1155)
        {
            aBoolean1155 = false;
            method86(493);
        }
        if(j == 326)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 6);
            aClass31_Sub3_Sub2_853.method412(aBoolean1155 ? 0 : 1);
            for(int i1 = 0; i1 < 7; i1++)
                aClass31_Sub3_Sub2_853.method412(anIntArray1166[i1]);

            for(int l1 = 0; l1 < 5; l1++)
                aClass31_Sub3_Sub2_853.method412(anIntArray1238[l1]);

            return true;
        }
        if(j == 620)
            aBoolean1171 = !aBoolean1171;
        if(j >= 601 && j <= 613)
        {
            method18(0);
            if(aString992.length() > 0)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 111);
                aClass31_Sub3_Sub2_853.method418(Class26.method297(aString992), (byte)56);
                aClass31_Sub3_Sub2_853.method412(j - 601);
                aClass31_Sub3_Sub2_853.method412(aBoolean1171 ? 1 : 0);
            }
        }
        return false;
    }

    public void method70(byte byte0)
    {
        if(byte0 != 0)
            return;
        method61(0);
        if(anInt847 == 1)
        {
            aClass31_Sub3_Sub1_Sub2Array1070[anInt846 / 100].method379(-4899, anInt844 - 8 - 4, anInt845 - 8 - 4);
            anInt1025++;
            if(anInt1025 > 1080)
            {
                anInt1025 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 87);
                aClass31_Sub3_Sub2_853.method412(0);
                int i = aClass31_Sub3_Sub2_853.anInt1440;
                aClass31_Sub3_Sub2_853.method413((int)(Math.random() * 65536D));
                aClass31_Sub3_Sub2_853.method413(32682);
                aClass31_Sub3_Sub2_853.method412((int)(Math.random() * 256D));
                if((int)(Math.random() * 2D) == 0)
                    aClass31_Sub3_Sub2_853.method413(12504);
                aClass31_Sub3_Sub2_853.method413(3838);
                aClass31_Sub3_Sub2_853.method413(9810);
                aClass31_Sub3_Sub2_853.method413(62194);
                aClass31_Sub3_Sub2_853.method412((int)(Math.random() * 256D));
                aClass31_Sub3_Sub2_853.method412(58);
                if((int)(Math.random() * 2D) == 0)
                    aClass31_Sub3_Sub2_853.method413(63841);
                aClass31_Sub3_Sub2_853.method421(aClass31_Sub3_Sub2_853.anInt1440 - i, 8);
            }
        }
        if(anInt847 == 2)
            aClass31_Sub3_Sub1_Sub2Array1070[4 + anInt846 / 100].method379(-4899, anInt844 - 8 - 4, anInt845 - 8 - 4);
        if(anInt1160 != -1)
        {
            method31(anInt1160, anInt877, (byte)5);
            method38(0, 0, Class30.method339(anInt1160), -545, 0);
        }
        if(anInt1303 != -1)
        {
            method31(anInt1303, anInt877, (byte)5);
            method38(0, 0, Class30.method339(anInt1303), -545, 0);
        }
        method30(aBoolean1181);
        if(!aBoolean1268)
        {
            method119(-597);
            method135(3);
        } else
        if(anInt923 == 0)
            method139(614);
        if(anInt940 == 1)
            aClass31_Sub3_Sub1_Sub2_1027.method379(-4899, 472, 296);
        if(aBoolean1057)
        {
            char c = '\u01FB';
            int k = 20;
            int i1 = 0xffff00;
            if(super.anInt11 < 30 && aBoolean979)
                i1 = 0xff0000;
            if(super.anInt11 < 20 && !aBoolean979)
                i1 = 0xff0000;
            aClass31_Sub3_Sub1_Sub4_1235.method394(k, 0, c, i1, "Fps:" + super.anInt11);
            k += 15;
            Runtime runtime = Runtime.getRuntime();
            int j1 = (int)((runtime.totalMemory() - runtime.freeMemory()) / 1024L);
            i1 = 0xffff00;
            if(j1 > 0x2000000 && aBoolean979)
                i1 = 0xff0000;
            if(j1 > 0x4000000 && !aBoolean979)
                i1 = 0xff0000;
            aClass31_Sub3_Sub1_Sub4_1235.method394(k, 0, c, 0xffff00, "Mem:" + j1 + "k");
            k += 15;
        }
        if(anInt1167 != 0)
        {
            int j = anInt1167 / 50;
            int l = j / 60;
            j %= 60;
            if(j < 10)
                aClass31_Sub3_Sub1_Sub4_1235.method399("System update in: " + l + ":0" + j, 329, 4, 0xffff00, -32001);
            else
                aClass31_Sub3_Sub1_Sub4_1235.method399("System update in: " + l + ":" + j, 329, 4, 0xffff00, -32001);
            anInt1314++;
            if(anInt1314 > 154)
            {
                anInt1314 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 215);
                aClass31_Sub3_Sub2_853.method413(2407);
            }
        }
    }

    public void method71(int i)
    {
        try
        {
            if(aClass12_1075 != null)
                aClass12_1075.method205();
        }
        catch(Exception _ex) { }
        aClass12_1075 = null;
        aBoolean1079 = false;
        anInt989 = 0;
        aString1211 = "";
        aString1212 = "";
        while(i >= 0) 
            method6();
        method68(aByte876);
        aClass34_937.method511((byte)-70);
        for(int j = 0; j < 4; j++)
            aClass4Array1281[j].method160();

        System.gc();
        method105((byte)-65);
        anInt1072 = -1;
        anInt1292 = -1;
        anInt1066 = 0;
    }

    public void method72(String s, int i, String s1)
    {
        anInt960 += i;
        if(aClass15_1226 != null)
        {
            aClass15_1226.method213(0);
            Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
            int j = 151;
            if(s != null)
                j -= 7;
            aClass31_Sub3_Sub1_Sub4_1235.method395(0, 257, j, s1, (byte)119);
            aClass31_Sub3_Sub1_Sub4_1235.method395(0xffffff, 256, j - 1, s1, (byte)119);
            j += 15;
            if(s != null)
            {
                aClass31_Sub3_Sub1_Sub4_1235.method395(0, 257, j, s, (byte)119);
                aClass31_Sub3_Sub1_Sub4_1235.method395(0xffffff, 256, j - 1, s, (byte)119);
            }
            aClass15_1226.method214(super.aGraphics15, 4, 0, 4);
            return;
        }
        if(super.aClass15_16 != null)
        {
            super.aClass15_16.method213(0);
            Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1280;
            int k = 251;
            char c = '\u012C';
            byte byte0 = 50;
            Class31_Sub3_Sub1.method350(c, 2, 383 - c / 2, 0, k - 5 - byte0 / 2, byte0);
            Class31_Sub3_Sub1.method351(byte0, 0xffffff, 0, 383 - c / 2, c, k - 5 - byte0 / 2);
            if(s != null)
                k -= 7;
            aClass31_Sub3_Sub1_Sub4_1235.method395(0, 383, k, s1, (byte)119);
            aClass31_Sub3_Sub1_Sub4_1235.method395(0xffffff, 382, k - 1, s1, (byte)119);
            k += 15;
            if(s != null)
            {
                aClass31_Sub3_Sub1_Sub4_1235.method395(0, 383, k, s, (byte)119);
                aClass31_Sub3_Sub1_Sub4_1235.method395(0xffffff, 382, k - 1, s, (byte)119);
            }
            super.aClass15_16.method214(super.aGraphics15, 0, 0, 0);
        }
    }

    public void method73(boolean flag)
    {
        Class31_Sub3_Sub3_Sub5 class31_sub3_sub3_sub5 = (Class31_Sub3_Sub3_Sub5)aClass28_1080.method328();
        if(!flag)
            aBoolean861 = !aBoolean861;
        for(; class31_sub3_sub3_sub5 != null; class31_sub3_sub3_sub5 = (Class31_Sub3_Sub3_Sub5)aClass28_1080.method330(-582))
            if(class31_sub3_sub3_sub5.anInt1699 != anInt981 || anInt935 > class31_sub3_sub3_sub5.anInt1701)
                class31_sub3_sub3_sub5.method343();
            else
            if(anInt935 >= class31_sub3_sub3_sub5.anInt1700)
            {
                if(class31_sub3_sub3_sub5.anInt1704 > 0)
                {
                    Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[class31_sub3_sub3_sub5.anInt1704 - 1];
                    if(class31_sub3_sub3_sub4_sub1 != null && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 >= 0 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 < 13312 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636 >= 0 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636 < 13312)
                        class31_sub3_sub3_sub5.method503(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635, method143(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635, 0, class31_sub3_sub3_sub5.anInt1699, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636) - class31_sub3_sub3_sub5.anInt1693, false, anInt935);
                }
                if(class31_sub3_sub3_sub5.anInt1704 < 0)
                {
                    int i = -class31_sub3_sub3_sub5.anInt1704 - 1;
                    Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2;
                    if(i == anInt1215)
                        class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2_885;
                    else
                        class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[i];
                    if(class31_sub3_sub3_sub4_sub2 != null && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 >= 0 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 < 13312 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636 >= 0 && ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636 < 13312)
                        class31_sub3_sub3_sub5.method503(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635, method143(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635, 0, class31_sub3_sub3_sub5.anInt1699, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636) - class31_sub3_sub3_sub5.anInt1693, false, anInt935);
                }
                class31_sub3_sub3_sub5.method504(anInt877, 0);
                aClass34_937.method522(class31_sub3_sub3_sub5, anInt981, -978, (int)class31_sub3_sub3_sub5.aDouble1684, class31_sub3_sub3_sub5.anInt1695, -1, (int)class31_sub3_sub3_sub5.aDouble1682, 60, false, (int)class31_sub3_sub3_sub5.aDouble1683);
            }

    }

    public void method74(int i, int j, int k, int l, int i1, int j1, int k1, 
            int l1, int i2, int j2)
    {
        Class31_Sub2 class31_sub2 = null;
        Class31_Sub2 class31_sub2_1 = (Class31_Sub2)aClass28_836.method328();
        if(k1 < 2 || k1 > 2)
            anInt961 = -1;
        for(; class31_sub2_1 != null; class31_sub2_1 = (Class31_Sub2)aClass28_836.method330(-582))
        {
            if(class31_sub2_1.anInt1395 != j1 || class31_sub2_1.anInt1397 != j || class31_sub2_1.anInt1398 != i || class31_sub2_1.anInt1396 != j2)
                continue;
            class31_sub2 = class31_sub2_1;
            break;
        }

        if(class31_sub2 == null)
        {
            class31_sub2 = new Class31_Sub2();
            class31_sub2.anInt1395 = j1;
            class31_sub2.anInt1396 = j2;
            class31_sub2.anInt1397 = j;
            class31_sub2.anInt1398 = i;
            method134(class31_sub2, aByte1223);
            aClass28_836.method325(class31_sub2);
        }
        class31_sub2.anInt1399 = l;
        class31_sub2.anInt1401 = k;
        class31_sub2.anInt1400 = l1;
        class31_sub2.anInt1402 = i2;
        class31_sub2.anInt1391 = i1;
    }

    public boolean method75(int i, byte byte0, int j, int k, int l, int i1, int j1, 
            int k1, boolean flag, int l1, int i2, int j2)
    {
        byte byte1 = 104;
        byte byte2 = 104;
        for(int k2 = 0; k2 < byte1; k2++)
        {
            for(int l2 = 0; l2 < byte2; l2++)
            {
                anIntArrayArray1133[k2][l2] = 0;
                anIntArrayArray959[k2][l2] = 0x5f5e0ff;
            }

        }

        int i3 = i;
        int j3 = l1;
        if(byte0 == 1)
            byte0 = 0;
        else
            throw new NullPointerException();
        anIntArrayArray1133[i][l1] = 99;
        anIntArrayArray959[i][l1] = 0;
        int k3 = 0;
        int l3 = 0;
        anIntArray1086[k3] = i;
        anIntArray1087[k3++] = l1;
        boolean flag1 = false;
        int i4 = anIntArray1086.length;
        int ai[][] = aClass4Array1281[anInt981].anIntArrayArray100;
        while(l3 != k3) 
        {
            i3 = anIntArray1086[l3];
            j3 = anIntArray1087[l3];
            l3 = (l3 + 1) % i4;
            if(i3 == j2 && j3 == k1)
            {
                flag1 = true;
                break;
            }
            if(l != 0)
            {
                if((l < 5 || l == 10) && aClass4Array1281[anInt981].method169(k1, j, i3, -610, j3, j2, l - 1))
                {
                    flag1 = true;
                    break;
                }
                if(l < 10 && aClass4Array1281[anInt981].method170(i3, j, k1, l - 1, j2, j3, 0))
                {
                    flag1 = true;
                    break;
                }
            }
            if(i2 != 0 && k != 0 && aClass4Array1281[anInt981].method171(j3, i3, k1, j2, (byte)1, i1, i2, k))
            {
                flag1 = true;
                break;
            }
            int k4 = anIntArrayArray959[i3][j3] + 1;
            if(i3 > 0 && anIntArrayArray1133[i3 - 1][j3] == 0 && (ai[i3 - 1][j3] & 0x1280108) == 0)
            {
                anIntArray1086[k3] = i3 - 1;
                anIntArray1087[k3] = j3;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3 - 1][j3] = 2;
                anIntArrayArray959[i3 - 1][j3] = k4;
            }
            if(i3 < byte1 - 1 && anIntArrayArray1133[i3 + 1][j3] == 0 && (ai[i3 + 1][j3] & 0x1280180) == 0)
            {
                anIntArray1086[k3] = i3 + 1;
                anIntArray1087[k3] = j3;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3 + 1][j3] = 8;
                anIntArrayArray959[i3 + 1][j3] = k4;
            }
            if(j3 > 0 && anIntArrayArray1133[i3][j3 - 1] == 0 && (ai[i3][j3 - 1] & 0x1280102) == 0)
            {
                anIntArray1086[k3] = i3;
                anIntArray1087[k3] = j3 - 1;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3][j3 - 1] = 1;
                anIntArrayArray959[i3][j3 - 1] = k4;
            }
            if(j3 < byte2 - 1 && anIntArrayArray1133[i3][j3 + 1] == 0 && (ai[i3][j3 + 1] & 0x1280120) == 0)
            {
                anIntArray1086[k3] = i3;
                anIntArray1087[k3] = j3 + 1;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3][j3 + 1] = 4;
                anIntArrayArray959[i3][j3 + 1] = k4;
            }
            if(i3 > 0 && j3 > 0 && anIntArrayArray1133[i3 - 1][j3 - 1] == 0 && (ai[i3 - 1][j3 - 1] & 0x128010e) == 0 && (ai[i3 - 1][j3] & 0x1280108) == 0 && (ai[i3][j3 - 1] & 0x1280102) == 0)
            {
                anIntArray1086[k3] = i3 - 1;
                anIntArray1087[k3] = j3 - 1;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3 - 1][j3 - 1] = 3;
                anIntArrayArray959[i3 - 1][j3 - 1] = k4;
            }
            if(i3 < byte1 - 1 && j3 > 0 && anIntArrayArray1133[i3 + 1][j3 - 1] == 0 && (ai[i3 + 1][j3 - 1] & 0x1280183) == 0 && (ai[i3 + 1][j3] & 0x1280180) == 0 && (ai[i3][j3 - 1] & 0x1280102) == 0)
            {
                anIntArray1086[k3] = i3 + 1;
                anIntArray1087[k3] = j3 - 1;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3 + 1][j3 - 1] = 9;
                anIntArrayArray959[i3 + 1][j3 - 1] = k4;
            }
            if(i3 > 0 && j3 < byte2 - 1 && anIntArrayArray1133[i3 - 1][j3 + 1] == 0 && (ai[i3 - 1][j3 + 1] & 0x1280138) == 0 && (ai[i3 - 1][j3] & 0x1280108) == 0 && (ai[i3][j3 + 1] & 0x1280120) == 0)
            {
                anIntArray1086[k3] = i3 - 1;
                anIntArray1087[k3] = j3 + 1;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3 - 1][j3 + 1] = 6;
                anIntArrayArray959[i3 - 1][j3 + 1] = k4;
            }
            if(i3 < byte1 - 1 && j3 < byte2 - 1 && anIntArrayArray1133[i3 + 1][j3 + 1] == 0 && (ai[i3 + 1][j3 + 1] & 0x12801e0) == 0 && (ai[i3 + 1][j3] & 0x1280180) == 0 && (ai[i3][j3 + 1] & 0x1280120) == 0)
            {
                anIntArray1086[k3] = i3 + 1;
                anIntArray1087[k3] = j3 + 1;
                k3 = (k3 + 1) % i4;
                anIntArrayArray1133[i3 + 1][j3 + 1] = 12;
                anIntArrayArray959[i3 + 1][j3 + 1] = k4;
            }
        }
        anInt841 = 0;
        if(!flag1)
        {
            if(flag)
            {
                int l4 = 100;
                for(int j5 = 1; j5 < 2; j5++)
                {
                    for(int l5 = j2 - j5; l5 <= j2 + j5; l5++)
                    {
                        for(int j6 = k1 - j5; j6 <= k1 + j5; j6++)
                            if(l5 >= 0 && j6 >= 0 && l5 < 104 && j6 < 104 && anIntArrayArray959[l5][j6] < l4)
                            {
                                l4 = anIntArrayArray959[l5][j6];
                                i3 = l5;
                                j3 = j6;
                                anInt841 = 1;
                                flag1 = true;
                            }

                    }

                    if(flag1)
                        break;
                }

            }
            if(!flag1)
                return false;
        }
        l3 = 0;
        anIntArray1086[l3] = i3;
        anIntArray1087[l3++] = j3;
        int k5;
        for(int i5 = k5 = anIntArrayArray1133[i3][j3]; i3 != i || j3 != l1; i5 = anIntArrayArray1133[i3][j3])
        {
            if(i5 != k5)
            {
                k5 = i5;
                anIntArray1086[l3] = i3;
                anIntArray1087[l3++] = j3;
            }
            if((i5 & 2) != 0)
                i3++;
            else
            if((i5 & 8) != 0)
                i3--;
            if((i5 & 1) != 0)
                j3++;
            else
            if((i5 & 4) != 0)
                j3--;
        }

        if(l3 > 0)
        {
            int j4 = l3;
            if(j4 > 25)
                j4 = 25;
            l3--;
            int i6 = anIntArray1086[l3];
            int k6 = anIntArray1087[l3];
            if(j1 == 0)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 108);
                aClass31_Sub3_Sub2_853.method412(j4 + j4 + 3);
            }
            if(j1 == 1)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 131);
                aClass31_Sub3_Sub2_853.method412(j4 + j4 + 3 + 14);
            }
            if(j1 == 2)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 61);
                aClass31_Sub3_Sub2_853.method412(j4 + j4 + 3);
            }
            aClass31_Sub3_Sub2_853.method412(super.anIntArray33[5] != 1 ? 0 : 1);
            anInt982 = anIntArray1086[0];
            anInt983 = anIntArray1087[0];
            for(int l6 = 1; l6 < j4; l6++)
            {
                l3--;
                aClass31_Sub3_Sub2_853.method412(anIntArray1086[l3] - i6);
                aClass31_Sub3_Sub2_853.method438(0, anIntArray1087[l3] - k6);
            }

            aClass31_Sub3_Sub2_853.method446(k6 + anInt930, (byte)1);
            aClass31_Sub3_Sub2_853.method446(i6 + anInt929, (byte)1);
            return true;
        }
        return j1 != 1;
    }

    public void method76(boolean flag)
    {
        if(super.aClass15_16 != null)
            return;
        method15(aByte1274);
        aClass15_1002 = null;
        aClass15_1003 = null;
        aClass15_1004 = null;
        aClass15_1005 = null;
        aClass15_1006 = null;
        aClass15_1007 = null;
        aClass15_1008 = null;
        aClass15_1009 = null;
        aClass15_1010 = null;
        aClass15_1227 = null;
        aClass15_1225 = null;
        aClass15_1224 = null;
        aClass15_1226 = null;
        aClass15_1264 = null;
        aClass15_1265 = null;
        aClass15_1266 = null;
        super.aClass15_16 = new Class15(503, 765, method11(true), anInt1144);
        if(flag)
            anInt961 = -1;
        aBoolean835 = true;
    }

    public void method77(int i)
    {
        anInt864 = 0;
        for(int j = -1; j < anInt969 + anInt1102; j++)
        {
            Object obj;
            if(j == -1)
                obj = aClass31_Sub3_Sub3_Sub4_Sub2_885;
            else
            if(j < anInt969)
                obj = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anIntArray970[j]];
            else
                obj = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[anIntArray1103[j - anInt969]];
            if(obj == null || !((Class31_Sub3_Sub3_Sub4) (obj)).method496(21781))
                continue;
            if(obj instanceof Class31_Sub3_Sub3_Sub4_Sub1)
            {
                Class45 class45 = ((Class31_Sub3_Sub3_Sub4_Sub1)obj).aClass45_1711;
                if(class45.anIntArray696 != null)
                    class45 = class45.method595(7);
                if(class45 == null)
                    continue;
            }
            if(j < anInt969)
            {
                int l = 30;
                Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = (Class31_Sub3_Sub3_Sub4_Sub2)obj;
                if(class31_sub3_sub3_sub4_sub2.anInt1737 != -1 || class31_sub3_sub3_sub4_sub2.anInt1722 != -1)
                {
                    method44(((Class31_Sub3_Sub3_Sub4) (obj)), 0, ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1652 + 15);
                    if(anInt941 > -1)
                    {
                        if(class31_sub3_sub3_sub4_sub2.anInt1737 != -1)
                        {
                            aClass31_Sub3_Sub1_Sub2Array851[class31_sub3_sub3_sub4_sub2.anInt1737].method379(-4899, anInt941 - 12, anInt942 - l);
                            l += 25;
                        }
                        if(class31_sub3_sub3_sub4_sub2.anInt1722 != -1)
                        {
                            aClass31_Sub3_Sub1_Sub2Array1001[class31_sub3_sub3_sub4_sub2.anInt1722].method379(-4899, anInt941 - 12, anInt942 - l);
                            l += 25;
                        }
                    }
                }
                if(j >= 0 && anInt1024 == 10 && anInt887 == anIntArray970[j])
                {
                    method44(((Class31_Sub3_Sub3_Sub4) (obj)), 0, ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1652 + 15);
                    if(anInt941 > -1)
                        aClass31_Sub3_Sub1_Sub2Array1118[1].method379(-4899, anInt941 - 12, anInt942 - l);
                }
            } else
            {
                Class45 class45_1 = ((Class31_Sub3_Sub3_Sub4_Sub1)obj).aClass45_1711;
                if(class45_1.anInt679 >= 0 && class45_1.anInt679 < aClass31_Sub3_Sub1_Sub2Array1001.length)
                {
                    method44(((Class31_Sub3_Sub3_Sub4) (obj)), 0, ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1652 + 15);
                    if(anInt941 > -1)
                        aClass31_Sub3_Sub1_Sub2Array1001[class45_1.anInt679].method379(-4899, anInt941 - 12, anInt942 - 30);
                }
                if(anInt1024 == 1 && anInt987 == anIntArray1103[j - anInt969] && anInt935 % 20 < 10)
                {
                    method44(((Class31_Sub3_Sub3_Sub4) (obj)), 0, ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1652 + 15);
                    if(anInt941 > -1)
                        aClass31_Sub3_Sub1_Sub2Array1118[0].method379(-4899, anInt941 - 12, anInt942 - 28);
                }
            }
            if(((Class31_Sub3_Sub3_Sub4) (obj)).aString1665 != null && (j >= anInt969 || anInt995 == 0 || anInt995 == 3 || anInt995 == 1 && method16(((Class31_Sub3_Sub3_Sub4_Sub2)obj).aString1729, (byte)9)))
            {
                method44(((Class31_Sub3_Sub3_Sub4) (obj)), 0, ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1652);
                if(anInt941 > -1 && anInt864 < anInt865)
                {
                    anIntArray869[anInt864] = aClass31_Sub3_Sub1_Sub4_1236.method398((byte)107, ((Class31_Sub3_Sub3_Sub4) (obj)).aString1665) / 2;
                    anIntArray868[anInt864] = aClass31_Sub3_Sub1_Sub4_1236.anInt1522;
                    anIntArray866[anInt864] = anInt941;
                    anIntArray867[anInt864] = anInt942;
                    anIntArray870[anInt864] = ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1656;
                    anIntArray871[anInt864] = ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1632;
                    anIntArray872[anInt864] = ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1651;
                    aStringArray873[anInt864++] = ((Class31_Sub3_Sub3_Sub4) (obj)).aString1665;
                    if(anInt952 == 0 && ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1632 >= 1 && ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1632 <= 3)
                    {
                        anIntArray868[anInt864] += 10;
                        anIntArray867[anInt864] += 5;
                    }
                    if(anInt952 == 0 && ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1632 == 4)
                        anIntArray869[anInt864] = 60;
                    if(anInt952 == 0 && ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1632 == 5)
                        anIntArray868[anInt864] += 5;
                }
            }
            if(((Class31_Sub3_Sub3_Sub4) (obj)).anInt1679 > anInt935)
            {
                method44(((Class31_Sub3_Sub3_Sub4) (obj)), 0, ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1652 + 15);
                if(anInt941 > -1)
                {
                    int i1 = (((Class31_Sub3_Sub3_Sub4) (obj)).anInt1680 * 30) / ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1681;
                    if(i1 > 30)
                        i1 = 30;
                    Class31_Sub3_Sub1.method350(i1, 2, anInt941 - 15, 65280, anInt942 - 3, 5);
                    Class31_Sub3_Sub1.method350(30 - i1, 2, (anInt941 - 15) + i1, 0xff0000, anInt942 - 3, 5);
                }
            }
            for(int j1 = 0; j1 < 4; j1++)
                if(((Class31_Sub3_Sub3_Sub4) (obj)).anIntArray1645[j1] > anInt935)
                {
                    method44(((Class31_Sub3_Sub3_Sub4) (obj)), 0, ((Class31_Sub3_Sub3_Sub4) (obj)).anInt1652 / 2);
                    if(anInt941 > -1)
                    {
                        if(j1 == 1)
                            anInt942 -= 20;
                        if(j1 == 2)
                        {
                            anInt941 -= 15;
                            anInt942 -= 10;
                        }
                        if(j1 == 3)
                        {
                            anInt941 += 15;
                            anInt942 -= 10;
                        }
                        aClass31_Sub3_Sub1_Sub2Array1306[((Class31_Sub3_Sub3_Sub4) (obj)).anIntArray1644[j1]].method379(-4899, anInt941 - 12, anInt942 - 12);
                        aClass31_Sub3_Sub1_Sub4_1234.method395(0, anInt941, anInt942 + 4, String.valueOf(((Class31_Sub3_Sub3_Sub4) (obj)).anIntArray1643[j1]), (byte)119);
                        aClass31_Sub3_Sub1_Sub4_1234.method395(0xffffff, anInt941 - 1, anInt942 + 3, String.valueOf(((Class31_Sub3_Sub3_Sub4) (obj)).anIntArray1643[j1]), (byte)119);
                    }
                }

        }

        for(int k = 0; k < anInt864; k++)
        {
            int k1 = anIntArray866[k];
            int l1 = anIntArray867[k];
            int i2 = anIntArray869[k];
            int j2 = anIntArray868[k];
            boolean flag = true;
            while(flag) 
            {
                flag = false;
                for(int k2 = 0; k2 < k; k2++)
                    if(l1 + 2 > anIntArray867[k2] - anIntArray868[k2] && l1 - j2 < anIntArray867[k2] + 2 && k1 - i2 < anIntArray866[k2] + anIntArray869[k2] && k1 + i2 > anIntArray866[k2] - anIntArray869[k2] && anIntArray867[k2] - anIntArray868[k2] < l1)
                    {
                        l1 = anIntArray867[k2] - anIntArray868[k2];
                        flag = true;
                    }

            }
            anInt941 = anIntArray866[k];
            anInt942 = anIntArray867[k] = l1;
            String s = aStringArray873[k];
            if(anInt952 == 0)
            {
                int l2 = 0xffff00;
                if(anIntArray870[k] < 6)
                    l2 = anIntArray1165[anIntArray870[k]];
                if(anIntArray870[k] == 6)
                    l2 = anInt1139 % 20 >= 10 ? 0xffff00 : 0xff0000;
                if(anIntArray870[k] == 7)
                    l2 = anInt1139 % 20 >= 10 ? 65535 : 255;
                if(anIntArray870[k] == 8)
                    l2 = anInt1139 % 20 >= 10 ? 0x80ff80 : 45056;
                if(anIntArray870[k] == 9)
                {
                    int i3 = 150 - anIntArray872[k];
                    if(i3 < 50)
                        l2 = 0xff0000 + 1280 * i3;
                    else
                    if(i3 < 100)
                        l2 = 0xffff00 - 0x50000 * (i3 - 50);
                    else
                    if(i3 < 150)
                        l2 = 65280 + 5 * (i3 - 100);
                }
                if(anIntArray870[k] == 10)
                {
                    int j3 = 150 - anIntArray872[k];
                    if(j3 < 50)
                        l2 = 0xff0000 + 5 * j3;
                    else
                    if(j3 < 100)
                        l2 = 0xff00ff - 0x50000 * (j3 - 50);
                    else
                    if(j3 < 150)
                        l2 = (255 + 0x50000 * (j3 - 100)) - 5 * (j3 - 100);
                }
                if(anIntArray870[k] == 11)
                {
                    int k3 = 150 - anIntArray872[k];
                    if(k3 < 50)
                        l2 = 0xffffff - 0x50005 * k3;
                    else
                    if(k3 < 100)
                        l2 = 65280 + 0x50005 * (k3 - 50);
                    else
                    if(k3 < 150)
                        l2 = 0xffffff - 0x50000 * (k3 - 100);
                }
                if(anIntArray871[k] == 0)
                {
                    aClass31_Sub3_Sub1_Sub4_1236.method395(0, anInt941, anInt942 + 1, s, (byte)119);
                    aClass31_Sub3_Sub1_Sub4_1236.method395(l2, anInt941, anInt942, s, (byte)119);
                }
                if(anIntArray871[k] == 1)
                {
                    aClass31_Sub3_Sub1_Sub4_1236.method400(s, anInt941, anInt1139, anInt942 + 1, 0, 0);
                    aClass31_Sub3_Sub1_Sub4_1236.method400(s, anInt941, anInt1139, anInt942, l2, 0);
                }
                if(anIntArray871[k] == 2)
                {
                    aClass31_Sub3_Sub1_Sub4_1236.method401(s, anInt1139, 0, anInt941, (byte)2, anInt942 + 1);
                    aClass31_Sub3_Sub1_Sub4_1236.method401(s, anInt1139, l2, anInt941, (byte)2, anInt942);
                }
                if(anIntArray871[k] == 3)
                {
                    aClass31_Sub3_Sub1_Sub4_1236.method402(s, anInt942 + 1, (byte)4, 150 - anIntArray872[k], anInt941, 0, anInt1139);
                    aClass31_Sub3_Sub1_Sub4_1236.method402(s, anInt942, (byte)4, 150 - anIntArray872[k], anInt941, l2, anInt1139);
                }
                if(anIntArray871[k] == 4)
                {
                    int l3 = aClass31_Sub3_Sub1_Sub4_1236.method398((byte)107, s);
                    int j4 = ((150 - anIntArray872[k]) * (l3 + 100)) / 150;
                    Class31_Sub3_Sub1.method347(0, anInt941 - 50, (byte)21, anInt941 + 50, 334);
                    aClass31_Sub3_Sub1_Sub4_1236.method399(s, anInt942 + 1, (anInt941 + 50) - j4, 0, -32001);
                    aClass31_Sub3_Sub1_Sub4_1236.method399(s, anInt942, (anInt941 + 50) - j4, l2, -32001);
                    Class31_Sub3_Sub1.method346(632);
                }
                if(anIntArray871[k] == 5)
                {
                    int i4 = 150 - anIntArray872[k];
                    int k4 = 0;
                    if(i4 < 25)
                        k4 = i4 - 25;
                    else
                    if(i4 > 125)
                        k4 = i4 - 125;
                    Class31_Sub3_Sub1.method347(anInt942 - aClass31_Sub3_Sub1_Sub4_1236.anInt1522 - 1, 0, (byte)21, 512, anInt942 + 5);
                    aClass31_Sub3_Sub1_Sub4_1236.method395(0, anInt941, anInt942 + 1 + k4, s, (byte)119);
                    aClass31_Sub3_Sub1_Sub4_1236.method395(l2, anInt941, anInt942 + k4, s, (byte)119);
                    Class31_Sub3_Sub1.method346(632);
                }
            } else
            {
                aClass31_Sub3_Sub1_Sub4_1236.method395(0, anInt941, anInt942 + 1, s, (byte)119);
                aClass31_Sub3_Sub1_Sub4_1236.method395(0xffff00, anInt941, anInt942, s, (byte)119);
            }
        }

        anInt960 += i;
    }

    public void method78(byte byte0)
    {
        if(byte0 != 58)
        {
            for(int i = 1; i > 0; i++);
        }
        for(int j = 0; j < anInt1182; j++)
            if(anIntArray1198[j] <= 0)
            {
                boolean flag = false;
                try
                {
                    if(anIntArray1074[j] == anInt1021 && anIntArray1159[j] == anInt1063)
                    {
                        if(!method122((byte)1))
                            flag = true;
                    } else
                    {
                        Class31_Sub3_Sub2 class31_sub3_sub2 = Class25.method292(anIntArray1159[j], 7, anIntArray1074[j]);
                        if(System.currentTimeMillis() + (long)(class31_sub3_sub2.anInt1440 / 22) > aLong888 + (long)(anInt999 / 22))
                        {
                            anInt999 = class31_sub3_sub2.anInt1440;
                            aLong888 = System.currentTimeMillis();
                            if(method123(class31_sub3_sub2.anInt1440, class31_sub3_sub2.aByteArray1439, -42))
                            {
                                anInt1021 = anIntArray1074[j];
                                anInt1063 = anIntArray1159[j];
                            } else
                            {
                                flag = true;
                            }
                        }
                    }
                }
                catch(Exception exception)
                {
                    if(signlink.reporterror)
                    {
                        aClass31_Sub3_Sub2_853.method411(7793, 76);
                        aClass31_Sub3_Sub2_853.method413(anIntArray1074[j] & 0x7fff);
                    } else
                    {
                        aClass31_Sub3_Sub2_853.method411(7793, 76);
                        aClass31_Sub3_Sub2_853.method413(-1);
                    }
                }
                if(!flag || anIntArray1198[j] == -5)
                {
                    anInt1182--;
                    for(int k = j; k < anInt1182; k++)
                    {
                        anIntArray1074[k] = anIntArray1074[k + 1];
                        anIntArray1159[k] = anIntArray1159[k + 1];
                        anIntArray1198[k] = anIntArray1198[k + 1];
                    }

                    j--;
                } else
                {
                    anIntArray1198[j] = -5;
                }
            } else
            {
                anIntArray1198[j]--;
            }

        if(anInt1066 > 0)
        {
            anInt1066 -= 20;
            if(anInt1066 < 0)
                anInt1066 = 0;
            if(anInt1066 == 0 && aBoolean1214 && !aBoolean979)
            {
                anInt1292 = anInt1072;
                aBoolean1293 = true;
                aClass27_Sub1_843.method320(2, anInt1292);
            }
        }
    }

    public void method79(byte byte0)
    {
        if(byte0 != aByte1130)
            return;
        anInt1139++;
        method42(true, (byte)-25);
        method80(anInt839, true);
        method42(false, (byte)-25);
        method80(anInt839, false);
        method73(true);
        method48(true);
        if(!aBoolean1127)
        {
            int i = anInt819;
            if(anInt994 / 256 > i)
                i = anInt994 / 256;
            if(aBooleanArray1175[4] && anIntArray955[4] + 128 > i)
                i = anIntArray955[4] + 128;
            int k = anInt820 + anInt1019 & 0x7ff;
            method43(anInt1090, k, 600 + i * 3, 0, i, method143(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635, 0, anInt981, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636) - 50, anInt1091);
        }
        int j;
        if(!aBoolean1127)
            j = method50(true);
        else
            j = method51(3);
        int l = anInt1201;
        int i1 = anInt1202;
        int j1 = anInt1203;
        int k1 = anInt1204;
        int l1 = anInt1205;
        for(int i2 = 0; i2 < 5; i2++)
            if(aBooleanArray1175[i2])
            {
                int j2 = (int)((Math.random() * (double)(anIntArray1221[i2] * 2 + 1) - (double)anIntArray1221[i2]) + Math.sin((double)anIntArray1089[i2] * ((double)anIntArray1044[i2] / 100D)) * (double)anIntArray955[i2]);
                if(i2 == 0)
                    anInt1201 += j2;
                if(i2 == 1)
                    anInt1202 += j2;
                if(i2 == 2)
                    anInt1203 += j2;
                if(i2 == 3)
                    anInt1205 = anInt1205 + j2 & 0x7ff;
                if(i2 == 4)
                {
                    anInt1204 += j2;
                    if(anInt1204 < 128)
                        anInt1204 = 128;
                    if(anInt1204 > 383)
                        anInt1204 = 383;
                }
            }

        int k2 = Class31_Sub3_Sub1_Sub1.anInt1483;
        Class31_Sub3_Sub3_Sub2.aBoolean1601 = true;
        Class31_Sub3_Sub3_Sub2.anInt1604 = 0;
        Class31_Sub3_Sub3_Sub2.anInt1602 = super.anInt23 - 4;
        Class31_Sub3_Sub3_Sub2.anInt1603 = super.anInt24 - 4;
        Class31_Sub3_Sub1.method348(true);
        aClass34_937.method550(anInt1202, anInt1201, anInt1205, false, anInt1203, anInt1204, j);
        aClass34_937.method525(127);
        method77(0);
        method96(831);
        method90(k2, 0);
        method70((byte)0);
        aClass15_1226.method214(super.aGraphics15, 4, 0, 4);
        anInt1201 = l;
        anInt1202 = i1;
        anInt1203 = j1;
        anInt1204 = k1;
        anInt1205 = l1;
    }

    public void method80(int i, boolean flag)
    {
        i = 72 / i;
        for(int j = 0; j < anInt1102; j++)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[anIntArray1103[j]];
            int k = 0x20000000 + (anIntArray1103[j] << 14);
            if(class31_sub3_sub3_sub4_sub1 == null || !class31_sub3_sub3_sub4_sub1.method496(21781) || class31_sub3_sub3_sub4_sub1.aClass45_1711.aBoolean676 != flag || !class31_sub3_sub3_sub4_sub1.aClass45_1711.method597((byte)-92))
                continue;
            int l = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 >> 7;
            int i1 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636 >> 7;
            if(l < 0 || l >= 104 || i1 < 0 || i1 >= 104)
                continue;
            if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1650 == 1 && (((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 & 0x7f) == 64 && (((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636 & 0x7f) == 64)
            {
                if(anIntArrayArray884[l][i1] == anInt1139)
                    continue;
                anIntArrayArray884[l][i1] = anInt1139;
            }
            if(!class31_sub3_sub3_sub4_sub1.aClass45_1711.aBoolean688)
                k += 0x80000000;
            aClass34_937.method522(class31_sub3_sub3_sub4_sub1, anInt981, -978, method143(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635, 0, anInt981, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636), ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1637, k, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635, (((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1650 - 1) * 64 + 60, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).aBoolean1664, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636);
        }

    }

    public void method81(long l, int i)
    {
        try
        {
            if(i <= 0)
                anInt961 = aClass31_Sub3_Sub2_1307.method422();
            if(l == 0L)
                return;
            if(anInt998 >= 100)
            {
                method66("Your ignore list is full. Max of 100 hit", "", 0, -39349);
                return;
            }
            String s = Class26.method301(true, Class26.method298(359, l));
            for(int j = 0; j < anInt998; j++)
                if(aLongArray1131[j] == l)
                {
                    method66(s + " is already on your ignore list", "", 0, -39349);
                    return;
                }

            for(int k = 0; k < anInt1161; k++)
                if(aLongArray1218[k] == l)
                {
                    method66("Please remove " + s + " from your friend list first", "", 0, -39349);
                    return;
                }

            aLongArray1131[anInt998++] = l;
            aBoolean1315 = true;
            aClass31_Sub3_Sub2_853.method411(7793, 180);
            aClass31_Sub3_Sub2_853.method418(l, (byte)56);
            return;
        }
        catch(RuntimeException runtimeexception)
        {
            signlink.reporterror("62882, " + l + ", " + i + ", " + runtimeexception.toString());
        }
        throw new RuntimeException();
    }

    public boolean method82(int i)
    {
        if(i != -37766)
            method6();
        if(aClass12_1075 == null)
            return false;
        try
        {
            int j = aClass12_1075.method207();
            if(j == 0)
                return false;
            if(anInt961 == -1)
            {
                aClass12_1075.method208(aClass31_Sub3_Sub2_1307.aByteArray1439, 0, 1);
                anInt961 = aClass31_Sub3_Sub2_1307.aByteArray1439[0] & 0xff;
                if(aClass24_993 != null)
                    anInt961 = anInt961 - aClass24_993.method288() & 0xff;
                anInt960 = Class37.anIntArray570[anInt961];
                j--;
            }
            if(anInt960 == -1)
                if(j > 0)
                {
                    aClass12_1075.method208(aClass31_Sub3_Sub2_1307.aByteArray1439, 0, 1);
                    anInt960 = aClass31_Sub3_Sub2_1307.aByteArray1439[0] & 0xff;
                    j--;
                } else
                {
                    return false;
                }
            if(anInt960 == -2)
                if(j > 1)
                {
                    aClass12_1075.method208(aClass31_Sub3_Sub2_1307.aByteArray1439, 0, 2);
                    aClass31_Sub3_Sub2_1307.anInt1440 = 0;
                    anInt960 = aClass31_Sub3_Sub2_1307.method424();
                    j -= 2;
                } else
                {
                    return false;
                }
            if(j < anInt960)
                return false;
            aClass31_Sub3_Sub2_1307.anInt1440 = 0;
            aClass12_1075.method208(aClass31_Sub3_Sub2_1307.aByteArray1439, 0, anInt960);
            anInt962 = 0;
            anInt906 = anInt905;
            anInt905 = anInt904;
            anInt904 = anInt961;
            if(anInt961 == 94)
            {
                anInt1217 = aClass31_Sub3_Sub2_1307.method441(false);
                anInt1216 = aClass31_Sub3_Sub2_1307.method442(-13491);
                for(int k = anInt1216; k < anInt1216 + 8; k++)
                {
                    for(int k10 = anInt1217; k10 < anInt1217 + 8; k10++)
                        if(aClass28ArrayArrayArray996[anInt981][k][k10] != null)
                        {
                            aClass28ArrayArrayArray996[anInt981][k][k10] = null;
                            method116(k, k10);
                        }

                }

                for(Class31_Sub2 class31_sub2 = (Class31_Sub2)aClass28_836.method328(); class31_sub2 != null; class31_sub2 = (Class31_Sub2)aClass28_836.method330(-582))
                    if(class31_sub2.anInt1397 >= anInt1216 && class31_sub2.anInt1397 < anInt1216 + 8 && class31_sub2.anInt1398 >= anInt1217 && class31_sub2.anInt1398 < anInt1217 + 8 && class31_sub2.anInt1395 == anInt981)
                        class31_sub2.anInt1391 = 0;

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 38)
            {
                int l = aClass31_Sub3_Sub2_1307.method422();
                int l10 = aClass31_Sub3_Sub2_1307.method422();
                int k16 = aClass31_Sub3_Sub2_1307.method422();
                int l21 = aClass31_Sub3_Sub2_1307.method422();
                aBooleanArray1175[l] = true;
                anIntArray1221[l] = l10;
                anIntArray955[l] = k16;
                anIntArray1044[l] = l21;
                anIntArray1089[l] = 0;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 54)
            {
                aBoolean1127 = true;
                anInt1145 = aClass31_Sub3_Sub2_1307.method422();
                anInt1146 = aClass31_Sub3_Sub2_1307.method422();
                anInt1147 = aClass31_Sub3_Sub2_1307.method424();
                anInt1148 = aClass31_Sub3_Sub2_1307.method422();
                anInt1149 = aClass31_Sub3_Sub2_1307.method422();
                if(anInt1149 >= 100)
                {
                    anInt1201 = anInt1145 * 128 + 64;
                    anInt1203 = anInt1146 * 128 + 64;
                    anInt1202 = method143(anInt1201, 0, anInt981, anInt1203) - anInt1147;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 128)
            {
                anInt1024 = aClass31_Sub3_Sub2_1307.method422();
                if(anInt1024 == 1)
                    anInt987 = aClass31_Sub3_Sub2_1307.method424();
                if(anInt1024 >= 2 && anInt1024 <= 6)
                {
                    if(anInt1024 == 2)
                    {
                        anInt1040 = 64;
                        anInt1041 = 64;
                    }
                    if(anInt1024 == 3)
                    {
                        anInt1040 = 0;
                        anInt1041 = 64;
                    }
                    if(anInt1024 == 4)
                    {
                        anInt1040 = 128;
                        anInt1041 = 64;
                    }
                    if(anInt1024 == 5)
                    {
                        anInt1040 = 64;
                        anInt1041 = 0;
                    }
                    if(anInt1024 == 6)
                    {
                        anInt1040 = 64;
                        anInt1041 = 128;
                    }
                    anInt1024 = 2;
                    anInt1037 = aClass31_Sub3_Sub2_1307.method424();
                    anInt1038 = aClass31_Sub3_Sub2_1307.method424();
                    anInt1039 = aClass31_Sub3_Sub2_1307.method422();
                }
                if(anInt1024 == 10)
                    anInt887 = aClass31_Sub3_Sub2_1307.method424();
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 143)
            {
                anInt1285 = aClass31_Sub3_Sub2_1307.method422();
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 236)
            {
                int i1 = aClass31_Sub3_Sub2_1307.method424();
                int i11 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                Class30.method339(i11).anInt436 = 1;
                Class30.method339(i11).anInt437 = i1;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 114)
            {
                int j1 = aClass31_Sub3_Sub2_1307.method456(1);
                int j11 = aClass31_Sub3_Sub2_1307.method449(-30785);
                anIntArray1114[j11] = j1;
                if(anIntArray1111[j11] != j1)
                {
                    anIntArray1111[j11] = j1;
                    method39(j11, 667);
                    aBoolean1315 = true;
                    if(anInt899 != -1)
                        aBoolean1289 = true;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 78)
            {
                aBoolean1315 = true;
                int k1 = aClass31_Sub3_Sub2_1307.method424();
                Class30 class30 = Class30.method339(k1);
                int l16 = aClass31_Sub3_Sub2_1307.method424();
                for(int i22 = 0; i22 < l16; i22++)
                {
                    class30.anIntArray406[i22] = aClass31_Sub3_Sub2_1307.method424();
                    int k24 = aClass31_Sub3_Sub2_1307.method440((byte)104);
                    if(k24 == 255)
                        k24 = aClass31_Sub3_Sub2_1307.method457(273);
                    class30.anIntArray411[i22] = k24;
                }

                for(int l24 = l16; l24 < class30.anIntArray406.length; l24++)
                {
                    class30.anIntArray406[l24] = 0;
                    class30.anIntArray411[l24] = 0;
                }

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 238)
            {
                if(anInt1014 == 12)
                    aBoolean1315 = true;
                anInt1023 = aClass31_Sub3_Sub2_1307.method425();
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 108)
            {
                int l1 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                int k11 = aClass31_Sub3_Sub2_1307.method424();
                int i17 = aClass31_Sub3_Sub2_1307.method450(aBoolean1136);
                int j22 = aClass31_Sub3_Sub2_1307.method450(aBoolean1136);
                Class30.method339(l1).anInt467 = k11;
                Class30.method339(l1).anInt468 = j22;
                Class30.method339(l1).anInt466 = i17;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 3)
            {
                long l2 = aClass31_Sub3_Sub2_1307.method428(true);
                int j17 = aClass31_Sub3_Sub2_1307.method427();
                int k22 = aClass31_Sub3_Sub2_1307.method422();
                boolean flag1 = false;
                for(int j27 = 0; j27 < 100; j27++)
                {
                    if(anIntArray921[j27] != j17)
                        continue;
                    flag1 = true;
                    break;
                }

                if(k22 <= 1)
                {
                    for(int l29 = 0; l29 < anInt998; l29++)
                    {
                        if(aLongArray1131[l29] != l2)
                            continue;
                        flag1 = true;
                        break;
                    }

                }
                if(!flag1 && anInt893 == 0)
                    try
                    {
                        anIntArray921[anInt1257] = j17;
                        anInt1257 = (anInt1257 + 1) % 100;
                        String s8 = Class35.method562(aClass31_Sub3_Sub2_1307, 555, anInt960 - 13);
                        if(k22 != 3)
                            s8 = Class16.method226(s8, 0);
                        if(k22 == 2 || k22 == 3)
                            method66(s8, "@cr2@" + Class26.method301(true, Class26.method298(359, l2)), 7, -39349);
                        else
                        if(k22 == 1)
                            method66(s8, "@cr1@" + Class26.method301(true, Class26.method298(359, l2)), 7, -39349);
                        else
                            method66(s8, Class26.method301(true, Class26.method298(359, l2)), 3, -39349);
                    }
                    catch(Exception exception1)
                    {
                        signlink.reporterror("cde1");
                    }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 111)
            {
                anInt1217 = aClass31_Sub3_Sub2_1307.method422();
                anInt1216 = aClass31_Sub3_Sub2_1307.method422();
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 10)
            {
                anInt982 = 0;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 79)
            {
                anInt1184 = aClass31_Sub3_Sub2_1307.method440((byte)104);
                anInt1215 = aClass31_Sub3_Sub2_1307.method424();
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 146)
            {
                int i2 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                byte byte0 = aClass31_Sub3_Sub2_1307.method443(false);
                anIntArray1114[i2] = byte0;
                if(anIntArray1111[i2] != byte0)
                {
                    anIntArray1111[i2] = byte0;
                    method39(i2, 667);
                    aBoolean1315 = true;
                    if(anInt899 != -1)
                        aBoolean1289 = true;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 130)
            {
                int j2 = aClass31_Sub3_Sub2_1307.method449(-30785);
                int l11 = aClass31_Sub3_Sub2_1307.method449(-30785);
                Class30.method339(j2).anInt436 = 2;
                Class30.method339(j2).anInt437 = l11;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 118)
            {
                String s = aClass31_Sub3_Sub2_1307.method429();
                if(s.endsWith(":tradereq:"))
                {
                    String s3 = s.substring(0, s.indexOf(":"));
                    long l17 = Class26.method297(s3);
                    boolean flag2 = false;
                    for(int k27 = 0; k27 < anInt998; k27++)
                    {
                        if(aLongArray1131[k27] != l17)
                            continue;
                        flag2 = true;
                        break;
                    }

                    if(!flag2 && anInt893 == 0)
                        method66("wishes to trade with you.", s3, 4, -39349);
                } else
                if(s.endsWith(":duelreq:"))
                {
                    String s4 = s.substring(0, s.indexOf(":"));
                    long l18 = Class26.method297(s4);
                    boolean flag3 = false;
                    for(int l27 = 0; l27 < anInt998; l27++)
                    {
                        if(aLongArray1131[l27] != l18)
                            continue;
                        flag3 = true;
                        break;
                    }

                    if(!flag3 && anInt893 == 0)
                        method66("wishes to duel with you.", s4, 8, -39349);
                } else
                if(s.endsWith(":chalreq:"))
                {
                    String s5 = s.substring(0, s.indexOf(":"));
                    long l19 = Class26.method297(s5);
                    boolean flag4 = false;
                    for(int i28 = 0; i28 < anInt998; i28++)
                    {
                        if(aLongArray1131[i28] != l19)
                            continue;
                        flag4 = true;
                        break;
                    }

                    if(!flag4 && anInt893 == 0)
                    {
                        String s9 = s.substring(s.indexOf(":") + 1, s.length() - 9);
                        method66(s9, s5, 8, -39349);
                    }
                } else
                {
                    method66(s, "", 0, -39349);
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 199)
            {
                if(anInt1206 != -1)
                {
                    method150(3, anInt1206);
                    anInt1206 = -1;
                    aBoolean1315 = true;
                    aBoolean909 = true;
                }
                if(anInt1129 != -1)
                {
                    method150(3, anInt1129);
                    anInt1129 = -1;
                    aBoolean1289 = true;
                }
                if(anInt900 != -1)
                {
                    method150(3, anInt900);
                    anInt900 = -1;
                    aBoolean835 = true;
                }
                if(anInt889 != -1)
                {
                    method150(3, anInt889);
                    anInt889 = -1;
                }
                if(anInt1303 != -1)
                {
                    method150(3, anInt1303);
                    anInt1303 = -1;
                }
                if(anInt823 != 0)
                {
                    anInt823 = 0;
                    aBoolean1289 = true;
                }
                aBoolean1052 = false;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 82)
            {
                method125(6, anInt960, aClass31_Sub3_Sub2_1307);
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 251)
            {
                int k2 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                method127(47243, k2);
                if(anInt1206 != -1)
                {
                    method150(3, anInt1206);
                    anInt1206 = -1;
                    aBoolean1315 = true;
                    aBoolean909 = true;
                }
                if(anInt1129 != -1)
                {
                    method150(3, anInt1129);
                    anInt1129 = -1;
                    aBoolean1289 = true;
                }
                if(anInt900 != -1)
                {
                    method150(3, anInt900);
                    anInt900 = -1;
                    aBoolean835 = true;
                }
                if(anInt889 != -1)
                {
                    method150(3, anInt889);
                    anInt889 = -1;
                }
                if(anInt1303 != k2)
                {
                    method150(3, anInt1303);
                    anInt1303 = k2;
                }
                if(anInt823 != 0)
                {
                    anInt823 = 0;
                    aBoolean1289 = true;
                }
                aBoolean1052 = false;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 61)
            {
                aBoolean1127 = false;
                for(int i3 = 0; i3 < 5; i3++)
                    aBooleanArray1175[i3] = false;

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 24)
            {
                aClass31_Sub3_Sub2_1307.method424();
                anInt1153 = aClass31_Sub3_Sub2_1307.method450(aBoolean1136);
                anInt1134 = aClass31_Sub3_Sub2_1307.method424();
                aClass31_Sub3_Sub2_1307.method440((byte)104);
                anInt1163 = aClass31_Sub3_Sub2_1307.method449(-30785);
                anInt1081 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                anInt1138 = aClass31_Sub3_Sub2_1307.method449(-30785);
                anInt1084 = aClass31_Sub3_Sub2_1307.method424();
                anInt985 = aClass31_Sub3_Sub2_1307.method424();
                anInt954 = aClass31_Sub3_Sub2_1307.method449(-30785);
                anInt1164 = aClass31_Sub3_Sub2_1307.method457(273);
                signlink.dnslookup(Class26.method300(2, anInt1164));
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 150)
            {
                anInt995 = aClass31_Sub3_Sub2_1307.method422();
                anInt849 = aClass31_Sub3_Sub2_1307.method422();
                anInt837 = aClass31_Sub3_Sub2_1307.method422();
                aBoolean902 = true;
                aBoolean1289 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 207)
            {
                int j3 = aClass31_Sub3_Sub2_1307.method424();
                int i12 = aClass31_Sub3_Sub2_1307.method451(0);
                int k17 = aClass31_Sub3_Sub2_1307.method453(anInt1056);
                Class30 class30_5 = Class30.method339(j3);
                class30_5.anInt439 = k17;
                class30_5.anInt425 = i12;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 144)
            {
                aBoolean1315 = true;
                int k3 = aClass31_Sub3_Sub2_1307.method424();
                Class30 class30_1 = Class30.method339(k3);
                while(aClass31_Sub3_Sub2_1307.anInt1440 < anInt960) 
                {
                    int i18 = aClass31_Sub3_Sub2_1307.method436();
                    int l22 = aClass31_Sub3_Sub2_1307.method424();
                    int i25 = aClass31_Sub3_Sub2_1307.method422();
                    if(i25 == 255)
                        i25 = aClass31_Sub3_Sub2_1307.method427();
                    if(i18 >= 0 && i18 < class30_1.anIntArray406.length)
                    {
                        class30_1.anIntArray406[i18] = l22;
                        class30_1.anIntArray411[i18] = i25;
                    }
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 100)
            {
                long l3 = aClass31_Sub3_Sub2_1307.method428(true);
                int j18 = aClass31_Sub3_Sub2_1307.method422();
                String s7 = Class26.method301(true, Class26.method298(359, l3));
                for(int j25 = 0; j25 < anInt1161; j25++)
                {
                    if(l3 != aLongArray1218[j25])
                        continue;
                    if(anIntArray915[j25] != j18)
                    {
                        anIntArray915[j25] = j18;
                        aBoolean1315 = true;
                        if(j18 > 0)
                            method66(s7 + " has logged in.", "", 5, -39349);
                        if(j18 == 0)
                            method66(s7 + " has logged out.", "", 5, -39349);
                    }
                    s7 = null;
                    break;
                }

                if(s7 != null && anInt1161 < 200)
                {
                    aLongArray1218[anInt1161] = l3;
                    aStringArray1000[anInt1161] = s7;
                    anIntArray915[anInt1161] = j18;
                    anInt1161++;
                    aBoolean1315 = true;
                }
                for(boolean flag5 = false; !flag5;)
                {
                    flag5 = true;
                    for(int i30 = 0; i30 < anInt1161 - 1; i30++)
                        if(anIntArray915[i30] != anInt976 && anIntArray915[i30 + 1] == anInt976 || anIntArray915[i30] == 0 && anIntArray915[i30 + 1] != 0)
                        {
                            int k31 = anIntArray915[i30];
                            anIntArray915[i30] = anIntArray915[i30 + 1];
                            anIntArray915[i30 + 1] = k31;
                            String s10 = aStringArray1000[i30];
                            aStringArray1000[i30] = aStringArray1000[i30 + 1];
                            aStringArray1000[i30 + 1] = s10;
                            long l33 = aLongArray1218[i30];
                            aLongArray1218[i30] = aLongArray1218[i30 + 1];
                            aLongArray1218[i30 + 1] = l33;
                            aBoolean1315 = true;
                            flag5 = false;
                        }

                }

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 96)
            {
                if(anInt1014 == 12)
                    aBoolean1315 = true;
                anInt1269 = aClass31_Sub3_Sub2_1307.method422();
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 180)
            {
                int i4 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                if(i4 == 65535)
                    i4 = -1;
                if(i4 != anInt1072 && aBoolean1214 && !aBoolean979 && anInt1066 == 0)
                {
                    anInt1292 = i4;
                    aBoolean1293 = true;
                    aClass27_Sub1_843.method320(2, anInt1292);
                }
                anInt1072 = i4;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 192)
            {
                int j4 = aClass31_Sub3_Sub2_1307.method449(-30785);
                int j12 = aClass31_Sub3_Sub2_1307.method426();
                if(aBoolean1214 && !aBoolean979)
                {
                    anInt1292 = j4;
                    aBoolean1293 = false;
                    aClass27_Sub1_843.method320(2, anInt1292);
                    anInt1066 = j12;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 200)
            {
                int k4 = aClass31_Sub3_Sub2_1307.method449(-30785);
                method127(47243, k4);
                if(anInt1129 != -1)
                {
                    method150(3, anInt1129);
                    anInt1129 = -1;
                    aBoolean1289 = true;
                }
                if(anInt900 != -1)
                {
                    method150(3, anInt900);
                    anInt900 = -1;
                    aBoolean835 = true;
                }
                if(anInt889 != -1)
                {
                    method150(3, anInt889);
                    anInt889 = -1;
                }
                if(anInt1303 != -1)
                {
                    method150(3, anInt1303);
                    anInt1303 = -1;
                }
                if(anInt1206 != k4)
                {
                    method150(3, anInt1206);
                    anInt1206 = k4;
                }
                if(anInt823 != 0)
                {
                    anInt823 = 0;
                    aBoolean1289 = true;
                }
                aBoolean1315 = true;
                aBoolean909 = true;
                aBoolean1052 = false;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 86)
            {
                int l4 = aClass31_Sub3_Sub2_1307.method453(anInt1056);
                if(l4 != anInt899)
                {
                    method150(3, anInt899);
                    anInt899 = l4;
                }
                aBoolean1289 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 120)
            {
                int i5 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                int k12 = aClass31_Sub3_Sub2_1307.method424();
                int k18 = aClass31_Sub3_Sub2_1307.method450(aBoolean1136);
                if(i5 == 65535)
                {
                    Class30.method339(k12).anInt436 = 0;
                    anInt961 = -1;
                    return true;
                } else
                {
                    Class41 class41 = Class41.method577(i5);
                    Class30.method339(k12).anInt436 = 4;
                    Class30.method339(k12).anInt437 = i5;
                    Class30.method339(k12).anInt467 = class41.anInt646;
                    Class30.method339(k12).anInt468 = class41.anInt633;
                    Class30.method339(k12).anInt466 = (class41.anInt611 * 100) / k18;
                    anInt961 = -1;
                    return true;
                }
            }
            if(anInt961 == 40)
            {
                aBoolean1315 = true;
                int j5 = aClass31_Sub3_Sub2_1307.method442(-13491);
                int l12 = aClass31_Sub3_Sub2_1307.method457(273);
                int i19 = aClass31_Sub3_Sub2_1307.method422();
                anIntArray1085[i19] = l12;
                anIntArray939[i19] = j5;
                anIntArray840[i19] = 1;
                for(int i23 = 0; i23 < 98; i23++)
                    if(l12 >= anIntArray1062[i23])
                        anIntArray840[i19] = i23 + 2;

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 181)
            {
                for(int k5 = 0; k5 < aClass31_Sub3_Sub3_Sub4_Sub2Array968.length; k5++)
                    if(aClass31_Sub3_Sub3_Sub4_Sub2Array968[k5] != null)
                        aClass31_Sub3_Sub3_Sub4_Sub2Array968[k5].anInt1674 = -1;

                for(int i13 = 0; i13 < aClass31_Sub3_Sub3_Sub4_Sub1Array1101.length; i13++)
                    if(aClass31_Sub3_Sub3_Sub4_Sub1Array1101[i13] != null)
                        aClass31_Sub3_Sub3_Sub4_Sub1Array1101[i13].anInt1674 = -1;

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 2)
            {
                int l5 = aClass31_Sub3_Sub2_1307.method424();
                int j13 = aClass31_Sub3_Sub2_1307.method442(-13491);
                if(l5 == 65535)
                    l5 = -1;
                if(anIntArray1110[j13] != l5)
                {
                    method150(3, anIntArray1110[j13]);
                    anIntArray1110[j13] = l5;
                }
                aBoolean1315 = true;
                aBoolean909 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 46 || anInt961 == 193 || anInt961 == 206 || anInt961 == 93 || anInt961 == 187 || anInt961 == 98 || anInt961 == 209 || anInt961 == 252 || anInt961 == 31 || anInt961 == 253 || anInt961 == 122)
            {
                method97(aClass31_Sub3_Sub2_1307, (byte)-121, anInt961);
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 214)
            {
                int i6 = aClass31_Sub3_Sub2_1307.method442(-13491);
                int k13 = aClass31_Sub3_Sub2_1307.method442(-13491);
                String s6 = aClass31_Sub3_Sub2_1307.method429();
                if(i6 >= 1 && i6 <= 5)
                {
                    if(s6.equalsIgnoreCase("null"))
                        s6 = null;
                    aStringArray1150[i6 - 1] = s6;
                    aBooleanArray1151[i6 - 1] = k13 == 0;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 26)
            {
                int j6 = aClass31_Sub3_Sub2_1307.method424();
                int l13 = aClass31_Sub3_Sub2_1307.method450(aBoolean1136);
                Class30 class30_3 = Class30.method339(l13);
                if(class30_3 != null && class30_3.anInt435 == 0)
                {
                    if(j6 < 0)
                        j6 = 0;
                    if(j6 > class30_3.anInt434 - class30_3.anInt452)
                        j6 = class30_3.anInt434 - class30_3.anInt452;
                    class30_3.anInt460 = j6;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 127)
            {
                anInt1014 = aClass31_Sub3_Sub2_1307.method422();
                aBoolean1315 = true;
                aBoolean909 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 28)
            {
                int k6 = aClass31_Sub3_Sub2_1307.method449(-30785);
                boolean flag = aClass31_Sub3_Sub2_1307.method441(false) == 1;
                Class30.method339(k6).aBoolean462 = flag;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 177)
            {
                int l6 = aClass31_Sub3_Sub2_1307.method425();
                int i14 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                Class30 class30_4 = Class30.method339(i14);
                if(class30_4.anInt464 != l6 || l6 == -1)
                {
                    class30_4.anInt464 = l6;
                    class30_4.anInt442 = 0;
                    class30_4.anInt449 = 0;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 33)
            {
                int i7 = aClass31_Sub3_Sub2_1307.method452((byte)1);
                if(i7 >= 0)
                    method127(47243, i7);
                if(i7 != anInt1160)
                {
                    method150(3, anInt1160);
                    anInt1160 = i7;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 17)
            {
                int j7 = aClass31_Sub3_Sub2_1307.method424();
                int j14 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                int j19 = j14 >> 10 & 0x1f;
                int j23 = j14 >> 5 & 0x1f;
                int k25 = j14 & 0x1f;
                Class30.method339(j7).anInt410 = (j19 << 19) + (j23 << 11) + (k25 << 3);
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 172)
            {
                int k7 = aClass31_Sub3_Sub2_1307.method424();
                Class30.method339(k7).anInt436 = 3;
                if(aClass31_Sub3_Sub3_Sub4_Sub2_885.aClass45_1731 == null)
                    Class30.method339(k7).anInt437 = (aClass31_Sub3_Sub3_Sub4_Sub2_885.anIntArray1727[0] << 25) + (aClass31_Sub3_Sub3_Sub4_Sub2_885.anIntArray1727[4] << 20) + (aClass31_Sub3_Sub3_Sub4_Sub2_885.anIntArray1716[0] << 15) + (aClass31_Sub3_Sub3_Sub4_Sub2_885.anIntArray1716[8] << 10) + (aClass31_Sub3_Sub3_Sub4_Sub2_885.anIntArray1716[11] << 5) + aClass31_Sub3_Sub3_Sub4_Sub2_885.anIntArray1716[1];
                else
                    Class30.method339(k7).anInt437 = (int)(0x12345678L + aClass31_Sub3_Sub3_Sub4_Sub2_885.aClass45_1731.aLong681);
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 182)
            {
                anInt998 = anInt960 / 8;
                for(int l7 = 0; l7 < anInt998; l7++)
                    aLongArray1131[l7] = aClass31_Sub3_Sub2_1307.method428(true);

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 234)
            {
                aBoolean829 = false;
                anInt823 = 2;
                aString1199 = "";
                aBoolean1289 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 190)
            {
                method71(-852);
                anInt961 = -1;
                return false;
            }
            if(anInt961 == 167)
            {
                int i8 = aClass31_Sub3_Sub2_1307.method424();
                int k14 = aClass31_Sub3_Sub2_1307.method424();
                int k19 = aClass31_Sub3_Sub2_1307.method449(-30785);
                Class30.method339(k19).anInt458 = (k14 << 16) + i8;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 99)
            {
                int j8 = aClass31_Sub3_Sub2_1307.method449(-30785);
                method127(47243, j8);
                if(anInt1206 != -1)
                {
                    method150(3, anInt1206);
                    anInt1206 = -1;
                    aBoolean1315 = true;
                    aBoolean909 = true;
                }
                if(anInt900 != -1)
                {
                    method150(3, anInt900);
                    anInt900 = -1;
                    aBoolean835 = true;
                }
                if(anInt889 != -1)
                {
                    method150(3, anInt889);
                    anInt889 = -1;
                }
                if(anInt1303 != -1)
                {
                    method150(3, anInt1303);
                    anInt1303 = -1;
                }
                if(anInt1129 != j8)
                {
                    method150(3, anInt1129);
                    anInt1129 = j8;
                }
                aBoolean1052 = false;
                aBoolean1289 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 213)
            {
                int k8 = aClass31_Sub3_Sub2_1307.method424();
                int l14 = aClass31_Sub3_Sub2_1307.method422();
                int i20 = aClass31_Sub3_Sub2_1307.method424();
                if(i20 == 65535)
                {
                    if(anInt1182 < 50)
                    {
                        anIntArray1074[anInt1182] = (short)k8;
                        anIntArray1159[anInt1182] = l14;
                        anIntArray1198[anInt1182] = 0;
                        anInt1182++;
                    }
                } else
                if(aBoolean1154 && !aBoolean979 && anInt1182 < 50)
                {
                    anIntArray1074[anInt1182] = k8;
                    anIntArray1159[anInt1182] = l14;
                    anIntArray1198[anInt1182] = i20 + Class25.anIntArray371[k8];
                    anInt1182++;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 9)
            {
                int l8 = aClass31_Sub3_Sub2_1307.method450(aBoolean1136);
                Class30 class30_2 = Class30.method339(l8);
                for(int j20 = 0; j20 < class30_2.anIntArray406.length; j20++)
                {
                    class30_2.anIntArray406[j20] = -1;
                    class30_2.anIntArray406[j20] = 0;
                }

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 133)
            {
                anInt940 = aClass31_Sub3_Sub2_1307.method422();
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 35)
            {
                aBoolean829 = false;
                anInt823 = 1;
                aString1199 = "";
                aBoolean1289 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 196)
            {
                int i9 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                int i15 = aClass31_Sub3_Sub2_1307.method424();
                method127(47243, i15);
                if(i9 != -1)
                    method127(47243, i9);
                if(anInt1303 != -1)
                {
                    method150(3, anInt1303);
                    anInt1303 = -1;
                }
                if(anInt1206 != -1)
                {
                    method150(3, anInt1206);
                    anInt1206 = -1;
                }
                if(anInt1129 != -1)
                {
                    method150(3, anInt1129);
                    anInt1129 = -1;
                }
                if(anInt900 != i15)
                {
                    method150(3, anInt900);
                    anInt900 = i15;
                }
                if(anInt889 != i15)
                {
                    method150(3, anInt889);
                    anInt889 = i9;
                }
                anInt823 = 0;
                aBoolean1052 = false;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 124)
            {
                method120((byte)8, aClass31_Sub3_Sub2_1307, anInt960);
                aBoolean898 = false;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 142)
            {
                String s1 = aClass31_Sub3_Sub2_1307.method429();
                int j15 = aClass31_Sub3_Sub2_1307.method424();
                Class30.method339(j15).aString441 = s1;
                if(Class30.method339(j15).anInt432 == anIntArray1110[anInt1014])
                    aBoolean1315 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 57)
            {
                anInt1217 = aClass31_Sub3_Sub2_1307.method440((byte)104);
                anInt1216 = aClass31_Sub3_Sub2_1307.method440((byte)104);
                while(aClass31_Sub3_Sub2_1307.anInt1440 < anInt960) 
                {
                    int j9 = aClass31_Sub3_Sub2_1307.method422();
                    method97(aClass31_Sub3_Sub2_1307, (byte)-121, j9);
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 227)
            {
                anInt918 = aClass31_Sub3_Sub2_1307.method422();
                if(anInt918 == anInt1014)
                {
                    if(anInt918 == 3)
                        anInt1014 = 1;
                    else
                        anInt1014 = 3;
                    aBoolean1315 = true;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 103)
            {
                aBoolean1127 = true;
                anInt1316 = aClass31_Sub3_Sub2_1307.method422();
                anInt1317 = aClass31_Sub3_Sub2_1307.method422();
                anInt1318 = aClass31_Sub3_Sub2_1307.method424();
                anInt1319 = aClass31_Sub3_Sub2_1307.method422();
                anInt1320 = aClass31_Sub3_Sub2_1307.method422();
                if(anInt1320 >= 100)
                {
                    int k9 = anInt1316 * 128 + 64;
                    int k15 = anInt1317 * 128 + 64;
                    int k20 = method143(k9, 0, anInt981, k15) - anInt1318;
                    int k23 = k9 - anInt1201;
                    int l25 = k20 - anInt1202;
                    int j28 = k15 - anInt1203;
                    int j30 = (int)Math.sqrt(k23 * k23 + j28 * j28);
                    anInt1204 = (int)(Math.atan2(l25, j30) * 325.94900000000001D) & 0x7ff;
                    anInt1205 = (int)(Math.atan2(k23, j28) * -325.94900000000001D) & 0x7ff;
                    if(anInt1204 < 128)
                        anInt1204 = 128;
                    if(anInt1204 > 383)
                        anInt1204 = 383;
                }
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 102)
            {
                anInt1162 = aClass31_Sub3_Sub2_1307.method422();
                aBoolean1315 = true;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 6)
            {
                anInt1167 = aClass31_Sub3_Sub2_1307.method448((byte)56) * 30;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 67)
            {
                for(int l9 = 0; l9 < anIntArray1111.length; l9++)
                    if(anIntArray1111[l9] != anIntArray1114[l9])
                    {
                        anIntArray1111[l9] = anIntArray1114[l9];
                        method39(l9, 667);
                        aBoolean1315 = true;
                    }

                anInt961 = -1;
                return true;
            }
            if(anInt961 == 169 || anInt961 == 89)
            {
                int i10 = anInt1122;
                int l15 = anInt1123;
                if(anInt961 == 169)
                {
                    l15 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                    i10 = aClass31_Sub3_Sub2_1307.method450(aBoolean1136);
                    aBoolean1068 = false;
                }
                if(anInt961 == 89)
                {
                    l15 = aClass31_Sub3_Sub2_1307.method448((byte)56);
                    aClass31_Sub3_Sub2_1307.method432(-604);
                    for(int l20 = 0; l20 < 4; l20++)
                    {
                        for(int l23 = 0; l23 < 13; l23++)
                        {
                            for(int i26 = 0; i26 < 13; i26++)
                            {
                                int k28 = aClass31_Sub3_Sub2_1307.method433(1, (byte)-50);
                                if(k28 == 1)
                                    anIntArrayArrayArray1258[l20][l23][i26] = aClass31_Sub3_Sub2_1307.method433(26, (byte)-50);
                                else
                                    anIntArrayArrayArray1258[l20][l23][i26] = -1;
                            }

                        }

                    }

                    aClass31_Sub3_Sub2_1307.method434(true);
                    i10 = aClass31_Sub3_Sub2_1307.method424();
                    aBoolean1068 = true;
                }
                if(anInt1122 == i10 && anInt1123 == l15 && anInt1051 == 2)
                {
                    anInt961 = -1;
                    return true;
                }
                anInt1122 = i10;
                anInt1123 = l15;
                anInt929 = (anInt1122 - 6) * 8;
                anInt930 = (anInt1123 - 6) * 8;
                aBoolean1253 = false;
                if((anInt1122 / 8 == 48 || anInt1122 / 8 == 49) && anInt1123 / 8 == 48)
                    aBoolean1253 = true;
                if(anInt1122 / 8 == 48 && anInt1123 / 8 == 148)
                    aBoolean1253 = true;
                anInt1051 = 1;
                aLong1255 = System.currentTimeMillis();
                method72(null, 0, "Loading - please wait.");
                if(anInt961 == 169)
                {
                    int i21 = 0;
                    for(int i24 = (anInt1122 - 6) / 8; i24 <= (anInt1122 + 6) / 8; i24++)
                    {
                        for(int j26 = (anInt1123 - 6) / 8; j26 <= (anInt1123 + 6) / 8; j26++)
                            i21++;

                    }

                    aByteArrayArray1142 = new byte[i21][];
                    aByteArrayArray1248 = new byte[i21][];
                    anIntArray1282 = new int[i21];
                    anIntArray1283 = new int[i21];
                    anIntArray1284 = new int[i21];
                    i21 = 0;
                    for(int k26 = (anInt1122 - 6) / 8; k26 <= (anInt1122 + 6) / 8; k26++)
                    {
                        for(int l28 = (anInt1123 - 6) / 8; l28 <= (anInt1123 + 6) / 8; l28++)
                        {
                            anIntArray1282[i21] = (k26 << 8) + l28;
                            if(aBoolean1253 && (l28 == 49 || l28 == 149 || l28 == 147 || k26 == 50 || k26 == 49 && l28 == 47))
                            {
                                anIntArray1283[i21] = -1;
                                anIntArray1284[i21] = -1;
                                i21++;
                            } else
                            {
                                int k30 = anIntArray1283[i21] = aClass27_Sub1_843.method316(l28, 0, 0, k26);
                                if(k30 != -1)
                                    aClass27_Sub1_843.method320(3, k30);
                                int l31 = anIntArray1284[i21] = aClass27_Sub1_843.method316(l28, 1, 0, k26);
                                if(l31 != -1)
                                    aClass27_Sub1_843.method320(3, l31);
                                i21++;
                            }
                        }

                    }

                }
                if(anInt961 == 89)
                {
                    int j21 = 0;
                    int ai[] = new int[676];
                    for(int l26 = 0; l26 < 4; l26++)
                    {
                        for(int i29 = 0; i29 < 13; i29++)
                        {
                            for(int l30 = 0; l30 < 13; l30++)
                            {
                                int i32 = anIntArrayArrayArray1258[l26][i29][l30];
                                if(i32 != -1)
                                {
                                    int l32 = i32 >> 14 & 0x3ff;
                                    int j33 = i32 >> 3 & 0x7ff;
                                    int i34 = (l32 / 8 << 8) + j33 / 8;
                                    for(int k34 = 0; k34 < j21; k34++)
                                    {
                                        if(ai[k34] != i34)
                                            continue;
                                        i34 = -1;
                                        break;
                                    }

                                    if(i34 != -1)
                                        ai[j21++] = i34;
                                }
                            }

                        }

                    }

                    aByteArrayArray1142 = new byte[j21][];
                    aByteArrayArray1248 = new byte[j21][];
                    anIntArray1282 = new int[j21];
                    anIntArray1283 = new int[j21];
                    anIntArray1284 = new int[j21];
                    for(int j29 = 0; j29 < j21; j29++)
                    {
                        int i31 = anIntArray1282[j29] = ai[j29];
                        int j32 = i31 >> 8 & 0xff;
                        int i33 = i31 & 0xff;
                        int k33 = anIntArray1283[j29] = aClass27_Sub1_843.method316(i33, 0, 0, j32);
                        if(k33 != -1)
                            aClass27_Sub1_843.method320(3, k33);
                        int j34 = anIntArray1284[j29] = aClass27_Sub1_843.method316(i33, 1, 0, j32);
                        if(j34 != -1)
                            aClass27_Sub1_843.method320(3, j34);
                    }

                }
                int k21 = anInt929 - anInt931;
                int j24 = anInt930 - anInt932;
                anInt931 = anInt929;
                anInt932 = anInt930;
                for(int i27 = 0; i27 < 16384; i27++)
                {
                    Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[i27];
                    if(class31_sub3_sub3_sub4_sub1 != null)
                    {
                        for(int j31 = 0; j31 < 10; j31++)
                        {
                            ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anIntArray1633[j31] -= k21;
                            ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anIntArray1634[j31] -= j24;
                        }

                        class31_sub3_sub3_sub4_sub1.anInt1635 -= k21 * 128;
                        class31_sub3_sub3_sub4_sub1.anInt1636 -= j24 * 128;
                    }
                }

                for(int k29 = 0; k29 < anInt966; k29++)
                {
                    Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[k29];
                    if(class31_sub3_sub3_sub4_sub2 != null)
                    {
                        for(int k32 = 0; k32 < 10; k32++)
                        {
                            ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anIntArray1633[k32] -= k21;
                            ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anIntArray1634[k32] -= j24;
                        }

                        class31_sub3_sub3_sub4_sub2.anInt1635 -= k21 * 128;
                        class31_sub3_sub3_sub4_sub2.anInt1636 -= j24 * 128;
                    }
                }

                aBoolean898 = true;
                byte byte1 = 0;
                byte byte2 = 104;
                byte byte3 = 1;
                if(k21 < 0)
                {
                    byte1 = 103;
                    byte2 = -1;
                    byte3 = -1;
                }
                byte byte4 = 0;
                byte byte5 = 104;
                byte byte6 = 1;
                if(j24 < 0)
                {
                    byte4 = 103;
                    byte5 = -1;
                    byte6 = -1;
                }
                for(int l34 = byte1; l34 != byte2; l34 += byte3)
                {
                    for(int i35 = byte4; i35 != byte5; i35 += byte6)
                    {
                        int j35 = l34 + k21;
                        int k35 = i35 + j24;
                        for(int l35 = 0; l35 < 4; l35++)
                            if(j35 >= 0 && k35 >= 0 && j35 < 104 && k35 < 104)
                                aClass28ArrayArrayArray996[l35][l34][i35] = aClass28ArrayArrayArray996[l35][j35][k35];
                            else
                                aClass28ArrayArrayArray996[l35][l34][i35] = null;

                    }

                }

                for(Class31_Sub2 class31_sub2_1 = (Class31_Sub2)aClass28_836.method328(); class31_sub2_1 != null; class31_sub2_1 = (Class31_Sub2)aClass28_836.method330(-582))
                {
                    class31_sub2_1.anInt1397 -= k21;
                    class31_sub2_1.anInt1398 -= j24;
                    if(class31_sub2_1.anInt1397 < 0 || class31_sub2_1.anInt1398 < 0 || class31_sub2_1.anInt1397 >= 104 || class31_sub2_1.anInt1398 >= 104)
                        class31_sub2_1.method343();
                }

                if(anInt982 != 0)
                {
                    anInt982 -= k21;
                    anInt983 -= j24;
                }
                aBoolean1127 = false;
                anInt961 = -1;
                return true;
            }
            if(anInt961 == 161)
            {
                int j10 = aClass31_Sub3_Sub2_1307.method424();
                int i16 = aClass31_Sub3_Sub2_1307.method424();
                if(anInt1129 != -1)
                {
                    method150(3, anInt1129);
                    anInt1129 = -1;
                    aBoolean1289 = true;
                }
                if(anInt900 != -1)
                {
                    method150(3, anInt900);
                    anInt900 = -1;
                    aBoolean835 = true;
                }
                if(anInt889 != -1)
                {
                    method150(3, anInt889);
                    anInt889 = -1;
                }
                if(anInt1303 != i16)
                {
                    method150(3, anInt1303);
                    anInt1303 = i16;
                }
                if(anInt1206 != j10)
                {
                    method150(3, anInt1206);
                    anInt1206 = j10;
                }
                if(anInt823 != 0)
                {
                    anInt823 = 0;
                    aBoolean1289 = true;
                }
                aBoolean1315 = true;
                aBoolean909 = true;
                aBoolean1052 = false;
                anInt961 = -1;
                return true;
            }
            signlink.reporterror("T1 - " + anInt961 + "," + anInt960 + " - " + anInt905 + "," + anInt906);
            method71(-852);
        }
        catch(IOException _ex)
        {
            method40(false);
        }
        catch(Exception exception)
        {
            String s2 = "T2 - " + anInt961 + "," + anInt905 + "," + anInt906 + " - " + anInt960 + "," + (anInt929 + ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0]) + "," + (anInt930 + ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0]) + " - ";
            for(int j16 = 0; j16 < anInt960 && j16 < 50; j16++)
                s2 = s2 + aClass31_Sub3_Sub2_1307.aByteArray1439[j16] + ",";

            signlink.reporterror(s2);
            method71(-852);
        }
        return true;
    }

    public void method83(boolean flag, int i)
    {
        method32(true);
        while(i >= 0) 
            method6();
        aClass15_1004.method213(0);
        aClass31_Sub3_Sub1_Sub3_1053.method392(-4899, 0, 0);
        char c = '\u0168';
        char c1 = '\310';
        if(anInt989 == 0)
        {
            int j = c1 / 2 + 80;
            aClass31_Sub3_Sub1_Sub4_1234.method396(true, aClass27_Sub1_843.aString1364, aByte1113, 0x75a9a9, j, c / 2);
            j = c1 / 2 - 20;
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "Welcome to RuneScape", aByte1113, 0xffff00, j, c / 2);
            j += 30;
            int i1 = c / 2 - 80;
            int l1 = c1 / 2 + 20;
            aClass31_Sub3_Sub1_Sub3_1054.method392(-4899, i1 - 73, l1 - 20);
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "New User", aByte1113, 0xffffff, l1 + 5, i1);
            i1 = c / 2 + 80;
            aClass31_Sub3_Sub1_Sub3_1054.method392(-4899, i1 - 73, l1 - 20);
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "Existing User", aByte1113, 0xffffff, l1 + 5, i1);
        }
        if(anInt989 == 2)
        {
            int k = c1 / 2 - 40;
            if(aString854.length() > 0)
            {
                aClass31_Sub3_Sub1_Sub4_1236.method396(true, aString854, aByte1113, 0xffff00, k - 15, c / 2);
                aClass31_Sub3_Sub1_Sub4_1236.method396(true, aString855, aByte1113, 0xffff00, k, c / 2);
                k += 30;
            } else
            {
                aClass31_Sub3_Sub1_Sub4_1236.method396(true, aString855, aByte1113, 0xffff00, k - 7, c / 2);
                k += 30;
            }
            aClass31_Sub3_Sub1_Sub4_1236.method403(0xffffff, "Username: " + aString1211 + ((anInt1026 == 0) & (anInt935 % 40 < 20) ? "@yel@|" : ""), true, c / 2 - 90, aBoolean861, k);
            k += 15;
            aClass31_Sub3_Sub1_Sub4_1236.method403(0xffffff, "Password: " + Class26.method302(aString1212, 3) + ((anInt1026 == 1) & (anInt935 % 40 < 20) ? "@yel@|" : ""), true, c / 2 - 88, aBoolean861, k);
            k += 15;
            if(!flag)
            {
                int j1 = c / 2 - 80;
                int i2 = c1 / 2 + 50;
                aClass31_Sub3_Sub1_Sub3_1054.method392(-4899, j1 - 73, i2 - 20);
                aClass31_Sub3_Sub1_Sub4_1236.method396(true, "Login", aByte1113, 0xffffff, i2 + 5, j1);
                j1 = c / 2 + 80;
                aClass31_Sub3_Sub1_Sub3_1054.method392(-4899, j1 - 73, i2 - 20);
                aClass31_Sub3_Sub1_Sub4_1236.method396(true, "Cancel", aByte1113, 0xffffff, i2 + 5, j1);
            }
        }
        if(anInt989 == 3)
        {
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "Create a free account", aByte1113, 0xffff00, c1 / 2 - 60, c / 2);
            int l = c1 / 2 - 35;
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "To create a new account you need to", aByte1113, 0xffffff, l, c / 2);
            l += 15;
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "go back to the main RuneScape webpage", aByte1113, 0xffffff, l, c / 2);
            l += 15;
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "and choose the 'create account'", aByte1113, 0xffffff, l, c / 2);
            l += 15;
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "button near the top of that page.", aByte1113, 0xffffff, l, c / 2);
            l += 15;
            int k1 = c / 2;
            int j2 = c1 / 2 + 50;
            aClass31_Sub3_Sub1_Sub3_1054.method392(-4899, k1 - 73, j2 - 20);
            aClass31_Sub3_Sub1_Sub4_1236.method396(true, "Cancel", aByte1113, 0xffffff, j2 + 5, k1);
        }
        aClass15_1004.method214(super.aGraphics15, 202, 0, 171);
        if(aBoolean835)
        {
            aBoolean835 = false;
            aClass15_1002.method214(super.aGraphics15, 128, 0, 0);
            aClass15_1003.method214(super.aGraphics15, 202, 0, 371);
            aClass15_1007.method214(super.aGraphics15, 0, 0, 265);
            aClass15_1008.method214(super.aGraphics15, 562, 0, 265);
            aClass15_1009.method214(super.aGraphics15, 128, 0, 171);
            aClass15_1010.method214(super.aGraphics15, 562, 0, 171);
        }
    }

    public int method84(int i, byte byte0, Class30 class30)
    {
        if(byte0 != 0)
            anInt961 = -1;
        if(class30.anIntArrayArray451 == null || i >= class30.anIntArrayArray451.length)
            return -2;
        try
        {
            int ai[] = class30.anIntArrayArray451[i];
            int j = 0;
            int k = 0;
            int l = 0;
            do
            {
                int i1 = ai[k++];
                int j1 = 0;
                byte byte1 = 0;
                if(i1 == 0)
                    return j;
                if(i1 == 1)
                    j1 = anIntArray939[ai[k++]];
                if(i1 == 2)
                    j1 = anIntArray840[ai[k++]];
                if(i1 == 3)
                    j1 = anIntArray1085[ai[k++]];
                if(i1 == 4)
                {
                    Class30 class30_1 = Class30.method339(ai[k++]);
                    int j2 = ai[k++];
                    if(j2 >= 0 && j2 < Class41.anInt616 && (!Class41.method577(j2).aBoolean639 || aBoolean978))
                    {
                        for(int i3 = 0; i3 < class30_1.anIntArray406.length; i3++)
                            if(class30_1.anIntArray406[i3] == j2 + 1)
                                j1 += class30_1.anIntArray411[i3];

                    }
                }
                if(i1 == 5)
                    j1 = anIntArray1111[ai[k++]];
                if(i1 == 6)
                    j1 = anIntArray1062[anIntArray840[ai[k++]] - 1];
                if(i1 == 7)
                    j1 = (anIntArray1111[ai[k++]] * 100) / 46875;
                if(i1 == 8)
                    j1 = aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1714;
                if(i1 == 9)
                {
                    for(int k1 = 0; k1 < Class38.anInt571; k1++)
                        if(Class38.aBooleanArray573[k1])
                            j1 += anIntArray840[k1];

                }
                if(i1 == 10)
                {
                    Class30 class30_2 = Class30.method339(ai[k++]);
                    int k2 = ai[k++] + 1;
                    if(k2 >= 0 && k2 < Class41.anInt616 && (!Class41.method577(k2).aBoolean639 || aBoolean978))
                    {
                        for(int j3 = 0; j3 < class30_2.anIntArray406.length; j3++)
                        {
                            if(class30_2.anIntArray406[j3] != k2)
                                continue;
                            j1 = 0x3b9ac9ff;
                            break;
                        }

                    }
                }
                if(i1 == 11)
                    j1 = anInt1269;
                if(i1 == 12)
                    j1 = anInt1023;
                if(i1 == 13)
                {
                    int l1 = anIntArray1111[ai[k++]];
                    int l2 = ai[k++];
                    j1 = (l1 & 1 << l2) == 0 ? 0 : 1;
                }
                if(i1 == 14)
                {
                    int i2 = ai[k++];
                    Class13 class13 = Class13.aClass13Array218[i2];
                    int k3 = class13.anInt220;
                    int l3 = class13.anInt221;
                    int i4 = class13.anInt222;
                    int j4 = anIntArray1305[i4 - l3];
                    j1 = anIntArray1111[k3] >> l3 & j4;
                }
                if(i1 == 15)
                    byte1 = 1;
                if(i1 == 16)
                    byte1 = 2;
                if(i1 == 17)
                    byte1 = 3;
                if(i1 == 18)
                    j1 = (((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 >> 7) + anInt929;
                if(i1 == 19)
                    j1 = (((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 >> 7) + anInt930;
                if(i1 == 20)
                    j1 = ai[k++];
                if(byte1 == 0)
                {
                    if(l == 0)
                        j += j1;
                    if(l == 1)
                        j -= j1;
                    if(l == 2 && j1 != 0)
                        j /= j1;
                    if(l == 3)
                        j *= j1;
                    l = 0;
                } else
                {
                    l = byte1;
                }
            } while(true);
        }
        catch(Exception _ex)
        {
            return -1;
        }
    }

    public void method85(int i, int j)
    {
        if(i < 0)
            return;
        int k = anIntArray1015[i];
        int l = anIntArray1016[i];
        int i1 = anIntArray1017[i];
        int j1 = anIntArray1018[i];
        j = 40 / j;
        if(i1 >= 2000)
            i1 -= 2000;
        if(anInt823 != 0 && i1 != 1321)
        {
            anInt823 = 0;
            aBoolean1289 = true;
        }
        if(i1 == 972)
        {
            boolean flag = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            if(!flag)
                flag = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, k);
            anInt844 = super.anInt30;
            anInt845 = super.anInt31;
            anInt847 = 2;
            anInt846 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 77);
            aClass31_Sub3_Sub2_853.method445(k + anInt929, false);
            aClass31_Sub3_Sub2_853.method413(j1);
            aClass31_Sub3_Sub2_853.method447(6, l + anInt930);
        }
        if(i1 == 915)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 52);
            aClass31_Sub3_Sub2_853.method413(l);
            Class30 class30 = Class30.method339(l);
            if(class30.anIntArrayArray451 != null && class30.anIntArrayArray451[0][0] == 5)
            {
                int l1 = class30.anIntArrayArray451[0][1];
                if(anIntArray1111[l1] != class30.anIntArray404[0])
                {
                    anIntArray1111[l1] = class30.anIntArray404[0];
                    method39(l1, 667);
                    aBoolean1315 = true;
                }
            }
        }
        if(i1 == 564)
        {
            String s = aStringArray1208[i];
            int i2 = s.indexOf("@whi@");
            if(i2 != -1)
                if(anInt1303 == -1)
                {
                    method18(0);
                    aString992 = s.substring(i2 + 5).trim();
                    aBoolean1171 = false;
                    anInt1108 = anInt1303 = Class30.anInt401;
                } else
                {
                    method66("Please close the interface you have open before using 'report abuse'", "", 0, -39349);
                }
        }
        if(i1 == 1161)
        {
            method100(true, k, j1, l);
            aClass31_Sub3_Sub2_853.method411(7793, 86);
            aClass31_Sub3_Sub2_853.method413(k + anInt929);
            aClass31_Sub3_Sub2_853.method413(l + anInt930);
            aClass31_Sub3_Sub2_853.method446(j1 >> 14 & 0x7fff, (byte)1);
        }
        if(i1 == 455 || i1 == 899)
        {
            String s1 = aStringArray1208[i];
            int j2 = s1.indexOf("@whi@");
            if(j2 != -1)
            {
                s1 = s1.substring(j2 + 5).trim();
                String s7 = Class26.method301(true, Class26.method298(359, Class26.method297(s1)));
                boolean flag8 = false;
                for(int j3 = 0; j3 < anInt969; j3++)
                {
                    Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_7 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anIntArray970[j3]];
                    if(class31_sub3_sub3_sub4_sub2_7 == null || class31_sub3_sub3_sub4_sub2_7.aString1729 == null || !class31_sub3_sub3_sub4_sub2_7.aString1729.equalsIgnoreCase(s7))
                        continue;
                    method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_7)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_7)).anIntArray1633[0]);
                    if(i1 == 455)
                    {
                        aClass31_Sub3_Sub2_853.method411(7793, 26);
                        aClass31_Sub3_Sub2_853.method445(anIntArray970[j3], false);
                    }
                    if(i1 == 899)
                    {
                        aClass31_Sub3_Sub2_853.method411(7793, 48);
                        aClass31_Sub3_Sub2_853.method445(anIntArray970[j3], false);
                    }
                    flag8 = true;
                    break;
                }

                if(!flag8)
                    method66("Unable to find " + s7, "", 0, -39349);
            }
        }
        if(i1 == 971)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 221);
            aClass31_Sub3_Sub2_853.method447(6, l);
            aClass31_Sub3_Sub2_853.method447(6, k);
            aClass31_Sub3_Sub2_853.method447(6, j1);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 273)
        {
            anInt953 += k;
            if(anInt953 >= 67)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 57);
                aClass31_Sub3_Sub2_853.method415(0x38c86b);
                anInt953 = 0;
            }
            aClass31_Sub3_Sub2_853.method411(7793, 91);
            aClass31_Sub3_Sub2_853.method447(6, k);
            aClass31_Sub3_Sub2_853.method447(6, l);
            aClass31_Sub3_Sub2_853.method445(j1, false);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 402)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 59);
            aClass31_Sub3_Sub2_853.method413(j1);
            aClass31_Sub3_Sub2_853.method413(anInt944);
            aClass31_Sub3_Sub2_853.method445(anInt946, false);
            aClass31_Sub3_Sub2_853.method446(k, (byte)1);
            aClass31_Sub3_Sub2_853.method445(anInt945, false);
            aClass31_Sub3_Sub2_853.method446(l, (byte)1);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 213)
        {
            method100(true, k, j1, l);
            aClass31_Sub3_Sub2_853.method411(7793, 126);
            aClass31_Sub3_Sub2_853.method446(k + anInt929, (byte)1);
            aClass31_Sub3_Sub2_853.method413(j1 >> 14 & 0x7fff);
            aClass31_Sub3_Sub2_853.method413(l + anInt930);
        }
        if(i1 == 151)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 140);
                aClass31_Sub3_Sub2_853.method413(anInt946);
                aClass31_Sub3_Sub2_853.method447(6, j1);
                aClass31_Sub3_Sub2_853.method447(6, anInt944);
                aClass31_Sub3_Sub2_853.method447(6, anInt945);
            }
        }
        if(i1 == 308 || i1 == 502 || i1 == 760 || i1 == 831)
        {
            String s2 = aStringArray1208[i];
            int k2 = s2.indexOf("@whi@");
            if(k2 != -1)
            {
                long l3 = Class26.method297(s2.substring(k2 + 5).trim());
                if(i1 == 308)
                    method46((byte)5, l3);
                if(i1 == 502)
                    method81(l3, 954);
                if(i1 == 760)
                    method101((byte)117, l3);
                if(i1 == 831)
                    method108(5, l3);
            }
        }
        if(i1 == 776)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1_1 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_1)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_1)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                anInt986 += j1;
                if(anInt986 >= 141)
                {
                    aClass31_Sub3_Sub2_853.method411(7793, 109);
                    aClass31_Sub3_Sub2_853.method416(0);
                    anInt986 = 0;
                }
                aClass31_Sub3_Sub2_853.method411(7793, 135);
                aClass31_Sub3_Sub2_853.method413(j1);
            }
        }
        if(i1 == 72)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j1];
            if(class31_sub3_sub3_sub4_sub2 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 222);
                aClass31_Sub3_Sub2_853.method413(j1);
            }
        }
        if(i1 == 368)
        {
            boolean flag1 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            if(!flag1)
                flag1 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, k);
            anInt844 = super.anInt30;
            anInt845 = super.anInt31;
            anInt847 = 2;
            anInt846 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 181);
            aClass31_Sub3_Sub2_853.method446(l + anInt930, (byte)1);
            aClass31_Sub3_Sub2_853.method446(k + anInt929, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, j1);
        }
        if(i1 == 652)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 52);
            aClass31_Sub3_Sub2_853.method413(l);
            Class30 class30_1 = Class30.method339(l);
            if(class30_1.anIntArrayArray451 != null && class30_1.anIntArrayArray451[0][0] == 5)
            {
                int l2 = class30_1.anIntArrayArray451[0][1];
                anIntArray1111[l2] = 1 - anIntArray1111[l2];
                method39(l2, 667);
                aBoolean1315 = true;
            }
        }
        if(i1 == 114)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_1 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j1];
            if(class31_sub3_sub3_sub4_sub2_1 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_1)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_1)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 193);
                aClass31_Sub3_Sub2_853.method446(j1, (byte)1);
                aClass31_Sub3_Sub2_853.method447(6, anInt949);
            }
        }
        if(i1 == 37 && method100(true, k, j1, l))
        {
            aClass31_Sub3_Sub2_853.method411(7793, 18);
            aClass31_Sub3_Sub2_853.method446(anInt945, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, l + anInt930);
            aClass31_Sub3_Sub2_853.method447(6, j1 >> 14 & 0x7fff);
            aClass31_Sub3_Sub2_853.method446(anInt946, (byte)1);
            aClass31_Sub3_Sub2_853.method445(k + anInt929, false);
            aClass31_Sub3_Sub2_853.method445(anInt944, false);
        }
        if(i1 == 220)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 206);
            aClass31_Sub3_Sub2_853.method447(6, k);
            aClass31_Sub3_Sub2_853.method445(l, false);
            aClass31_Sub3_Sub2_853.method446(j1, (byte)1);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 43 && !aBoolean1052)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 177);
            aClass31_Sub3_Sub2_853.method413(l);
            aBoolean1052 = true;
        }
        if(i1 == 132)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_2 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1_2 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_2)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_2)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                anInt1219++;
                if(anInt1219 >= 129)
                {
                    aClass31_Sub3_Sub2_853.method411(7793, 130);
                    aClass31_Sub3_Sub2_853.method416(0);
                    anInt1219 = 0;
                }
                aClass31_Sub3_Sub2_853.method411(7793, 60);
                aClass31_Sub3_Sub2_853.method447(6, j1);
            }
        }
        if(i1 == 581)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_3 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1_3 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_3)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_3)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 95);
                aClass31_Sub3_Sub2_853.method413(anInt949);
                aClass31_Sub3_Sub2_853.method445(j1, false);
            }
        }
        if(i1 == 85)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j1];
            if(class31_sub3_sub3_sub4_sub2_2 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_2)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_2)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 48);
                aClass31_Sub3_Sub2_853.method445(j1, false);
            }
        }
        if(i1 == 924)
        {
            boolean flag2 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            if(!flag2)
                flag2 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, k);
            anInt844 = super.anInt30;
            anInt845 = super.anInt31;
            anInt847 = 2;
            anInt846 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 210);
            aClass31_Sub3_Sub2_853.method446(k + anInt929, (byte)1);
            aClass31_Sub3_Sub2_853.method413(anInt949);
            aClass31_Sub3_Sub2_853.method447(6, l + anInt930);
            aClass31_Sub3_Sub2_853.method413(j1);
        }
        if(i1 == 565)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_4 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1_4 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_4)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_4)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 186);
                aClass31_Sub3_Sub2_853.method446(j1, (byte)1);
            }
        }
        if(i1 == 1094)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_5 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1_5 != null)
            {
                Class45 class45 = class31_sub3_sub3_sub4_sub1_5.aClass45_1711;
                if(class45.anIntArray696 != null)
                    class45 = class45.method595(7);
                if(class45 != null)
                {
                    String s8;
                    if(class45.aByteArray701 != null)
                        s8 = new String(class45.aByteArray701);
                    else
                        s8 = "It's a " + class45.aString691 + ".";
                    method66(s8, "", 0, -39349);
                }
            }
        }
        if(i1 == 138)
        {
            anInt943 = 1;
            anInt944 = k;
            anInt945 = l;
            anInt946 = j1;
            aString947 = Class41.method577(j1).aString650;
            anInt948 = 0;
            aBoolean1315 = true;
            return;
        }
        if(i1 == 496)
        {
            Class30 class30_2 = Class30.method339(l);
            boolean flag7 = true;
            if(class30_2.anInt399 > 0)
                flag7 = method69(class30_2, 12768);
            if(flag7)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 52);
                aClass31_Sub3_Sub2_853.method413(l);
            }
        }
        if(i1 == 364)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 156);
            aClass31_Sub3_Sub2_853.method447(6, l);
            aClass31_Sub3_Sub2_853.method445(k, false);
            aClass31_Sub3_Sub2_853.method447(6, j1);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 168)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 23);
            aClass31_Sub3_Sub2_853.method413(j1);
            aClass31_Sub3_Sub2_853.method445(l, false);
            aClass31_Sub3_Sub2_853.method446(k, (byte)1);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 1759)
        {
            Class41 class41 = Class41.method577(j1);
            Class30 class30_4 = Class30.method339(l);
            String s4;
            if(class30_4 != null && class30_4.anIntArray411[k] >= 0x186a0)
                s4 = class30_4.anIntArray411[k] + " x " + class41.aString650;
            else
            if(class41.aByteArray630 != null)
                s4 = new String(class41.aByteArray630);
            else
                s4 = "It's a " + class41.aString650 + ".";
            method66(s4, "", 0, -39349);
        }
        if(i1 == 894 && method100(true, k, j1, l))
        {
            aClass31_Sub3_Sub2_853.method411(7793, 237);
            aClass31_Sub3_Sub2_853.method446(k + anInt929, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, l + anInt930);
            aClass31_Sub3_Sub2_853.method446(anInt949, (byte)1);
            aClass31_Sub3_Sub2_853.method446(j1 >> 14 & 0x7fff, (byte)1);
        }
        if(i1 == 224)
        {
            if((k & 3) == 0)
                anInt882++;
            if(anInt882 >= 128)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 58);
                aClass31_Sub3_Sub2_853.method416(0);
                anInt882 = 0;
            }
            method100(true, k, j1, l);
            aClass31_Sub3_Sub2_853.method411(7793, 99);
            aClass31_Sub3_Sub2_853.method445(j1 >> 14 & 0x7fff, false);
            aClass31_Sub3_Sub2_853.method413(l + anInt930);
            aClass31_Sub3_Sub2_853.method447(6, k + anInt929);
        }
        if(i1 == 377)
        {
            anInt1207 += j1;
            if(anInt1207 >= 130)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 90);
                aClass31_Sub3_Sub2_853.method416(0);
                anInt1207 = 0;
            }
            aClass31_Sub3_Sub2_853.method411(7793, 31);
            aClass31_Sub3_Sub2_853.method446(k, (byte)1);
            aClass31_Sub3_Sub2_853.method445(j1, false);
            aClass31_Sub3_Sub2_853.method413(l);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 989)
        {
            boolean flag3 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            if(!flag3)
                flag3 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, k);
            anInt844 = super.anInt30;
            anInt845 = super.anInt31;
            anInt847 = 2;
            anInt846 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 236);
            aClass31_Sub3_Sub2_853.method446(l + anInt930, (byte)1);
            aClass31_Sub3_Sub2_853.method446(anInt946, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, j1);
            aClass31_Sub3_Sub2_853.method446(k + anInt929, (byte)1);
            aClass31_Sub3_Sub2_853.method446(anInt945, (byte)1);
            aClass31_Sub3_Sub2_853.method446(anInt944, (byte)1);
        }
        if(i1 == 262)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_3 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j1];
            if(class31_sub3_sub3_sub4_sub2_3 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_3)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_3)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 235);
                aClass31_Sub3_Sub2_853.method445(j1, false);
            }
        }
        if(i1 == 716)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_4 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j1];
            if(class31_sub3_sub3_sub4_sub2_4 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_4)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_4)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 114);
                aClass31_Sub3_Sub2_853.method447(6, j1);
            }
        }
        if(i1 == 158)
            if(!aBoolean1268)
                aClass34_937.method549(super.anInt31 - 4, super.anInt30 - 4, 4);
            else
                aClass34_937.method549(l - 4, k - 4, 4);
        if(i1 == 619)
        {
            Class30 class30_3 = Class30.method339(l);
            anInt948 = 1;
            anInt949 = l;
            anInt950 = class30_3.anInt457;
            anInt943 = 0;
            aBoolean1315 = true;
            String s5 = class30_3.aString413;
            if(s5.indexOf(" ") != -1)
                s5 = s5.substring(0, s5.indexOf(" "));
            String s9 = class30_3.aString413;
            if(s9.indexOf(" ") != -1)
                s9 = s9.substring(s9.indexOf(" ") + 1);
            aString951 = s5 + " " + class30_3.aString395 + " " + s9;
            if(anInt950 == 16)
            {
                aBoolean1315 = true;
                anInt1014 = 3;
                aBoolean909 = true;
            }
            return;
        }
        if(i1 == 34)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 211);
            aClass31_Sub3_Sub2_853.method446(j1, (byte)1);
            aClass31_Sub3_Sub2_853.method446(k, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, l);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 987)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 226);
            aClass31_Sub3_Sub2_853.method446(anInt949, (byte)1);
            aClass31_Sub3_Sub2_853.method445(k, false);
            aClass31_Sub3_Sub2_853.method445(j1, false);
            aClass31_Sub3_Sub2_853.method445(l, false);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 964)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_5 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j1];
            if(class31_sub3_sub3_sub4_sub2_5 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_5)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_5)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 219);
                aClass31_Sub3_Sub2_853.method413(anInt945);
                aClass31_Sub3_Sub2_853.method413(anInt944);
                aClass31_Sub3_Sub2_853.method445(anInt946, false);
                aClass31_Sub3_Sub2_853.method445(j1, false);
            }
        }
        if(i1 == 855)
        {
            aClass31_Sub3_Sub2_853.method411(7793, 82);
            aClass31_Sub3_Sub2_853.method447(6, l);
            aClass31_Sub3_Sub2_853.method446(j1, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, k);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 1876)
        {
            Class41 class41_1 = Class41.method577(j1);
            String s6;
            if(class41_1.aByteArray630 != null)
                s6 = new String(class41_1.aByteArray630);
            else
                s6 = "It's a " + class41_1.aString650 + ".";
            method66(s6, "", 0, -39349);
        }
        if(i1 == 705)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_6 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1_6 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_6)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_6)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 255);
                aClass31_Sub3_Sub2_853.method446(j1, (byte)1);
            }
        }
        if(i1 == 181)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_7 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j1];
            if(class31_sub3_sub3_sub4_sub1_7 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_7)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_7)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 168);
                aClass31_Sub3_Sub2_853.method446(j1, (byte)1);
            }
        }
        if(i1 == 678)
        {
            String s3 = aStringArray1208[i];
            int i3 = s3.indexOf("@whi@");
            if(i3 != -1)
            {
                long l4 = Class26.method297(s3.substring(i3 + 5).trim());
                int k3 = -1;
                for(int i4 = 0; i4 < anInt1161; i4++)
                {
                    if(aLongArray1218[i4] != l4)
                        continue;
                    k3 = i4;
                    break;
                }

                if(k3 != -1 && anIntArray915[k3] > 0)
                {
                    aBoolean1289 = true;
                    anInt823 = 0;
                    aBoolean829 = true;
                    aString1069 = "";
                    anInt1169 = 3;
                    aLong1270 = aLongArray1218[k3];
                    aString1065 = "Enter message to send to " + aStringArray1000[k3];
                }
            }
        }
        if(i1 == 1)
            method18(0);
        if(i1 == 912)
        {
            if((anInt930 & 3) == 0)
                anInt1271++;
            if(anInt1271 >= 57)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 174);
                aClass31_Sub3_Sub2_853.method412(24);
                anInt1271 = 0;
            }
            method100(true, k, j1, l);
            aClass31_Sub3_Sub2_853.method411(7793, 248);
            aClass31_Sub3_Sub2_853.method445(j1 >> 14 & 0x7fff, false);
            aClass31_Sub3_Sub2_853.method447(6, k + anInt929);
            aClass31_Sub3_Sub2_853.method447(6, l + anInt930);
        }
        if(i1 == 48)
        {
            boolean flag4 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            if(!flag4)
                flag4 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, k);
            anInt844 = super.anInt30;
            anInt845 = super.anInt31;
            anInt847 = 2;
            anInt846 = 0;
            anInt1287++;
            if(anInt1287 >= 136)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 36);
                aClass31_Sub3_Sub2_853.method412(225);
                anInt1287 = 0;
            }
            aClass31_Sub3_Sub2_853.method411(7793, 12);
            aClass31_Sub3_Sub2_853.method413(l + anInt930);
            aClass31_Sub3_Sub2_853.method447(6, k + anInt929);
            aClass31_Sub3_Sub2_853.method413(j1);
        }
        if(i1 == 495)
        {
            anInt1022 += l;
            if(anInt1022 >= 112)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 42);
                anInt1022 = 0;
            }
            aClass31_Sub3_Sub2_853.method411(7793, 128);
            aClass31_Sub3_Sub2_853.method446(k, (byte)1);
            aClass31_Sub3_Sub2_853.method413(j1);
            aClass31_Sub3_Sub2_853.method445(l, false);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 649)
        {
            method100(true, k, j1, l);
            aClass31_Sub3_Sub2_853.method411(7793, 32);
            aClass31_Sub3_Sub2_853.method445(k + anInt929, false);
            aClass31_Sub3_Sub2_853.method446(j1 >> 14 & 0x7fff, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, l + anInt930);
        }
        if(i1 == 357)
        {
            boolean flag5 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            if(!flag5)
                flag5 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, k);
            anInt844 = super.anInt30;
            anInt845 = super.anInt31;
            anInt847 = 2;
            anInt846 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 24);
            aClass31_Sub3_Sub2_853.method413(k + anInt929);
            aClass31_Sub3_Sub2_853.method413(j1);
            aClass31_Sub3_Sub2_853.method445(l + anInt930, false);
        }
        if(i1 == 1509)
        {
            int k1 = j1 >> 14 & 0x7fff;
            Class22 class22 = Class22.method273(k1);
            String s10;
            if(class22.aByteArray330 != null)
                s10 = new String(class22.aByteArray330);
            else
                s10 = "It's a " + class22.aString331 + ".";
            method66(s10, "", 0, -39349);
        }
        if(i1 == 670)
        {
            boolean flag6 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 0, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, k);
            if(!flag6)
                flag6 = method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, l, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, k);
            anInt844 = super.anInt30;
            anInt845 = super.anInt31;
            anInt847 = 2;
            anInt846 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 151);
            aClass31_Sub3_Sub2_853.method413(j1);
            aClass31_Sub3_Sub2_853.method446(l + anInt930, (byte)1);
            aClass31_Sub3_Sub2_853.method446(k + anInt929, (byte)1);
        }
        if(i1 == 817)
        {
            if((k & 3) == 0)
                anInt832++;
            if(anInt832 >= 94)
            {
                aClass31_Sub3_Sub2_853.method411(7793, 125);
                aClass31_Sub3_Sub2_853.method412(25);
                anInt832 = 0;
            }
            aClass31_Sub3_Sub2_853.method411(7793, 203);
            aClass31_Sub3_Sub2_853.method446(k, (byte)1);
            aClass31_Sub3_Sub2_853.method447(6, l);
            aClass31_Sub3_Sub2_853.method447(6, j1);
            anInt1045 = 0;
            anInt1046 = l;
            anInt1047 = k;
            anInt1048 = 2;
            if(Class30.method339(l).anInt432 == anInt1303)
                anInt1048 = 1;
            if(Class30.method339(l).anInt432 == anInt1129)
                anInt1048 = 3;
        }
        if(i1 == 636)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_6 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j1];
            if(class31_sub3_sub3_sub4_sub2_6 != null)
            {
                method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, 1, 0, 0, 2, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_6)).anIntArray1634[0], false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 1, ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_6)).anIntArray1633[0]);
                anInt844 = super.anInt30;
                anInt845 = super.anInt31;
                anInt847 = 2;
                anInt846 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 26);
                aClass31_Sub3_Sub2_853.method445(j1, false);
            }
        }
        if(i1 == 895)
        {
            method150(3, anInt899);
            anInt899 = -1;
            aBoolean1289 = true;
        }
        anInt943 = 0;
        anInt948 = 0;
        aBoolean1315 = true;
    }

    public void method86(int i)
    {
        aBoolean1097 = true;
        for(int j = 0; j < 7; j++)
        {
            anIntArray1166[j] = -1;
            for(int k = 0; k < Class5.anInt103; k++)
            {
                if(Class5.aClass5Array104[k].aBoolean110 || Class5.aClass5Array104[k].anInt105 != j + (aBoolean1155 ? 0 : 7))
                    continue;
                anIntArray1166[j] = k;
                break;
            }

        }

        i = 92 / i;
    }

    public void method87(int i, int j)
    {
        signlink.wavevol = i;
        if(j < 9 || j > 9)
            anInt908 = aClass24_993.method288();
    }

    public void method88(int i)
    {
        if(i != 0)
            aClass31_Sub3_Sub2_853.method412(184);
        if(aBoolean979 && anInt1051 == 2 && Class9.anInt170 != anInt981)
        {
            method72(null, 0, "Loading - please wait.");
            anInt1051 = 1;
            aLong1255 = System.currentTimeMillis();
        }
        if(anInt1051 == 1)
        {
            int j = method89(0);
            if(j != 0 && System.currentTimeMillis() - aLong1255 > 0x57e40L)
            {
                signlink.reporterror(aString1211 + " glcfb " + aLong911 + "," + j + "," + aBoolean979 + "," + aClass23Array1098[0] + "," + aClass27_Sub1_843.method319() + "," + anInt981 + "," + anInt1122 + "," + anInt1123);
                aLong1255 = System.currentTimeMillis();
            }
        }
        if(anInt1051 == 2 && anInt981 != anInt1049)
        {
            anInt1049 = anInt981;
            method63(anInt981, true);
        }
    }

    public int method89(int i)
    {
        for(int j = 0; j < aByteArrayArray1142.length; j++)
        {
            if(aByteArrayArray1142[j] == null && anIntArray1283[j] != -1)
                return -1;
            if(aByteArrayArray1248[j] == null && anIntArray1284[j] != -1)
                return -2;
        }

        anInt960 += i;
        boolean flag = true;
        for(int k = 0; k < aByteArrayArray1142.length; k++)
        {
            byte abyte0[] = aByteArrayArray1248[k];
            if(abyte0 != null)
            {
                int l = (anIntArray1282[k] >> 8) * 64 - anInt929;
                int i1 = (anIntArray1282[k] & 0xff) * 64 - anInt930;
                if(aBoolean1068)
                {
                    l = 10;
                    i1 = 10;
                }
                flag &= Class9.method193(l, -482, abyte0, i1);
            }
        }

        if(!flag)
            return -3;
        if(aBoolean898)
        {
            return -4;
        } else
        {
            anInt1051 = 2;
            Class9.anInt170 = anInt981;
            method57(389);
            aClass31_Sub3_Sub2_853.method411(7793, 120);
            return 0;
        }
    }

    public void method90(int i, int j)
    {
        if(j != 0)
            anInt961 = aClass31_Sub3_Sub2_1307.method422();
        if(!aBoolean979)
        {
            for(int k = 0; k < anIntArray1240.length; k++)
            {
                int l = anIntArray1240[k];
                if(Class31_Sub3_Sub1_Sub1.anIntArray1482[l] >= i)
                {
                    Class31_Sub3_Sub1_Sub3 class31_sub3_sub1_sub3 = Class31_Sub3_Sub1_Sub1.aClass31_Sub3_Sub1_Sub3Array1476[l];
                    int i1 = class31_sub3_sub1_sub3.anInt1504 * class31_sub3_sub1_sub3.anInt1505 - 1;
                    int j1 = class31_sub3_sub1_sub3.anInt1504 * anInt877 * 2;
                    byte abyte0[] = class31_sub3_sub1_sub3.aByteArray1502;
                    byte abyte1[] = aByteArray852;
                    for(int k1 = 0; k1 <= i1; k1++)
                        abyte1[k1] = abyte0[k1 - j1 & i1];

                    class31_sub3_sub1_sub3.aByteArray1502 = abyte1;
                    aByteArray852 = abyte0;
                    Class31_Sub3_Sub1_Sub1.method364(l, 1);
                    anInt830++;
                    if(anInt830 > 1462)
                    {
                        anInt830 = 0;
                        aClass31_Sub3_Sub2_853.method411(7793, 231);
                        aClass31_Sub3_Sub2_853.method412(0);
                        int l1 = aClass31_Sub3_Sub2_853.anInt1440;
                        if((int)(Math.random() * 2D) == 0)
                            aClass31_Sub3_Sub2_853.method413(63214);
                        if((int)(Math.random() * 2D) == 0)
                            aClass31_Sub3_Sub2_853.method413(14114);
                        aClass31_Sub3_Sub2_853.method413(16897);
                        aClass31_Sub3_Sub2_853.method412(71);
                        aClass31_Sub3_Sub2_853.method412(77);
                        aClass31_Sub3_Sub2_853.method413((int)(Math.random() * 65536D));
                        aClass31_Sub3_Sub2_853.method412(220);
                        aClass31_Sub3_Sub2_853.method412(49);
                        aClass31_Sub3_Sub2_853.method412(45);
                        if((int)(Math.random() * 2D) == 0)
                            aClass31_Sub3_Sub2_853.method413(59782);
                        aClass31_Sub3_Sub2_853.method421(aClass31_Sub3_Sub2_853.anInt1440 - l1, 8);
                    }
                }
            }

        }
    }

    public void method91(byte byte0, Class30 class30)
    {
        if(byte0 != -22)
            anInt1056 = -358;
        int i = class30.anInt399;
        if(i >= 1 && i <= 100 || i >= 701 && i <= 800)
        {
            if(i == 1 && anInt1162 == 0)
            {
                class30.aString441 = "Loading friend list";
                class30.anInt469 = 0;
                return;
            }
            if(i == 1 && anInt1162 == 1)
            {
                class30.aString441 = "Connecting to friendserver";
                class30.anInt469 = 0;
                return;
            }
            if(i == 2 && anInt1162 != 2)
            {
                class30.aString441 = "Please wait...";
                class30.anInt469 = 0;
                return;
            }
            int j = anInt1161;
            if(anInt1162 != 2)
                j = 0;
            if(i > 700)
                i -= 601;
            else
                i--;
            if(i >= j)
            {
                class30.aString441 = "";
                class30.anInt469 = 0;
                return;
            } else
            {
                class30.aString441 = aStringArray1000[i];
                class30.anInt469 = 1;
                return;
            }
        }
        if(i >= 101 && i <= 200 || i >= 801 && i <= 900)
        {
            int k = anInt1161;
            if(anInt1162 != 2)
                k = 0;
            if(i > 800)
                i -= 701;
            else
                i -= 101;
            if(i >= k)
            {
                class30.aString441 = "";
                class30.anInt469 = 0;
                return;
            }
            if(anIntArray915[i] == 0)
                class30.aString441 = "@red@Offline";
            else
            if(anIntArray915[i] < 200)
            {
                if(anIntArray915[i] == anInt976)
                    class30.aString441 = "@gre@World" + (anIntArray915[i] - 9);
                else
                    class30.aString441 = "@yel@World" + (anIntArray915[i] - 9);
            } else
            if(anIntArray915[i] == anInt976)
                class30.aString441 = "@gre@Classic" + (anIntArray915[i] - 219);
            else
                class30.aString441 = "@yel@Classic" + (anIntArray915[i] - 219);
            class30.anInt469 = 1;
            return;
        }
        if(i == 203)
        {
            int l = anInt1161;
            if(anInt1162 != 2)
                l = 0;
            class30.anInt434 = l * 15 + 20;
            if(class30.anInt434 <= class30.anInt452)
                class30.anInt434 = class30.anInt452 + 1;
            return;
        }
        if(i >= 401 && i <= 500)
        {
            if((i -= 401) == 0 && anInt1162 == 0)
            {
                class30.aString441 = "Loading ignore list";
                class30.anInt469 = 0;
                return;
            }
            if(i == 1 && anInt1162 == 0)
            {
                class30.aString441 = "Please wait...";
                class30.anInt469 = 0;
                return;
            }
            int i1 = anInt998;
            if(anInt1162 == 0)
                i1 = 0;
            if(i >= i1)
            {
                class30.aString441 = "";
                class30.anInt469 = 0;
                return;
            } else
            {
                class30.aString441 = Class26.method301(true, Class26.method298(359, aLongArray1131[i]));
                class30.anInt469 = 1;
                return;
            }
        }
        if(i == 503)
        {
            class30.anInt434 = anInt998 * 15 + 20;
            if(class30.anInt434 <= class30.anInt452)
                class30.anInt434 = class30.anInt452 + 1;
            return;
        }
        if(i == 327)
        {
            class30.anInt467 = 150;
            class30.anInt468 = (int)(Math.sin((double)anInt935 / 40D) * 256D) & 0x7ff;
            if(aBoolean1097)
            {
                for(int j1 = 0; j1 < 7; j1++)
                {
                    int i2 = anIntArray1166[j1];
                    if(i2 >= 0 && !Class5.aClass5Array104[i2].method174(0))
                        return;
                }

                aBoolean1097 = false;
                Class31_Sub3_Sub3_Sub2 aclass31_sub3_sub3_sub2[] = new Class31_Sub3_Sub3_Sub2[7];
                int j2 = 0;
                for(int k2 = 0; k2 < 7; k2++)
                {
                    int l2 = anIntArray1166[k2];
                    if(l2 >= 0)
                        aclass31_sub3_sub3_sub2[j2++] = Class5.aClass5Array104[l2].method175(18390);
                }

                Class31_Sub3_Sub3_Sub2 class31_sub3_sub3_sub2 = new Class31_Sub3_Sub3_Sub2(aclass31_sub3_sub3_sub2, 3, j2);
                for(int i3 = 0; i3 < 5; i3++)
                    if(anIntArray1238[i3] != 0)
                    {
                        class31_sub3_sub3_sub2.method481(anIntArrayArray912[i3][0], anIntArrayArray912[i3][anIntArray1238[i3]]);
                        if(i3 == 1)
                            class31_sub3_sub3_sub2.method481(anIntArray1060[0], anIntArray1060[anIntArray1238[i3]]);
                    }

                class31_sub3_sub3_sub2.method474(166);
                class31_sub3_sub3_sub2.method475(257, Class8.aClass8Array140[((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1647].anIntArray142[0]);
                class31_sub3_sub3_sub2.method484(64, 850, -30, -50, -30, true);
                class30.anInt436 = 5;
                class30.anInt437 = 0;
                Class30.method341(class31_sub3_sub3_sub2, 787, 5, 0);
            }
            return;
        }
        if(i == 324)
        {
            if(aClass31_Sub3_Sub1_Sub2_1011 == null)
            {
                aClass31_Sub3_Sub1_Sub2_1011 = class30.aClass31_Sub3_Sub1_Sub2_448;
                aClass31_Sub3_Sub1_Sub2_1012 = class30.aClass31_Sub3_Sub1_Sub2_445;
            }
            if(aBoolean1155)
            {
                class30.aClass31_Sub3_Sub1_Sub2_448 = aClass31_Sub3_Sub1_Sub2_1012;
                return;
            } else
            {
                class30.aClass31_Sub3_Sub1_Sub2_448 = aClass31_Sub3_Sub1_Sub2_1011;
                return;
            }
        }
        if(i == 325)
        {
            if(aClass31_Sub3_Sub1_Sub2_1011 == null)
            {
                aClass31_Sub3_Sub1_Sub2_1011 = class30.aClass31_Sub3_Sub1_Sub2_448;
                aClass31_Sub3_Sub1_Sub2_1012 = class30.aClass31_Sub3_Sub1_Sub2_445;
            }
            if(aBoolean1155)
            {
                class30.aClass31_Sub3_Sub1_Sub2_448 = aClass31_Sub3_Sub1_Sub2_1011;
                return;
            } else
            {
                class30.aClass31_Sub3_Sub1_Sub2_448 = aClass31_Sub3_Sub1_Sub2_1012;
                return;
            }
        }
        if(i == 600)
        {
            class30.aString441 = aString992;
            if(anInt935 % 20 < 10)
            {
                class30.aString441 += "|";
                return;
            } else
            {
                class30.aString441 += " ";
                return;
            }
        }
        if(i == 620)
            if(anInt1117 >= 1)
            {
                if(aBoolean1171)
                {
                    class30.anInt410 = 0xff0000;
                    class30.aString441 = "Moderator option: Mute player for 48 hours: <ON>";
                } else
                {
                    class30.anInt410 = 0xffffff;
                    class30.aString441 = "Moderator option: Mute player for 48 hours: <OFF>";
                }
            } else
            {
                class30.aString441 = "";
            }
        if(i == 660)
        {
            int k1 = anInt985 - anInt954;
            String s1;
            if(k1 <= 0)
                s1 = "earlier today";
            else
            if(k1 == 1)
                s1 = "yesterday";
            else
                s1 = k1 + " days ago";
            class30.aString441 = "You last logged in @red@" + s1 + "@bla@ from: @red@" + signlink.dns;
        }
        if(i == 661)
            if(anInt1138 == 0)
                class30.aString441 = "\\nYou have not yet set any recovery questions.\\nIt is @lre@strongly@yel@ recommended that you do so.\\n\\nIf you don't you will be @lre@unable to recover your\\n@lre@password@yel@ if you forget it, or it is stolen.";
            else
            if(anInt1138 <= anInt985)
            {
                class30.aString441 = "\\n\\nRecovery Questions Last Set:\\n@gre@" + method92(anInt1138, (byte)6);
            } else
            {
                int l1 = (anInt985 + 14) - anInt1138;
                String s2;
                if(l1 <= 0)
                    s2 = "Earlier today";
                else
                if(l1 == 1)
                    s2 = "Yesterday";
                else
                    s2 = l1 + " days ago";
                class30.aString441 = s2 + " you requested@lre@ new recovery\\n@lre@questions.@yel@ The requested change will occur\\non: @lre@" + method92(anInt1138, (byte)6) + "\\n\\nIf you do not remember making this request\\ncancel it immediately, and change your password.";
            }
        if(i == 662)
        {
            String s;
            if(anInt1153 == 0)
                s = "@yel@0 unread messages";
            else
            if(anInt1153 == 1)
                s = "@gre@1 unread message";
            else
                s = "@gre@" + anInt1153 + " unread messages";
            class30.aString441 = "You have " + s + "\\nin your message centre.";
        }
        if(i == 663)
            if(anInt1081 <= 0 || anInt1081 > anInt985 + 10)
                class30.aString441 = "Last password change:\\n@gre@Never changed";
            else
                class30.aString441 = "Last password change:\\n@gre@" + method92(anInt1081, (byte)6);
        if(i == 665)
            if(anInt1134 > 2 && !aBoolean978)
                class30.aString441 = "This is a non-members\\nworld. To enjoy your\\nmembers benefits we\\nrecommend you play on a\\nmembers world instead.";
            else
            if(anInt1134 > 2)
                class30.aString441 = "\\n\\nYou have @gre@" + anInt1134 + "@yel@ days of\\nmember credit remaining.";
            else
            if(anInt1134 > 0)
                class30.aString441 = "You have @gre@" + anInt1134 + "@yel@ days of\\nmember credit remaining.\\n\\n@lre@Credit low! Renew now\\n@lre@to avoid losing members.";
            else
                class30.aString441 = "You are not a member.\\n\\nChoose to subscribe and\\nyou'll get loads of extra\\nbenefits and features.";
        if(i == 667)
            if(anInt1134 > 2 && !aBoolean978)
                class30.aString441 = "To switch to a members-only world:\\n1) Logout and return to the world selection page.\\n2) Choose one of the members world with a gold star next to it's name.\\n\\nIf you prefer you can continue to use this world,\\nbut members only features will be unavailable here.";
            else
            if(anInt1134 > 0)
                class30.aString441 = "To extend or cancel a subscription:\\n1) Logout and return to the frontpage of this website.\\n2)Choose the relevant option from the 'membership' section.\\n\\nNote: If you are a credit card subscriber a top-up payment will\\nautomatically be taken when 3 days credit remain.\\n(unless you cancel your subscription, which can be done at any time.)";
            else
                class30.aString441 = "To start a subscripton:\\n1) Logout and return to the frontpage of this website.\\n2) Choose 'Start a new subscription'";
        if(i == 668)
        {
            if(anInt1138 > anInt985)
            {
                class30.aString441 = "To cancel this request:\\n1) Logout and return to the frontpage of this website.\\n2) Choose 'Cancel recovery questions'.";
                return;
            }
            class30.aString441 = "To change your recovery questions:\\n1) Logout and return to the frontpage of this website.\\n2) Choose 'Set new recovery questions'.";
        }
    }

    public String method92(int i, byte byte0)
    {
        if(i > anInt985 + 10)
            return "Unknown";
        long l = ((long)i + 11745L) * 0x5265c00L;
        if(byte0 != 6)
            aBoolean1136 = !aBoolean1136;
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(new Date(l));
        int j = calendar.get(5);
        int k = calendar.get(2);
        int i1 = calendar.get(1);
        String as[] = {
            "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", 
            "Nov", "Dec"
        };
        return j + "-" + as[k] + "-" + i1;
    }

    public static void method93(int i)
    {
        Class34.aBoolean494 = false;
        Class31_Sub3_Sub1_Sub1.aBoolean1463 = false;
        if(i != 0)
        {
            return;
        } else
        {
            aBoolean979 = false;
            Class9.aBoolean168 = false;
            Class22.aBoolean309 = false;
            return;
        }
    }

    public void method94(Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2, int i, byte byte0, int j, int k)
    {
        if(class31_sub3_sub3_sub4_sub2 == aClass31_Sub3_Sub3_Sub4_Sub2_885)
            return;
        if(anInt878 >= 400)
            return;
        String s;
        if(class31_sub3_sub3_sub4_sub2.anInt1736 == 0)
            s = class31_sub3_sub3_sub4_sub2.aString1729 + method20(class31_sub3_sub3_sub4_sub2.anInt1714, aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1714, 869) + " (level-" + class31_sub3_sub3_sub4_sub2.anInt1714 + ")";
        else
            s = class31_sub3_sub3_sub4_sub2.aString1729 + " (skill-" + class31_sub3_sub3_sub4_sub2.anInt1736 + ")";
        if(anInt943 == 1)
        {
            aStringArray1208[anInt878] = "Use " + aString947 + " with @whi@" + s;
            anIntArray1017[anInt878] = 964;
            anIntArray1018[anInt878] = k;
            anIntArray1015[anInt878] = i;
            anIntArray1016[anInt878] = j;
            anInt878++;
        } else
        if(anInt948 == 1)
        {
            if((anInt950 & 8) == 8)
            {
                aStringArray1208[anInt878] = aString951 + " @whi@" + s;
                anIntArray1017[anInt878] = 114;
                anIntArray1018[anInt878] = k;
                anIntArray1015[anInt878] = i;
                anIntArray1016[anInt878] = j;
                anInt878++;
            }
        } else
        {
            for(int l = 4; l >= 0; l--)
                if(aStringArray1150[l] != null)
                {
                    aStringArray1208[anInt878] = aStringArray1150[l] + " @whi@" + s;
                    char c = '\0';
                    if(aStringArray1150[l].equalsIgnoreCase("attack"))
                    {
                        if(class31_sub3_sub3_sub4_sub2.anInt1714 > aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1714)
                            c = '\u07D0';
                        if(aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1730 != 0 && class31_sub3_sub3_sub4_sub2.anInt1730 != 0)
                            if(aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1730 == class31_sub3_sub3_sub4_sub2.anInt1730)
                                c = '\u07D0';
                            else
                                c = '\0';
                    } else
                    if(aBooleanArray1151[l])
                        c = '\u07D0';
                    if(l == 0)
                        anIntArray1017[anInt878] = 85 + c;
                    if(l == 1)
                        anIntArray1017[anInt878] = 72 + c;
                    if(l == 2)
                        anIntArray1017[anInt878] = 262 + c;
                    if(l == 3)
                        anIntArray1017[anInt878] = 636 + c;
                    if(l == 4)
                        anIntArray1017[anInt878] = 716 + c;
                    anIntArray1018[anInt878] = k;
                    anIntArray1015[anInt878] = i;
                    anIntArray1016[anInt878] = j;
                    anInt878++;
                }

        }
        for(int i1 = 0; i1 < anInt878; i1++)
        {
            if(anIntArray1017[i1] != 158)
                continue;
            aStringArray1208[i1] = "Walk here @whi@" + s;
            break;
        }

        if(byte0 != -49)
            anInt961 = aClass31_Sub3_Sub2_1307.method422();
    }

    public int method95(int i, int j, int k, byte byte0)
    {
        int l = 256 - k;
        if(byte0 != aByte956)
            anInt961 = -1;
        return ((i & 0xff00ff) * l + (j & 0xff00ff) * k & 0xff00ff00) + ((i & 0xff00) * l + (j & 0xff00) * k & 0xff0000) >> 8;
    }

    public void method96(int i)
    {
        if(anInt1024 != 2)
            return;
        method45(142, (anInt1038 - anInt930 << 7) + anInt1041, anInt1039 * 2, (anInt1037 - anInt929 << 7) + anInt1040);
        if(i <= 0)
            aClass31_Sub3_Sub2_853.method412(108);
        if(anInt941 > -1 && anInt935 % 20 < 10)
            aClass31_Sub3_Sub1_Sub2Array1118[0].method379(-4899, anInt941 - 12, anInt942 - 28);
    }

    public void method97(Class31_Sub3_Sub2 class31_sub3_sub2, byte byte0, int i)
    {
        if(byte0 != -121)
            aClass31_Sub3_Sub2_853.method412(67);
        if(i == 193)
        {
            int j = class31_sub3_sub2.method422();
            int l2 = anInt1216 + (j >> 4 & 7);
            int k5 = anInt1217 + (j & 7);
            int j8 = class31_sub3_sub2.method424();
            int i11 = class31_sub3_sub2.method424();
            int k13 = class31_sub3_sub2.method424();
            if(l2 >= 0 && k5 >= 0 && l2 < 104 && k5 < 104)
            {
                Class28 class28_1 = aClass28ArrayArrayArray996[anInt981][l2][k5];
                if(class28_1 != null)
                {
                    for(Class31_Sub3_Sub3_Sub6 class31_sub3_sub3_sub6_3 = (Class31_Sub3_Sub3_Sub6)class28_1.method328(); class31_sub3_sub3_sub6_3 != null; class31_sub3_sub3_sub6_3 = (Class31_Sub3_Sub3_Sub6)class28_1.method330(-582))
                    {
                        if(class31_sub3_sub3_sub6_3.anInt1708 != (j8 & 0x7fff) || class31_sub3_sub3_sub6_3.anInt1709 != i11)
                            continue;
                        class31_sub3_sub3_sub6_3.anInt1709 = k13;
                        break;
                    }

                    method116(l2, k5);
                }
            }
            return;
        }
        if(i == 209)
        {
            int k = class31_sub3_sub2.method442(-13491);
            int i3 = anInt1216 + (k >> 4 & 7);
            int l5 = anInt1217 + (k & 7);
            int k8 = class31_sub3_sub2.method450(aBoolean1136);
            if(i3 >= 0 && l5 >= 0 && i3 < 104 && l5 < 104)
            {
                Class28 class28 = aClass28ArrayArrayArray996[anInt981][i3][l5];
                if(class28 != null)
                {
                    for(Class31_Sub3_Sub3_Sub6 class31_sub3_sub3_sub6 = (Class31_Sub3_Sub3_Sub6)class28.method328(); class31_sub3_sub3_sub6 != null; class31_sub3_sub3_sub6 = (Class31_Sub3_Sub3_Sub6)class28.method330(-582))
                    {
                        if(class31_sub3_sub3_sub6.anInt1708 != (k8 & 0x7fff))
                            continue;
                        class31_sub3_sub3_sub6.method343();
                        break;
                    }

                    if(class28.method328() == null)
                        aClass28ArrayArrayArray996[anInt981][i3][l5] = null;
                    method116(i3, l5);
                }
            }
            return;
        }
        if(i == 98)
        {
            int l = class31_sub3_sub2.method422();
            int j3 = anInt1216 + (l >> 4 & 7);
            int i6 = anInt1217 + (l & 7);
            int l8 = j3 + class31_sub3_sub2.method423();
            int j11 = i6 + class31_sub3_sub2.method423();
            int l13 = class31_sub3_sub2.method425();
            int l15 = class31_sub3_sub2.method424();
            int i17 = class31_sub3_sub2.method422() * 4;
            int l17 = class31_sub3_sub2.method422() * 4;
            int k18 = class31_sub3_sub2.method424();
            int j19 = class31_sub3_sub2.method424();
            int l19 = class31_sub3_sub2.method422();
            int k20 = class31_sub3_sub2.method422();
            if(j3 >= 0 && i6 >= 0 && j3 < 104 && i6 < 104 && l8 >= 0 && j11 >= 0 && l8 < 104 && j11 < 104 && l15 != 65535)
            {
                j3 = j3 * 128 + 64;
                i6 = i6 * 128 + 64;
                l8 = l8 * 128 + 64;
                j11 = j11 * 128 + 64;
                Class31_Sub3_Sub3_Sub5 class31_sub3_sub3_sub5 = new Class31_Sub3_Sub3_Sub5(anInt981, j3, l17, l15, k18 + anInt935, (byte)5, method143(j3, 0, anInt981, i6) - i17, i6, j19 + anInt935, l19, l13, k20);
                class31_sub3_sub3_sub5.method503(j11, l8, method143(l8, 0, anInt981, j11) - l17, false, k18 + anInt935);
                aClass28_1080.method325(class31_sub3_sub3_sub5);
            }
            return;
        }
        if(i == 252)
        {
            int i1 = class31_sub3_sub2.method440((byte)104);
            int k3 = anInt1216 + (i1 >> 4 & 7);
            int j6 = anInt1217 + (i1 & 7);
            int i9 = class31_sub3_sub2.method448((byte)56);
            int k11 = class31_sub3_sub2.method449(-30785);
            if(k3 >= 0 && j6 >= 0 && k3 < 104 && j6 < 104)
            {
                Class31_Sub3_Sub3_Sub6 class31_sub3_sub3_sub6_1 = new Class31_Sub3_Sub3_Sub6();
                class31_sub3_sub3_sub6_1.anInt1708 = i9;
                class31_sub3_sub3_sub6_1.anInt1709 = k11;
                if(aClass28ArrayArrayArray996[anInt981][k3][j6] == null)
                    aClass28ArrayArrayArray996[anInt981][k3][j6] = new Class28(0);
                aClass28ArrayArrayArray996[anInt981][k3][j6].method325(class31_sub3_sub3_sub6_1);
                method116(k3, j6);
            }
            return;
        }
        if(i == 253)
        {
            int j1 = class31_sub3_sub2.method441(false);
            int l3 = j1 >> 2;
            int k6 = j1 & 3;
            int j9 = anIntArray1082[l3];
            int l11 = class31_sub3_sub2.method440((byte)104);
            int i14 = anInt1216 + (l11 >> 4 & 7);
            int i16 = anInt1217 + (l11 & 7);
            if(i14 >= 0 && i16 >= 0 && i14 < 104 && i16 < 104)
                method74(i16, i14, l3, -1, -1, anInt981, 2, k6, 0, j9);
            return;
        }
        if(i == 93)
        {
            int k1 = class31_sub3_sub2.method448((byte)56);
            int i4 = class31_sub3_sub2.method441(false);
            int l6 = anInt1216 + (i4 >> 4 & 7);
            int k9 = anInt1217 + (i4 & 7);
            int i12 = class31_sub3_sub2.method424();
            int j14 = class31_sub3_sub2.method448((byte)56);
            if(l6 >= 0 && k9 >= 0 && l6 < 104 && k9 < 104 && j14 != anInt1215)
            {
                Class31_Sub3_Sub3_Sub6 class31_sub3_sub3_sub6_2 = new Class31_Sub3_Sub3_Sub6();
                class31_sub3_sub3_sub6_2.anInt1708 = k1;
                class31_sub3_sub3_sub6_2.anInt1709 = i12;
                if(aClass28ArrayArrayArray996[anInt981][l6][k9] == null)
                    aClass28ArrayArrayArray996[anInt981][l6][k9] = new Class28(0);
                aClass28ArrayArrayArray996[anInt981][l6][k9].method325(class31_sub3_sub3_sub6_2);
                method116(l6, k9);
            }
            return;
        }
        if(i == 31)
        {
            int l1 = class31_sub3_sub2.method422();
            int j4 = anInt1216 + (l1 >> 4 & 7);
            int i7 = anInt1217 + (l1 & 7);
            int l9 = class31_sub3_sub2.method450(aBoolean1136);
            int j12 = class31_sub3_sub2.method441(false);
            int k14 = j12 >> 2;
            int j16 = j12 & 3;
            int j17 = anIntArray1082[k14];
            if(j4 >= 0 && i7 >= 0 && j4 < 103 && i7 < 103)
            {
                int i18 = anIntArrayArrayArray848[anInt981][j4][i7];
                int l18 = anIntArrayArrayArray848[anInt981][j4 + 1][i7];
                int k19 = anIntArrayArrayArray848[anInt981][j4 + 1][i7 + 1];
                int i20 = anIntArrayArrayArray848[anInt981][j4][i7 + 1];
                if(j17 == 0)
                {
                    Class14 class14 = aClass34_937.method533(i7, (byte)4, anInt981, j4);
                    if(class14 != null)
                    {
                        int i21 = class14.anInt234 >> 14 & 0x7fff;
                        if(k14 == 2)
                        {
                            class14.aClass31_Sub3_Sub3_232 = new Class31_Sub3_Sub3_Sub3(l18, l9, i20, 4 + j16, i18, 2, false, i21, k19, false);
                            class14.aClass31_Sub3_Sub3_233 = new Class31_Sub3_Sub3_Sub3(l18, l9, i20, j16 + 1 & 3, i18, 2, false, i21, k19, false);
                        } else
                        {
                            class14.aClass31_Sub3_Sub3_232 = new Class31_Sub3_Sub3_Sub3(l18, l9, i20, j16, i18, k14, false, i21, k19, false);
                        }
                    }
                }
                if(j17 == 1)
                {
                    Class40 class40 = aClass34_937.method534(true, anInt981, j4, i7);
                    if(class40 != null)
                        class40.aClass31_Sub3_Sub3_605 = new Class31_Sub3_Sub3_Sub3(l18, l9, i20, 0, i18, 4, false, class40.anInt606 >> 14 & 0x7fff, k19, false);
                }
                if(j17 == 2)
                {
                    Class47 class47 = aClass34_937.method535(-24183, i7, anInt981, j4);
                    if(k14 == 11)
                        k14 = 10;
                    if(class47 != null)
                        class47.aClass31_Sub3_Sub3_719 = new Class31_Sub3_Sub3_Sub3(l18, l9, i20, j16, i18, k14, false, class47.anInt727 >> 14 & 0x7fff, k19, false);
                }
                if(j17 == 3)
                {
                    Class29 class29 = aClass34_937.method536(aByte1188, j4, i7, anInt981);
                    if(class29 != null)
                        class29.aClass31_Sub3_Sub3_392 = new Class31_Sub3_Sub3_Sub3(l18, l9, i20, j16, i18, 22, false, class29.anInt393 >> 14 & 0x7fff, k19, false);
                }
            }
            return;
        }
        if(i == 206)
        {
            byte byte1 = class31_sub3_sub2.method443(false);
            int k4 = class31_sub3_sub2.method441(false);
            int j7 = k4 >> 2;
            int i10 = k4 & 3;
            int k12 = anIntArray1082[j7];
            int l14 = class31_sub3_sub2.method424();
            byte byte2 = class31_sub3_sub2.method444((byte)87);
            byte byte3 = class31_sub3_sub2.method444((byte)87);
            int j18 = class31_sub3_sub2.method448((byte)56);
            int i19 = class31_sub3_sub2.method424();
            byte byte4 = class31_sub3_sub2.method443(false);
            int j20 = class31_sub3_sub2.method441(false);
            int l20 = anInt1216 + (j20 >> 4 & 7);
            int j21 = anInt1217 + (j20 & 7);
            int k21 = class31_sub3_sub2.method424();
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2;
            if(j18 == anInt1215)
                class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2_885;
            else
                class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[j18];
            if(class31_sub3_sub3_sub4_sub2 != null)
            {
                Class22 class22 = Class22.method273(i19);
                int l21 = anIntArrayArrayArray848[anInt981][l20][j21];
                int i22 = anIntArrayArrayArray848[anInt981][l20 + 1][j21];
                int j22 = anIntArrayArrayArray848[anInt981][l20 + 1][j21 + 1];
                int k22 = anIntArrayArrayArray848[anInt981][l20][j21 + 1];
                Class31_Sub3_Sub3_Sub2 class31_sub3_sub3_sub2 = class22.method283(j7, i10, l21, i22, j22, k22, -1);
                if(class31_sub3_sub3_sub2 != null)
                {
                    method74(j21, l20, 0, -1, l14 + 1, anInt981, 2, 0, k21 + 1, k12);
                    class31_sub3_sub3_sub4_sub2.anInt1725 = k21 + anInt935;
                    class31_sub3_sub3_sub4_sub2.anInt1726 = l14 + anInt935;
                    class31_sub3_sub3_sub4_sub2.aClass31_Sub3_Sub3_Sub2_1720 = class31_sub3_sub3_sub2;
                    int l22 = class22.anInt323;
                    int i23 = class22.anInt344;
                    if(i10 == 1 || i10 == 3)
                    {
                        l22 = class22.anInt344;
                        i23 = class22.anInt323;
                    }
                    class31_sub3_sub3_sub4_sub2.anInt1717 = l20 * 128 + l22 * 64;
                    class31_sub3_sub3_sub4_sub2.anInt1719 = j21 * 128 + i23 * 64;
                    class31_sub3_sub3_sub4_sub2.anInt1718 = method143(class31_sub3_sub3_sub4_sub2.anInt1717, 0, anInt981, class31_sub3_sub3_sub4_sub2.anInt1719);
                    if(byte1 > byte2)
                    {
                        byte byte5 = byte1;
                        byte1 = byte2;
                        byte2 = byte5;
                    }
                    if(byte3 > byte4)
                    {
                        byte byte6 = byte3;
                        byte3 = byte4;
                        byte4 = byte6;
                    }
                    class31_sub3_sub3_sub4_sub2.anInt1732 = l20 + byte1;
                    class31_sub3_sub3_sub4_sub2.anInt1734 = l20 + byte2;
                    class31_sub3_sub3_sub4_sub2.anInt1733 = j21 + byte3;
                    class31_sub3_sub3_sub4_sub2.anInt1735 = j21 + byte4;
                }
            }
        }
        if(i == 122)
        {
            int i2 = class31_sub3_sub2.method442(-13491);
            int l4 = anInt1216 + (i2 >> 4 & 7);
            int k7 = anInt1217 + (i2 & 7);
            int j10 = class31_sub3_sub2.method422();
            int l12 = j10 >> 2;
            int i15 = j10 & 3;
            int k16 = anIntArray1082[l12];
            int k17 = class31_sub3_sub2.method450(aBoolean1136);
            if(l4 >= 0 && k7 >= 0 && l4 < 104 && k7 < 104)
                method74(k7, l4, l12, k17, -1, anInt981, 2, i15, 0, k16);
            return;
        }
        if(i == 46)
        {
            int j2 = class31_sub3_sub2.method422();
            int i5 = anInt1216 + (j2 >> 4 & 7);
            int l7 = anInt1217 + (j2 & 7);
            int k10 = class31_sub3_sub2.method424();
            int i13 = class31_sub3_sub2.method422();
            int j15 = i13 >> 4 & 0xf;
            int l16 = i13 & 7;
            if(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0] >= i5 - j15 && ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0] <= i5 + j15 && ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0] >= l7 - j15 && ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0] <= l7 + j15 && aBoolean1154 && !aBoolean979 && anInt1182 < 50)
            {
                anIntArray1074[anInt1182] = k10;
                anIntArray1159[anInt1182] = l16;
                anIntArray1198[anInt1182] = Class25.anIntArray371[k10];
                anInt1182++;
            }
        }
        if(i == 187)
        {
            int k2 = class31_sub3_sub2.method422();
            int j5 = anInt1216 + (k2 >> 4 & 7);
            int i8 = anInt1217 + (k2 & 7);
            int l10 = class31_sub3_sub2.method424();
            int j13 = class31_sub3_sub2.method422();
            int k15 = class31_sub3_sub2.method424();
            if(j5 >= 0 && i8 >= 0 && j5 < 104 && i8 < 104)
            {
                j5 = j5 * 128 + 64;
                i8 = i8 * 128 + 64;
                Class31_Sub3_Sub3_Sub1 class31_sub3_sub3_sub1 = new Class31_Sub3_Sub3_Sub1(7, j5, k15, i8, anInt981, method143(j5, 0, anInt981, i8) - j13, l10, anInt935);
                aClass28_1124.method325(class31_sub3_sub3_sub1);
            }
        }
    }

    public Class11 method98(int i, String s, boolean flag, int j, int k, String s1)
    {
        byte abyte0[] = null;
        int l = 5;
        try
        {
            if(aClass23Array1098[0] != null)
                abyte0 = aClass23Array1098[0].method284(k, (byte)59);
        }
        catch(Exception _ex) { }
        if(abyte0 != null)
        {
            /*aCRC32_1076.reset();
            aCRC32_1076.update(abyte0);
            int i1 = (int)aCRC32_1076.getValue();
            if(i1 != j)
                abyte0 = null;*/
        }
        if(abyte0 != null)
        {
            Class11 class11 = new Class11(0, abyte0);
            return class11;
        }
        int j1 = 0;
        while(abyte0 == null) 
        {
            String s2 = "Unknown error";
            method13(i, "Requesting " + s, -71);
            Object obj = null;
            try
            {
                int k1 = 0;
                DataInputStream datainputstream = method14(s1 + j);
                byte abyte1[] = new byte[6];
                datainputstream.readFully(abyte1, 0, 6);
                Class31_Sub3_Sub2 class31_sub3_sub2 = new Class31_Sub3_Sub2((byte)114, abyte1);
                class31_sub3_sub2.anInt1440 = 3;
                int i2 = class31_sub3_sub2.method426() + 6;
                int j2 = 6;
                abyte0 = new byte[i2];
                for(int k2 = 0; k2 < 6; k2++)
                    abyte0[k2] = abyte1[k2];

                while(j2 < i2) 
                {
                    int l2 = i2 - j2;
                    if(l2 > 1000)
                        l2 = 1000;
                    int j3 = datainputstream.read(abyte0, j2, l2);
                    if(j3 < 0)
                    {
                        s2 = "Length error: " + j2 + "/" + i2;
                        throw new IOException("EOF");
                    }
                    j2 += j3;
                    int k3 = (j2 * 100) / i2;
                    if(k3 != k1)
                        method13(i, "Loading " + s + " - " + k3 + "%", -71);
                    k1 = k3;
                }
                datainputstream.close();
                try
                {
                    if(aClass23Array1098[0] != null)
                        aClass23Array1098[0].method285(abyte0, k, true, abyte0.length);
                }
                catch(Exception _ex)
                {
                    aClass23Array1098[0] = null;
                }
                if(abyte0 != null)
                {
                    /*aCRC32_1076.reset();
                    aCRC32_1076.update(abyte0);
                    int i3 = (int)aCRC32_1076.getValue();
                    if(i3 != j)
                    {
                        abyte0 = null;
                        j1++;
                        s2 = "Checksum error: " + i3;
                    }*/
                }
            }
            catch(IOException ioexception)
            {
                if(s2.equals("Unknown error"))
                    s2 = "Connection error";
                abyte0 = null;
            }
            catch(NullPointerException _ex)
            {
                s2 = "Null error";
                abyte0 = null;
                if(!signlink.reporterror)
                    return null;
            }
            catch(ArrayIndexOutOfBoundsException _ex)
            {
                s2 = "Bounds error";
                abyte0 = null;
                if(!signlink.reporterror)
                    return null;
            }
            catch(Exception _ex)
            {
                s2 = "Unexpected error";
                abyte0 = null;
                if(!signlink.reporterror)
                    return null;
            }
            if(abyte0 == null)
            {
                for(int l1 = l; l1 > 0; l1--)
                {
                    if(j1 >= 3)
                    {
                        method13(i, "Game updated - please reload page", -71);
                        l1 = 10;
                    } else
                    {
                        method13(i, s2 + " - Retrying in " + l1, -71);
                    }
                    try
                    {
                        Thread.sleep(1000L);
                    }
                    catch(Exception _ex) { }
                }

                l *= 2;
                if(l > 60)
                    l = 60;
                aBoolean1267 = !aBoolean1267;
            }
        }
        Class11 class11_1 = new Class11(0, abyte0);
        aBoolean1079 &= flag;
        return class11_1;
    }

    public boolean method99(int i, Class30 class30)
    {
        if(i != 46001)
            aClass28ArrayArrayArray996 = null;
        int j = class30.anInt399;
        if(j >= 1 && j <= 200 || j >= 701 && j <= 900)
        {
            if(j >= 801)
                j -= 701;
            else
            if(j >= 701)
                j -= 601;
            else
            if(j >= 101)
                j -= 101;
            else
                j--;
            aStringArray1208[anInt878] = "Remove @whi@" + aStringArray1000[j];
            anIntArray1017[anInt878] = 760;
            anInt878++;
            aStringArray1208[anInt878] = "Message @whi@" + aStringArray1000[j];
            anIntArray1017[anInt878] = 678;
            anInt878++;
            return true;
        }
        if(j >= 401 && j <= 500)
        {
            aStringArray1208[anInt878] = "Remove @whi@" + class30.aString441;
            anIntArray1017[anInt878] = 831;
            anInt878++;
            return true;
        } else
        {
            return false;
        }
    }

    public boolean method100(boolean flag, int i, int j, int k)
    {
        int l = j >> 14 & 0x7fff;
        aBoolean1079 &= flag;
        int i1 = aClass34_937.method541(anInt981, i, k, j);
        if(i1 == -1)
            return false;
        int j1 = i1 & 0x1f;
        int k1 = i1 >> 6 & 3;
        anInt1250++;
        if(anInt1250 > 76)
        {
            anInt1250 = 0;
            aClass31_Sub3_Sub2_853.method411(7793, 97);
        }
        if(j1 == 10 || j1 == 11 || j1 == 22)
        {
            Class22 class22 = Class22.method273(l);
            int l1;
            int i2;
            if(k1 == 0 || k1 == 2)
            {
                l1 = class22.anInt323;
                i2 = class22.anInt344;
            } else
            {
                l1 = class22.anInt344;
                i2 = class22.anInt323;
            }
            int j2 = class22.anInt345;
            if(k1 != 0)
                j2 = (j2 << k1 & 0xf) + (j2 >> 4 - k1);
            method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, 0, i2, 0, j2, 2, k, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], l1, i);
        } else
        {
            method75(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0], aByte818, k1, 0, j1 + 1, 0, 2, k, false, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0], 0, i);
        }
        anInt844 = super.anInt30;
        anInt845 = super.anInt31;
        anInt847 = 2;
        anInt846 = 0;
        return true;
    }

    public void method101(byte byte0, long l)
    {
        try
        {
            if(l == 0L)
                return;
            for(int i = 0; i < anInt1161; i++)
            {
                if(aLongArray1218[i] != l)
                    continue;
                anInt1161--;
                aBoolean1315 = true;
                for(int j = i; j < anInt1161; j++)
                {
                    aStringArray1000[j] = aStringArray1000[j + 1];
                    anIntArray915[j] = anIntArray915[j + 1];
                    aLongArray1218[j] = aLongArray1218[j + 1];
                }

                aClass31_Sub3_Sub2_853.method411(7793, 25);
                aClass31_Sub3_Sub2_853.method418(l, (byte)56);
                break;
            }

            if(byte0 != 117)
            {
                aClass31_Sub3_Sub2_853.method412(202);
                return;
            }
        }
        catch(RuntimeException runtimeexception)
        {
            signlink.reporterror("89893, " + byte0 + ", " + l + ", " + runtimeexception.toString());
            throw new RuntimeException();
        }
    }

    public void method102(byte byte0)
    {
    /*    if(byte0 != -41)
            method6();
        int i = 5;
        anIntArray1157[8] = 0;
        int j = 0;
        while(anIntArray1157[8] == 0) 
        {
            String s = "Unknown problem";
            method13(20, "Connecting to web server", -71);
            try
            {
                DataInputStream datainputstream = method14("crc" + (int)(Math.random() * 99999999D) + "-" + 356);
                Class31_Sub3_Sub2 class31_sub3_sub2 = new Class31_Sub3_Sub2((byte)114, new byte[40]);
                datainputstream.readFully(class31_sub3_sub2.aByteArray1439, 0, 40);
                datainputstream.close();
                for(int l = 0; l < 9; l++)
                    anIntArray1157[l] = class31_sub3_sub2.method427();

                int i1 = class31_sub3_sub2.method427();
                int j1 = 1234;
                for(int k1 = 0; k1 < 9; k1++)
                    j1 = (j1 << 1) + anIntArray1157[k1];

                if(i1 != j1)
                {
                    s = "checksum problem";
                    anIntArray1157[8] = 0;
                }
            }
            catch(EOFException _ex)
            {
                s = "EOF problem";
                anIntArray1157[8] = 0;
            }
            catch(IOException _ex)
            {
                s = "connection problem";
                anIntArray1157[8] = 0;
            }
            catch(Exception _ex)
            {
                s = "logic problem";
                anIntArray1157[8] = 0;
                if(!signlink.reporterror)
                    return;
            }
            if(anIntArray1157[8] == 0)
            {
                j++;
                for(int k = i; k > 0; k--)
                {
                    if(j >= 10)
                    {
                        method13(10, "Game updated - please reload page", -71);
                        k = 10;
                    } else
                    {
                        method13(10, s + " - Will retry in " + k + " secs.", -71);
                    }
                    try
                    {
                        Thread.sleep(1000L);
                    }
                    catch(Exception _ex) { }
                }

                i *= 2;
                if(i > 60)
                    i = 60;
                aBoolean1267 = !aBoolean1267;
            }
        }
		*/
    }

    public URL getCodeBase()
    {
		if(signlink.mainapp != null)
			return signlink.mainapp.getCodeBase();
		try
		{
			if(super.aFrame_Sub1_18 != null)
				return new URL("http://" + server + ":" + (80));
		}
		catch(Exception _ex) { }
		return super.getCodeBase();
    }

    public void method103(Class31_Sub3_Sub1_Sub3 class31_sub3_sub1_sub3, int i)
    {
        int j = 256;
        for(int k = 0; k < anIntArray1028.length; k++)
            anIntArray1028[k] = 0;

        for(int l = 0; l < 5000; l++)
        {
            int i1 = (int)(Math.random() * 128D * (double)j);
            anIntArray1028[i1] = (int)(Math.random() * 256D);
        }

        for(int j1 = 0; j1 < 20; j1++)
        {
            for(int k1 = 1; k1 < j - 1; k1++)
            {
                for(int i2 = 1; i2 < 127; i2++)
                {
                    int k2 = i2 + (k1 << 7);
                    anIntArray1029[k2] = (anIntArray1028[k2 - 1] + anIntArray1028[k2 + 1] + anIntArray1028[k2 - 128] + anIntArray1028[k2 + 128]) / 4;
                }

            }

            int ai[] = anIntArray1028;
            anIntArray1028 = anIntArray1029;
            anIntArray1029 = ai;
        }

        if(i < 0 || i > 0)
            anInt961 = -1;
        if(class31_sub3_sub1_sub3 != null)
        {
            int l1 = 0;
            for(int j2 = 0; j2 < class31_sub3_sub1_sub3.anInt1505; j2++)
            {
                for(int l2 = 0; l2 < class31_sub3_sub1_sub3.anInt1504; l2++)
                    if(class31_sub3_sub1_sub3.aByteArray1502[l1++] != 0)
                    {
                        int i3 = l2 + 16 + class31_sub3_sub1_sub3.anInt1506;
                        int j3 = j2 + 16 + class31_sub3_sub1_sub3.anInt1507;
                        int k3 = i3 + (j3 << 7);
                        anIntArray1028[k3] = 0;
                    }

            }

        }
    }

    public void method104(int i)
    {
        if(i >= 0)
            aClass28ArrayArrayArray996 = null;
        aClass15_1225.method213(0);
        if(anInt1285 == 2)
        {
            byte abyte0[] = aClass31_Sub3_Sub1_Sub3_1173.aByteArray1502;
            int ai[] = Class31_Sub3_Sub1.anIntArray1411;
            int l2 = abyte0.length;
            for(int j5 = 0; j5 < l2; j5++)
                if(abyte0[j5] == 0)
                    ai[j5] = 0;

            aClass31_Sub3_Sub1_Sub2_957.method383(anInt820, false, 25, 33, 256, anIntArray1135, 0, anIntArray913, 33, 25, 0);
            aClass15_1226.method213(0);
            Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
            return;
        }
        int j = anInt820 + anInt1231 & 0x7ff;
        int k = 48 + ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
        int i3 = 464 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
        aClass31_Sub3_Sub1_Sub2_984.method383(j, false, i3, 151, 256 + anInt1290, anIntArray1288, 5, anIntArray886, 146, k, 25);
        aClass31_Sub3_Sub1_Sub2_957.method383(anInt820, false, 25, 33, 256, anIntArray1135, 0, anIntArray913, 33, 25, 0);
        for(int k5 = 0; k5 < anInt1298; k5++)
        {
            int l = (anIntArray1299[k5] * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
            int j3 = (anIntArray1300[k5] * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
            method126(l, aBoolean890, j3, aClass31_Sub3_Sub1_Sub2Array1228[k5]);
        }

        for(int l5 = 0; l5 < 104; l5++)
        {
            for(int i6 = 0; i6 < 104; i6++)
            {
                Class28 class28 = aClass28ArrayArrayArray996[anInt981][l5][i6];
                if(class28 != null)
                {
                    int i1 = (l5 * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
                    int k3 = (i6 * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
                    method126(i1, aBoolean890, k3, aClass31_Sub3_Sub1_Sub2_1176);
                }
            }

        }

        for(int j6 = 0; j6 < anInt1102; j6++)
        {
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[anIntArray1103[j6]];
            if(class31_sub3_sub3_sub4_sub1 != null && class31_sub3_sub3_sub4_sub1.method496(21781))
            {
                Class45 class45 = class31_sub3_sub3_sub4_sub1.aClass45_1711;
                if(class45.anIntArray696 != null)
                    class45 = class45.method595(7);
                if(class45 != null && class45.aBoolean698 && class45.aBoolean688)
                {
                    int j1 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1635 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
                    int l3 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1636 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
                    method126(j1, aBoolean890, l3, aClass31_Sub3_Sub1_Sub2_1177);
                }
            }
        }

        for(int k6 = 0; k6 < anInt969; k6++)
        {
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anIntArray970[k6]];
            if(class31_sub3_sub3_sub4_sub2 != null && class31_sub3_sub3_sub4_sub2.method496(21781))
            {
                int k1 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1635 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
                int i4 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1636 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
                boolean flag = false;
                long l6 = Class26.method297(class31_sub3_sub3_sub4_sub2.aString1729);
                for(int i7 = 0; i7 < anInt1161; i7++)
                {
                    if(l6 != aLongArray1218[i7] || anIntArray915[i7] == 0)
                        continue;
                    flag = true;
                    break;
                }

                boolean flag1 = false;
                if(aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1730 != 0 && class31_sub3_sub3_sub4_sub2.anInt1730 != 0 && aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1730 == class31_sub3_sub3_sub4_sub2.anInt1730)
                    flag1 = true;
                if(flag)
                    method126(k1, aBoolean890, i4, aClass31_Sub3_Sub1_Sub2_1179);
                else
                if(flag1)
                    method126(k1, aBoolean890, i4, aClass31_Sub3_Sub1_Sub2_1180);
                else
                    method126(k1, aBoolean890, i4, aClass31_Sub3_Sub1_Sub2_1178);
            }
        }

        if(anInt1024 != 0 && anInt935 % 20 < 10)
        {
            if(anInt1024 == 1 && anInt987 >= 0 && anInt987 < aClass31_Sub3_Sub3_Sub4_Sub1Array1101.length)
            {
                Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1_1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[anInt987];
                if(class31_sub3_sub3_sub4_sub1_1 != null)
                {
                    int l1 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_1)).anInt1635 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
                    int j4 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1_1)).anInt1636 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
                    method115(l1, -60, j4, aClass31_Sub3_Sub1_Sub2_1126);
                }
            }
            if(anInt1024 == 2)
            {
                int i2 = ((anInt1037 - anInt929) * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
                int k4 = ((anInt1038 - anInt930) * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
                method115(i2, -60, k4, aClass31_Sub3_Sub1_Sub2_1126);
            }
            if(anInt1024 == 10 && anInt887 >= 0 && anInt887 < aClass31_Sub3_Sub3_Sub4_Sub2Array968.length)
            {
                Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2_1 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[anInt887];
                if(class31_sub3_sub3_sub4_sub2_1 != null)
                {
                    int j2 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_1)).anInt1635 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
                    int l4 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2_1)).anInt1636 / 32 - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
                    method115(j2, -60, l4, aClass31_Sub3_Sub1_Sub2_1126);
                }
            }
        }
        if(anInt982 != 0)
        {
            int k2 = (anInt982 * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 / 32;
            int i5 = (anInt983 * 4 + 2) - ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 / 32;
            method126(k2, aBoolean890, i5, aClass31_Sub3_Sub1_Sub2_1125);
        }
        Class31_Sub3_Sub1.method350(3, 2, 97, 0xffffff, 78, 3);
        aClass15_1226.method213(0);
        Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
    }

    public void method105(byte byte0)
    {
        signlink.midiplay = false;
        if(byte0 != -65)
            aClass31_Sub3_Sub2_853.method412(118);
        signlink.midifade = 0;
        signlink.midi = "stop";
    }

    public void method106(Class31_Sub3_Sub2 class31_sub3_sub2, int i, int j)
    {
        for(int k = 0; k < anInt971; k++)
        {
            int l = anIntArray972[k];
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[l];
            int i1 = class31_sub3_sub2.method422();
            if((i1 & 2) != 0)
                i1 += class31_sub3_sub2.method422() << 8;
            method114(-37382, l, class31_sub3_sub3_sub4_sub2, i1, class31_sub3_sub2);
        }

        if(j == anInt908);
    }

    public void method107(int i)
    {
        Class31_Sub2 class31_sub2 = (Class31_Sub2)aClass28_836.method328();
        if(i < 4 || i > 4)
            aBoolean850 = !aBoolean850;
        for(; class31_sub2 != null; class31_sub2 = (Class31_Sub2)aClass28_836.method330(-582))
            if(class31_sub2.anInt1391 == -1)
            {
                class31_sub2.anInt1402 = 0;
                method134(class31_sub2, aByte1223);
            } else
            {
                class31_sub2.method343();
            }

    }

    public void method108(int i, long l)
    {
        try
        {
            if(i < 5 || i > 5)
                aClass31_Sub3_Sub2_853.method412(205);
            if(l == 0L)
                return;
            for(int j = 0; j < anInt998; j++)
                if(aLongArray1131[j] == l)
                {
                    anInt998--;
                    aBoolean1315 = true;
                    for(int k = j; k < anInt998; k++)
                        aLongArray1131[k] = aLongArray1131[k + 1];

                    aClass31_Sub3_Sub2_853.method411(7793, 246);
                    aClass31_Sub3_Sub2_853.method418(l, (byte)56);
                    return;
                }

            return;
        }
        catch(RuntimeException runtimeexception)
        {
            signlink.reporterror("78144, " + i + ", " + l + ", " + runtimeexception.toString());
        }
        throw new RuntimeException();
    }

    public void method109(int i)
    {
        char c = '\u0100';
        if(i >= 0)
            anInt961 = aClass31_Sub3_Sub2_1307.method422();
        if(anInt1275 > 0)
        {
            for(int j = 0; j < 256; j++)
                if(anInt1275 > 768)
                    anIntArray894[j] = method95(anIntArray895[j], anIntArray896[j], 1024 - anInt1275, aByte956);
                else
                if(anInt1275 > 256)
                    anIntArray894[j] = anIntArray896[j];
                else
                    anIntArray894[j] = method95(anIntArray896[j], anIntArray895[j], 256 - anInt1275, aByte956);

        } else
        if(anInt1276 > 0)
        {
            for(int k = 0; k < 256; k++)
                if(anInt1276 > 768)
                    anIntArray894[k] = method95(anIntArray895[k], anIntArray897[k], 1024 - anInt1276, aByte956);
                else
                if(anInt1276 > 256)
                    anIntArray894[k] = anIntArray897[k];
                else
                    anIntArray894[k] = method95(anIntArray897[k], anIntArray895[k], 256 - anInt1276, aByte956);

        } else
        {
            for(int l = 0; l < 256; l++)
                anIntArray894[l] = anIntArray895[l];

        }
        for(int i1 = 0; i1 < 33920; i1++)
            aClass15_1005.anIntArray237[i1] = aClass31_Sub3_Sub1_Sub2_1251.anIntArray1492[i1];

        int j1 = 0;
        int k1 = 1152;
        for(int l1 = 1; l1 < c - 1; l1++)
        {
            int i2 = (anIntArray1132[l1] * (c - l1)) / c;
            int k2 = 22 + i2;
            if(k2 < 0)
                k2 = 0;
            j1 += k2;
            for(int i3 = k2; i3 < 128; i3++)
            {
                int k3 = anIntArray1077[j1++];
                if(k3 != 0)
                {
                    int i4 = k3;
                    int k4 = 256 - k3;
                    k3 = anIntArray894[k3];
                    int i5 = aClass15_1005.anIntArray237[k1];
                    aClass15_1005.anIntArray237[k1++] = ((k3 & 0xff00ff) * i4 + (i5 & 0xff00ff) * k4 & 0xff00ff00) + ((k3 & 0xff00) * i4 + (i5 & 0xff00) * k4 & 0xff0000) >> 8;
                } else
                {
                    k1++;
                }
            }

            k1 += k2;
        }

        aClass15_1005.method214(super.aGraphics15, 0, 0, 0);
        for(int j2 = 0; j2 < 33920; j2++)
            aClass15_1006.anIntArray237[j2] = aClass31_Sub3_Sub1_Sub2_1252.anIntArray1492[j2];

        j1 = 0;
        k1 = 1176;
        for(int l2 = 1; l2 < c - 1; l2++)
        {
            int j3 = (anIntArray1132[l2] * (c - l2)) / c;
            int l3 = 103 - j3;
            k1 += j3;
            for(int j4 = 0; j4 < l3; j4++)
            {
                int l4 = anIntArray1077[j1++];
                if(l4 != 0)
                {
                    int j5 = l4;
                    int k5 = 256 - l4;
                    l4 = anIntArray894[l4];
                    int l5 = aClass15_1006.anIntArray237[k1];
                    aClass15_1006.anIntArray237[k1++] = ((l4 & 0xff00ff) * j5 + (l5 & 0xff00ff) * k5 & 0xff00ff00) + ((l4 & 0xff00) * j5 + (l5 & 0xff00) * k5 & 0xff0000) >> 8;
                } else
                {
                    k1++;
                }
            }

            j1 += 128 - l3;
            k1 += 128 - l3 - j3;
        }

        aClass15_1006.method214(super.aGraphics15, 637, 0, 0);
    }

    public void method110(int i, int j, boolean flag)
    {
        int k = 0;
        for(int l = 0; l < 100; l++)
        {
            if(aStringArray1107[l] == null)
                continue;
            int i1 = anIntArray1105[l];
            int j1 = (70 - k * 14) + anInt1119 + 4;
            if(j1 < -20)
                break;
            String s = aStringArray1106[l];
            boolean flag1 = false;
            if(s != null && s.startsWith("@cr1@"))
            {
                s = s.substring(5);
                boolean flag2 = true;
            }
            if(s != null && s.startsWith("@cr2@"))
            {
                s = s.substring(5);
                byte byte0 = 2;
            }
            if(i1 == 0)
                k++;
            if((i1 == 1 || i1 == 2) && (i1 == 1 || anInt995 == 0 || anInt995 == 1 && method16(s, (byte)9)))
            {
                if(j > j1 - 14 && j <= j1 && !s.equals(aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729))
                {
                    if(anInt1117 >= 1)
                    {
                        aStringArray1208[anInt878] = "Report abuse @whi@" + s;
                        anIntArray1017[anInt878] = 564;
                        anInt878++;
                    }
                    aStringArray1208[anInt878] = "Add ignore @whi@" + s;
                    anIntArray1017[anInt878] = 502;
                    anInt878++;
                    aStringArray1208[anInt878] = "Add friend @whi@" + s;
                    anIntArray1017[anInt878] = 308;
                    anInt878++;
                }
                k++;
            }
            if((i1 == 3 || i1 == 7) && anInt842 == 0 && (i1 == 7 || anInt849 == 0 || anInt849 == 1 && method16(s, (byte)9)))
            {
                if(j > j1 - 14 && j <= j1)
                {
                    if(anInt1117 >= 1)
                    {
                        aStringArray1208[anInt878] = "Report abuse @whi@" + s;
                        anIntArray1017[anInt878] = 564;
                        anInt878++;
                    }
                    aStringArray1208[anInt878] = "Add ignore @whi@" + s;
                    anIntArray1017[anInt878] = 502;
                    anInt878++;
                    aStringArray1208[anInt878] = "Add friend @whi@" + s;
                    anIntArray1017[anInt878] = 308;
                    anInt878++;
                }
                k++;
            }
            if(i1 == 4 && (anInt837 == 0 || anInt837 == 1 && method16(s, (byte)9)))
            {
                if(j > j1 - 14 && j <= j1)
                {
                    aStringArray1208[anInt878] = "Accept trade @whi@" + s;
                    anIntArray1017[anInt878] = 455;
                    anInt878++;
                }
                k++;
            }
            if((i1 == 5 || i1 == 6) && anInt842 == 0 && anInt849 < 2)
                k++;
            if(i1 == 8 && (anInt837 == 0 || anInt837 == 1 && method16(s, (byte)9)))
            {
                if(j > j1 - 14 && j <= j1)
                {
                    aStringArray1208[anInt878] = "Accept challenge @whi@" + s;
                    anIntArray1017[anInt878] = 899;
                    anInt878++;
                }
                k++;
            }
        }

        if(flag);
    }

    public void method111(int i, int j, int k, int l, int i1, int j1, int k1, 
            int l1)
    {
        if(k1 >= 0)
            aBoolean934 = !aBoolean934;
        if(l1 >= 1 && i >= 1 && l1 <= 102 && i <= 102)
        {
            if(aBoolean979 && j1 != anInt981)
                return;
            int i2 = 0;
            byte byte0 = -1;
            boolean flag = false;
            boolean flag1 = false;
            if(k == 0)
                i2 = aClass34_937.method537(j1, l1, i);
            if(k == 1)
                i2 = aClass34_937.method538(j1, l1, -38326, i);
            if(k == 2)
                i2 = aClass34_937.method539(j1, l1, i);
            if(k == 3)
                i2 = aClass34_937.method540(j1, l1, i);
            if(i2 != 0)
            {
                int i3 = aClass34_937.method541(j1, l1, i, i2);
                int j2 = i2 >> 14 & 0x7fff;
                int k2 = i3 & 0x1f;
                int l2 = i3 >> 6;
                if(k == 0)
                {
                    aClass34_937.method528(j1, l1, i, true);
                    Class22 class22 = Class22.method273(j2);
                    if(class22.aBoolean302)
                        aClass4Array1281[j1].method165(class22.aBoolean315, i, false, l2, l1, k2);
                }
                if(k == 1)
                    aClass34_937.method529(j1, i, (byte)83, l1);
                if(k == 2)
                {
                    aClass34_937.method530(j1, true, i, l1);
                    Class22 class22_1 = Class22.method273(j2);
                    if(l1 + class22_1.anInt323 > 103 || i + class22_1.anInt323 > 103 || l1 + class22_1.anInt344 > 103 || i + class22_1.anInt344 > 103)
                        return;
                    if(class22_1.aBoolean302)
                        aClass4Array1281[j1].method166(i, class22_1.aBoolean315, l2, l1, anInt1083, class22_1.anInt323, class22_1.anInt344);
                }
                if(k == 3)
                {
                    aClass34_937.method531(l1, true, j1, i);
                    Class22 class22_2 = Class22.method273(j2);
                    if(class22_2.aBoolean302 && class22_2.aBoolean316)
                        aClass4Array1281[j1].method168(i, -217, l1);
                }
            }
            if(l >= 0)
            {
                int j3 = j1;
                if(j3 < 3 && (aByteArrayArrayArray917[1][l1][i] & 2) == 2)
                    j3++;
                Class9.method184(i1, anIntArrayArrayArray848, true, j1, j3, j, aClass4Array1281[j1], i, l, aClass34_937, l1);
            }
        }
    }

    public void method6()
    {
        method13(20, "Starting up", -71);
        if(signlink.sunjava)
            super.anInt9 = 5;
        if(aBoolean1209)
        {
            aBoolean958 = true;
            return;
        }
        aBoolean1209 = true;
        boolean flag = false;
        String s = method59((byte)-22);
        if(s.endsWith("jagex.com"))
            flag = true;
        if(s.endsWith("runescape.com"))
            flag = true;
        if(s.endsWith("192.168.1.2"))
            flag = true;
        if(s.endsWith("192.168.1.231"))
            flag = true;
        if(s.endsWith("192.168.1.229"))
            flag = true;
        if(s.endsWith("192.168.1.228"))
            flag = true;
        if(s.endsWith("192.168.1.227"))
            flag = true;
        if(s.endsWith("192.168.1.226"))
            flag = true;
        if(s.endsWith("192.168.1.224"))
            flag = true;
        if(s.endsWith("192.168.1.223"))
            flag = true;
        if(s.endsWith("127.0.0.1"))
            flag = true;
        if(!flag)
        {
            aBoolean1058 = true;
            return;
        }
        if(signlink.cache_dat != null)
        {
            for(int i = 0; i < 5; i++)
                aClass23Array1098[i] = new Class23(signlink.cache_dat, 0x7a120, signlink.cache_idx[i], (byte)-101, i + 1);

        }
        try
        {
            method102((byte)-41);
            aClass11_1261 = method98(25, "title screen", true, anIntArray1157[1], 1, "title");
            aClass31_Sub3_Sub1_Sub4_1234 = new Class31_Sub3_Sub1_Sub4(false, "p11_full", aClass11_1261, -916);
            aClass31_Sub3_Sub1_Sub4_1235 = new Class31_Sub3_Sub1_Sub4(false, "p12_full", aClass11_1261, -916);
            aClass31_Sub3_Sub1_Sub4_1236 = new Class31_Sub3_Sub1_Sub4(false, "b12_full", aClass11_1261, -916);
            aClass31_Sub3_Sub1_Sub4_1237 = new Class31_Sub3_Sub1_Sub4(true, "q8_full", aClass11_1261, -916);
            method67(-480);
            method17((byte)38);
            Class11 class11 = method98(30, "config", true, anIntArray1157[2], 2, "config");
            Class11 class11_1 = method98(35, "interface", true, anIntArray1157[3], 3, "interface");
            Class11 class11_2 = method98(40, "2d graphics", true, anIntArray1157[4], 4, "media");
            Class11 class11_3 = method98(45, "textures", true, anIntArray1157[6], 6, "textures");
            Class11 class11_4 = method98(50, "chat system", true, anIntArray1157[7], 7, "wordenc");
            Class11 class11_5 = method98(55, "sound effects", true, anIntArray1157[8], 8, "sounds");
            aByteArrayArrayArray917 = new byte[4][104][104];
            anIntArrayArrayArray848 = new int[4][105][105];
            aClass34_937 = new Class34(104, anIntArrayArrayArray848, 104, anInt1263, 4);
            for(int j = 0; j < 4; j++)
                aClass4Array1281[j] = new Class4(false, 104, 104);

            aClass31_Sub3_Sub1_Sub2_984 = new Class31_Sub3_Sub1_Sub2(512, 512);
            Class11 class11_6 = method98(60, "update list", true, anIntArray1157[5], 5, "versionlist");
            method13(60, "Connecting to update server", -71);
            aClass27_Sub1_843 = new Class27_Sub1();
            aClass27_Sub1_843.method304(class11_6, this);
            Class32.method505(aClass27_Sub1_843.method324((byte)7));
            Class31_Sub3_Sub3_Sub2.method464(aClass27_Sub1_843.method315(0, false), aClass27_Sub1_843);
            if(!aBoolean979)
            {
                anInt1292 = 0;
                aBoolean1293 = true;
                aClass27_Sub1_843.method320(2, anInt1292);
                while(aClass27_Sub1_843.method319() > 0) 
                {
                    method36(44393);
                    try
                    {
                        Thread.sleep(100L);
                    }
                    catch(Exception _ex) { }
                    if(aClass27_Sub1_843.anInt1337 > 3)
                    {
                        method142("ondemand");
                        return;
                    }
                }
            }
            method13(65, "Requesting animations", -71);
            int k = aClass27_Sub1_843.method315(1, false);
            for(int i1 = 0; i1 < k; i1++)
                aClass27_Sub1_843.method320(1, i1);

            while(aClass27_Sub1_843.method319() > 0) 
            {
                int j1 = k - aClass27_Sub1_843.method319();
                if(j1 > 0)
                    method13(65, "Loading animations - " + (j1 * 100) / k + "%", -71);
                method36(44393);
                try
                {
                    Thread.sleep(100L);
                }
                catch(Exception _ex) { }
                if(aClass27_Sub1_843.anInt1337 > 3)
                {
                    method142("ondemand");
                    return;
                }
            }
            method13(70, "Requesting models", -71);
            k = aClass27_Sub1_843.method315(0, false);
            for(int k1 = 0; k1 < k; k1++)
            {
                int l1 = aClass27_Sub1_843.method309(aByte891, k1);
                if((l1 & 1) != 0)
                    aClass27_Sub1_843.method320(0, k1);
            }

            k = aClass27_Sub1_843.method319();
            while(aClass27_Sub1_843.method319() > 0) 
            {
                int i2 = k - aClass27_Sub1_843.method319();
                if(i2 > 0)
                    method13(70, "Loading models - " + (i2 * 100) / k + "%", -71);
                method36(44393);
                try
                {
                    Thread.sleep(100L);
                }
                catch(Exception _ex) { }
            }
            if(aClass23Array1098[0] != null)
            {
                method13(75, "Requesting maps", -71);
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(48, 0, 0, 47));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(48, 1, 0, 47));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(48, 0, 0, 48));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(48, 1, 0, 48));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(48, 0, 0, 49));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(48, 1, 0, 49));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(47, 0, 0, 47));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(47, 1, 0, 47));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(47, 0, 0, 48));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(47, 1, 0, 48));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(148, 0, 0, 48));
                aClass27_Sub1_843.method320(3, aClass27_Sub1_843.method316(148, 1, 0, 48));
                k = aClass27_Sub1_843.method319();
                while(aClass27_Sub1_843.method319() > 0) 
                {
                    int j2 = k - aClass27_Sub1_843.method319();
                    if(j2 > 0)
                        method13(75, "Loading maps - " + (j2 * 100) / k + "%", -71);
                    method36(44393);
                    try
                    {
                        Thread.sleep(100L);
                    }
                    catch(Exception _ex) { }
                }
            }
            k = aClass27_Sub1_843.method315(0, false);
            for(int k2 = 0; k2 < k; k2++)
            {
                int l2 = aClass27_Sub1_843.method309(aByte891, k2);
                byte byte0 = 0;
                if((l2 & 8) != 0)
                    byte0 = 10;
                else
                if((l2 & 0x20) != 0)
                    byte0 = 9;
                else
                if((l2 & 0x10) != 0)
                    byte0 = 8;
                else
                if((l2 & 0x40) != 0)
                    byte0 = 7;
                else
                if((l2 & 0x80) != 0)
                    byte0 = 6;
                else
                if((l2 & 2) != 0)
                    byte0 = 5;
                else
                if((l2 & 4) != 0)
                    byte0 = 4;
                if((l2 & 1) != 0)
                    byte0 = 3;
                if(byte0 != 0)
                    aClass27_Sub1_843.method318(byte0, k2, 0, false);
            }

            aClass27_Sub1_843.method305((byte)3, aBoolean978);
            if(!aBoolean979)
            {
                int l = aClass27_Sub1_843.method315(2, false);
                for(int i3 = 1; i3 < l; i3++)
                    if(aClass27_Sub1_843.method313(i3, (byte)113))
                        aClass27_Sub1_843.method318((byte)1, i3, 2, false);

            }
            method13(80, "Unpacking media", -71);
            aClass31_Sub3_Sub1_Sub3_1172 = new Class31_Sub3_Sub1_Sub3(class11_2, "invback", 0);
            aClass31_Sub3_Sub1_Sub3_1174 = new Class31_Sub3_Sub1_Sub3(class11_2, "chatback", 0);
            aClass31_Sub3_Sub1_Sub3_1173 = new Class31_Sub3_Sub1_Sub3(class11_2, "mapback", 0);
            aClass31_Sub3_Sub1_Sub3_1032 = new Class31_Sub3_Sub1_Sub3(class11_2, "backbase1", 0);
            aClass31_Sub3_Sub1_Sub3_1033 = new Class31_Sub3_Sub1_Sub3(class11_2, "backbase2", 0);
            aClass31_Sub3_Sub1_Sub3_1034 = new Class31_Sub3_Sub1_Sub3(class11_2, "backhmid1", 0);
            for(int j3 = 0; j3 < 13; j3++)
                aClass31_Sub3_Sub1_Sub3Array1141[j3] = new Class31_Sub3_Sub1_Sub3(class11_2, "sideicons", j3);

            aClass31_Sub3_Sub1_Sub2_957 = new Class31_Sub3_Sub1_Sub2(class11_2, "compass", 0);
            aClass31_Sub3_Sub1_Sub2_1143 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapedge", 0);
            aClass31_Sub3_Sub1_Sub2_1143.method376(-668);
            for(int k3 = 0; k3 < 72; k3++)
                aClass31_Sub3_Sub1_Sub3Array1140[k3] = new Class31_Sub3_Sub1_Sub3(class11_2, "mapscene", k3);

            for(int l3 = 0; l3 < 63; l3++)
                aClass31_Sub3_Sub1_Sub2Array916[l3] = new Class31_Sub3_Sub1_Sub2(class11_2, "mapfunction", l3);

            for(int i4 = 0; i4 < 5; i4++)
                aClass31_Sub3_Sub1_Sub2Array1306[i4] = new Class31_Sub3_Sub1_Sub2(class11_2, "hitmarks", i4);

            for(int j4 = 0; j4 < 6; j4++)
                aClass31_Sub3_Sub1_Sub2Array851[j4] = new Class31_Sub3_Sub1_Sub2(class11_2, "headicons_pk", j4);

            for(int k4 = 0; k4 < 9; k4++)
                aClass31_Sub3_Sub1_Sub2Array1001[k4] = new Class31_Sub3_Sub1_Sub2(class11_2, "headicons_prayer", k4);

            for(int l4 = 0; l4 < 6; l4++)
                aClass31_Sub3_Sub1_Sub2Array1118[l4] = new Class31_Sub3_Sub1_Sub2(class11_2, "headicons_hint", l4);

            aClass31_Sub3_Sub1_Sub2_1027 = new Class31_Sub3_Sub1_Sub2(class11_2, "overlay_multiway", 0);
            aClass31_Sub3_Sub1_Sub2_1125 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapmarker", 0);
            aClass31_Sub3_Sub1_Sub2_1126 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapmarker", 1);
            for(int i5 = 0; i5 < 8; i5++)
                aClass31_Sub3_Sub1_Sub2Array1070[i5] = new Class31_Sub3_Sub1_Sub2(class11_2, "cross", i5);

            aClass31_Sub3_Sub1_Sub2_1176 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapdots", 0);
            aClass31_Sub3_Sub1_Sub2_1177 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapdots", 1);
            aClass31_Sub3_Sub1_Sub2_1178 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapdots", 2);
            aClass31_Sub3_Sub1_Sub2_1179 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapdots", 3);
            aClass31_Sub3_Sub1_Sub2_1180 = new Class31_Sub3_Sub1_Sub2(class11_2, "mapdots", 4);
            aClass31_Sub3_Sub1_Sub3_879 = new Class31_Sub3_Sub1_Sub3(class11_2, "scrollbar", 0);
            aClass31_Sub3_Sub1_Sub3_880 = new Class31_Sub3_Sub1_Sub3(class11_2, "scrollbar", 1);
            aClass31_Sub3_Sub1_Sub3_1241 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone1", 0);
            aClass31_Sub3_Sub1_Sub3_1242 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone2", 0);
            aClass31_Sub3_Sub1_Sub3_1243 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone3", 0);
            aClass31_Sub3_Sub1_Sub3_1244 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone1", 0);
            aClass31_Sub3_Sub1_Sub3_1244.method389((byte)8);
            aClass31_Sub3_Sub1_Sub3_1245 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone2", 0);
            aClass31_Sub3_Sub1_Sub3_1245.method389((byte)8);
            aClass31_Sub3_Sub1_Sub3_856 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone1", 0);
            aClass31_Sub3_Sub1_Sub3_856.method390(33964);
            aClass31_Sub3_Sub1_Sub3_857 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone2", 0);
            aClass31_Sub3_Sub1_Sub3_857.method390(33964);
            aClass31_Sub3_Sub1_Sub3_858 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone3", 0);
            aClass31_Sub3_Sub1_Sub3_858.method390(33964);
            aClass31_Sub3_Sub1_Sub3_859 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone1", 0);
            aClass31_Sub3_Sub1_Sub3_859.method389((byte)8);
            aClass31_Sub3_Sub1_Sub3_859.method390(33964);
            aClass31_Sub3_Sub1_Sub3_860 = new Class31_Sub3_Sub1_Sub3(class11_2, "redstone2", 0);
            aClass31_Sub3_Sub1_Sub3_860.method389((byte)8);
            aClass31_Sub3_Sub1_Sub3_860.method390(33964);
            for(int j5 = 0; j5 < 2; j5++)
                aClass31_Sub3_Sub1_Sub3Array1115[j5] = new Class31_Sub3_Sub1_Sub3(class11_2, "mod_icons", j5);

            Class31_Sub3_Sub1_Sub2 class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backleft1", 0);
            aClass15_1189 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backleft2", 0);
            aClass15_1190 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backright1", 0);
            aClass15_1191 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backright2", 0);
            aClass15_1192 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backtop1", 0);
            aClass15_1193 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backvmid1", 0);
            aClass15_1194 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backvmid2", 0);
            aClass15_1195 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backvmid3", 0);
            aClass15_1196 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            class31_sub3_sub1_sub2 = new Class31_Sub3_Sub1_Sub2(class11_2, "backhmid2", 0);
            aClass15_1197 = new Class15(class31_sub3_sub1_sub2.anInt1494, class31_sub3_sub1_sub2.anInt1493, method11(true), anInt1144);
            class31_sub3_sub1_sub2.method377(143, 0, 0);
            int k5 = (int)(Math.random() * 21D) - 10;
            int l5 = (int)(Math.random() * 21D) - 10;
            int i6 = (int)(Math.random() * 21D) - 10;
            int j6 = (int)(Math.random() * 41D) - 20;
            for(int k6 = 0; k6 < 100; k6++)
            {
                if(aClass31_Sub3_Sub1_Sub2Array916[k6] != null)
                    aClass31_Sub3_Sub1_Sub2Array916[k6].method375(l5 + j6, (byte)1, k5 + j6, i6 + j6);
                if(aClass31_Sub3_Sub1_Sub3Array1140[k6] != null)
                    aClass31_Sub3_Sub1_Sub3Array1140[k6].method391(l5 + j6, (byte)1, k5 + j6, i6 + j6);
            }

            method13(83, "Unpacking textures", -71);
            Class31_Sub3_Sub1_Sub1.method362(class11_3, (byte)-105);
            Class31_Sub3_Sub1_Sub1.method366(-157, 0.80000000000000004D);
            Class31_Sub3_Sub1_Sub1.method361((byte)2, 20);
            method13(86, "Unpacking config", -71);
            Class8.method178(class11, 5);
            Class22.method275(class11);
            Class2.method153(class11, 5);
            Class41.method578(class11);
            Class45.method599(class11);
            Class5.method172(class11, 5);
            Class3.method157(class11, 5);
            Class21.method271(class11, 5);
            Class13.method211(class11, 5);
            Class41.aBoolean609 = aBoolean978;
            if(!aBoolean979)
            {
                method13(90, "Unpacking sounds", -71);
                byte abyte0[] = class11_5.method204("sounds.dat", null);
                Class31_Sub3_Sub2 class31_sub3_sub2 = new Class31_Sub3_Sub2((byte)114, abyte0);
                Class25.method291(class31_sub3_sub2, 5);
            }
            method13(95, "Unpacking interfaces", -71);
            Class31_Sub3_Sub1_Sub4 aclass31_sub3_sub1_sub4[] = {
                aClass31_Sub3_Sub1_Sub4_1234, aClass31_Sub3_Sub1_Sub4_1235, aClass31_Sub3_Sub1_Sub4_1236, aClass31_Sub3_Sub1_Sub4_1237
            };
            Class30.method334(true, class11_1, class11_2, aclass31_sub3_sub1_sub4);
            method13(100, "Preparing game engine", -71);
            for(int l6 = 0; l6 < 33; l6++)
            {
                int i7 = 999;
                int k7 = 0;
                for(int i8 = 0; i8 < 34; i8++)
                {
                    if(aClass31_Sub3_Sub1_Sub3_1173.aByteArray1502[i8 + l6 * aClass31_Sub3_Sub1_Sub3_1173.anInt1504] == 0)
                    {
                        if(i7 == 999)
                            i7 = i8;
                        continue;
                    }
                    if(i7 == 999)
                        continue;
                    k7 = i8;
                    break;
                }

                anIntArray1135[l6] = i7;
                anIntArray913[l6] = k7 - i7;
            }

            for(int j7 = 5; j7 < 156; j7++)
            {
                int l7 = 999;
                int j8 = 0;
                for(int l8 = 25; l8 < 172; l8++)
                {
                    if(aClass31_Sub3_Sub1_Sub3_1173.aByteArray1502[l8 + j7 * aClass31_Sub3_Sub1_Sub3_1173.anInt1504] == 0 && (l8 > 34 || j7 > 34))
                    {
                        if(l7 == 999)
                            l7 = l8;
                        continue;
                    }
                    if(l7 == 999)
                        continue;
                    j8 = l8;
                    break;
                }

                anIntArray1288[j7 - 5] = l7 - 25;
                anIntArray886[j7 - 5] = j8 - l7;
            }

            Class31_Sub3_Sub1_Sub1.method359((byte)27, 503, 765);
            anIntArray1280 = Class31_Sub3_Sub1_Sub1.anIntArray1474;
            Class31_Sub3_Sub1_Sub1.method359((byte)27, 96, 479);
            anIntArray1277 = Class31_Sub3_Sub1_Sub1.anIntArray1474;
            Class31_Sub3_Sub1_Sub1.method359((byte)27, 261, 190);
            anIntArray1278 = Class31_Sub3_Sub1_Sub1.anIntArray1474;
            Class31_Sub3_Sub1_Sub1.method359((byte)27, 334, 512);
            anIntArray1279 = Class31_Sub3_Sub1_Sub1.anIntArray1474;
            int ai[] = new int[9];
            for(int k8 = 0; k8 < 9; k8++)
            {
                int i9 = 128 + k8 * 32 + 15;
                int j9 = 600 + i9 * 3;
                int k9 = Class31_Sub3_Sub1_Sub1.anIntArray1472[i9];
                ai[k8] = j9 * k9 >> 16;
            }

            Class34.method547(ai, 800, 512, 334, 500, -234);
            Class16.method216(class11_4);
            aClass10_1200 = new Class10((byte)-60, this);
            method12(aClass10_1200, 10);
            Class31_Sub3_Sub3_Sub3.aClient1610 = this;
            Class22.aClient341 = this;
            Class45.aClient697 = this;
            return;
        }
        catch(Exception exception)
        {
            signlink.reporterror("loaderror " + aString1061 + " " + anInt838);
        }
        aBoolean928 = true;
    }

    public boolean method112(boolean flag, int i)
    {
        if(i < 0)
            return false;
        int j = anIntArray1017[i];
        if(flag)
            aClass31_Sub3_Sub2_853.method412(172);
        if(j >= 2000)
            j -= 2000;
        return j == 308;
    }

    public boolean method113(Class30 class30, int i)
    {
        if(class30.anIntArray424 == null)
            return false;
        for(int j = 0; j < class30.anIntArray424.length; j++)
        {
            int k = method84(j, (byte)0, class30);
            int l = class30.anIntArray404[j];
            if(class30.anIntArray424[j] == 2)
            {
                if(k >= l)
                    return false;
            } else
            if(class30.anIntArray424[j] == 3)
            {
                if(k <= l)
                    return false;
            } else
            if(class30.anIntArray424[j] == 4)
            {
                if(k == l)
                    return false;
            } else
            if(k != l)
                return false;
        }

        if(i != 0)
            aBoolean1186 = !aBoolean1186;
        return true;
    }

    public void method114(int i, int j, Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2, int k, Class31_Sub3_Sub2 class31_sub3_sub2)
    {
        if(i != -37382)
            anInt1116 = aClass24_993.method288();
        if((k & 0x40) != 0)
        {
            class31_sub3_sub3_sub4_sub2.anInt1666 = class31_sub3_sub2.method448((byte)56);
            if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1666 == 65535)
                class31_sub3_sub3_sub4_sub2.anInt1666 = -1;
        }
        if((k & 0x80) != 0)
        {
            int l = class31_sub3_sub2.method441(false);
            byte abyte0[] = new byte[l];
            Class31_Sub3_Sub2 class31_sub3_sub2_1 = new Class31_Sub3_Sub2((byte)114, abyte0);
            class31_sub3_sub2.method459(l, 0, abyte0, false);
            aClass31_Sub3_Sub2Array973[j] = class31_sub3_sub2_1;
            class31_sub3_sub3_sub4_sub2.method500(class31_sub3_sub2_1, anInt1233);
        }
        if((k & 0x100) != 0)
        {
            class31_sub3_sub3_sub4_sub2.anInt1627 = class31_sub3_sub2.method424();
            int i1 = class31_sub3_sub2.method427();
            class31_sub3_sub3_sub4_sub2.anInt1631 = i1 >> 16;
            class31_sub3_sub3_sub4_sub2.anInt1630 = anInt935 + (i1 & 0xffff);
            class31_sub3_sub3_sub4_sub2.anInt1628 = 0;
            class31_sub3_sub3_sub4_sub2.anInt1629 = 0;
            if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1630 > anInt935)
                class31_sub3_sub3_sub4_sub2.anInt1628 = -1;
            if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1627 == 65535)
                class31_sub3_sub3_sub4_sub2.anInt1627 = -1;
        }
        if((k & 0x400) != 0)
        {
            class31_sub3_sub3_sub4_sub2.anInt1667 = class31_sub3_sub2.method442(-13491);
            class31_sub3_sub3_sub4_sub2.anInt1669 = class31_sub3_sub2.method422();
            class31_sub3_sub3_sub4_sub2.anInt1668 = class31_sub3_sub2.method422();
            class31_sub3_sub3_sub4_sub2.anInt1670 = class31_sub3_sub2.method422();
            class31_sub3_sub3_sub4_sub2.anInt1671 = class31_sub3_sub2.method424() + anInt935;
            class31_sub3_sub3_sub4_sub2.anInt1672 = class31_sub3_sub2.method449(-30785) + anInt935;
            class31_sub3_sub3_sub4_sub2.anInt1673 = class31_sub3_sub2.method441(false);
            class31_sub3_sub3_sub4_sub2.method494(aByte997);
        }
        if((k & 0x20) != 0)
        {
            int j1 = class31_sub3_sub2.method422();
            int j2 = class31_sub3_sub2.method422();
            class31_sub3_sub3_sub4_sub2.method498(j1, anInt935, true, j2);
            class31_sub3_sub3_sub4_sub2.anInt1679 = anInt935 + 300;
            class31_sub3_sub3_sub4_sub2.anInt1680 = class31_sub3_sub2.method442(-13491);
            class31_sub3_sub3_sub4_sub2.anInt1681 = class31_sub3_sub2.method442(-13491);
        }
        if((k & 8) != 0)
        {
            int k1 = class31_sub3_sub2.method448((byte)56);
            int k2 = class31_sub3_sub2.method441(false);
            int j3 = class31_sub3_sub2.method442(-13491);
            int l3 = class31_sub3_sub2.anInt1440;
            if(class31_sub3_sub3_sub4_sub2.aString1729 != null && class31_sub3_sub3_sub4_sub2.aBoolean1712)
            {
                long l4 = Class26.method297(class31_sub3_sub3_sub4_sub2.aString1729);
                boolean flag = false;
                if(k2 <= 1)
                {
                    for(int i4 = 0; i4 < anInt998; i4++)
                    {
                        if(aLongArray1131[i4] != l4)
                            continue;
                        flag = true;
                        break;
                    }

                }
                if(!flag && anInt893 == 0)
                    try
                    {
                        aClass31_Sub3_Sub2_1100.anInt1440 = 0;
                        class31_sub3_sub2.method459(j3, 0, aClass31_Sub3_Sub2_1100.aByteArray1439, false);
                        aClass31_Sub3_Sub2_1100.anInt1440 = 0;
                        String s = Class35.method562(aClass31_Sub3_Sub2_1100, 555, j3);
                        s = Class16.method226(s, 0);
                        class31_sub3_sub3_sub4_sub2.aString1665 = s;
                        class31_sub3_sub3_sub4_sub2.anInt1656 = k1 >> 8;
                        class31_sub3_sub3_sub4_sub2.anInt1632 = k1 & 0xff;
                        class31_sub3_sub3_sub4_sub2.anInt1651 = 150;
                        if(k2 == 2 || k2 == 3)
                            method66(s, "@cr2@" + class31_sub3_sub3_sub4_sub2.aString1729, 1, -39349);
                        else
                        if(k2 == 1)
                            method66(s, "@cr1@" + class31_sub3_sub3_sub4_sub2.aString1729, 1, -39349);
                        else
                            method66(s, class31_sub3_sub3_sub4_sub2.aString1729, 2, -39349);
                    }
                    catch(Exception exception)
                    {
                        signlink.reporterror("cde2");
                    }
            }
            class31_sub3_sub2.anInt1440 = l3 + j3;
        }
        if((k & 4) != 0)
        {
            class31_sub3_sub3_sub4_sub2.aString1665 = class31_sub3_sub2.method429();
            if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).aString1665.charAt(0) == '~')
            {
                class31_sub3_sub3_sub4_sub2.aString1665 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).aString1665.substring(1);
                method66(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).aString1665, class31_sub3_sub3_sub4_sub2.aString1729, 2, -39349);
            } else
            if(class31_sub3_sub3_sub4_sub2 == aClass31_Sub3_Sub3_Sub4_Sub2_885)
                method66(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).aString1665, class31_sub3_sub3_sub4_sub2.aString1729, 2, -39349);
            class31_sub3_sub3_sub4_sub2.anInt1656 = 0;
            class31_sub3_sub3_sub4_sub2.anInt1632 = 0;
            class31_sub3_sub3_sub4_sub2.anInt1651 = 150;
        }
        if((k & 0x200) != 0)
        {
            int l1 = class31_sub3_sub2.method422();
            int l2 = class31_sub3_sub2.method422();
            class31_sub3_sub3_sub4_sub2.method498(l1, anInt935, true, l2);
            class31_sub3_sub3_sub4_sub2.anInt1679 = anInt935 + 300;
            class31_sub3_sub3_sub4_sub2.anInt1680 = class31_sub3_sub2.method422();
            class31_sub3_sub3_sub4_sub2.anInt1681 = class31_sub3_sub2.method441(false);
        }
        if((k & 1) != 0)
        {
            int i2 = class31_sub3_sub2.method448((byte)56);
            if(i2 == 65535)
                i2 = -1;
            int i3 = class31_sub3_sub2.method441(false);
            if(i2 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1674 && i2 != -1)
            {
                int k3 = Class8.aClass8Array140[i2].anInt154;
                if(k3 == 1)
                {
                    class31_sub3_sub3_sub4_sub2.anInt1675 = 0;
                    class31_sub3_sub3_sub4_sub2.anInt1676 = 0;
                    class31_sub3_sub3_sub4_sub2.anInt1677 = i3;
                    class31_sub3_sub3_sub4_sub2.anInt1678 = 0;
                }
                if(k3 == 2)
                    class31_sub3_sub3_sub4_sub2.anInt1678 = 0;
            } else
            if(i2 == -1 || ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1674 == -1 || Class8.aClass8Array140[i2].anInt148 >= Class8.aClass8Array140[((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1674].anInt148)
            {
                class31_sub3_sub3_sub4_sub2.anInt1674 = i2;
                class31_sub3_sub3_sub4_sub2.anInt1675 = 0;
                class31_sub3_sub3_sub4_sub2.anInt1676 = 0;
                class31_sub3_sub3_sub4_sub2.anInt1677 = i3;
                class31_sub3_sub3_sub4_sub2.anInt1678 = 0;
                class31_sub3_sub3_sub4_sub2.anInt1638 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub2)).anInt1657;
            }
        }
        if((k & 0x10) != 0)
        {
            class31_sub3_sub3_sub4_sub2.anInt1653 = class31_sub3_sub2.method450(aBoolean1136);
            class31_sub3_sub3_sub4_sub2.anInt1654 = class31_sub3_sub2.method448((byte)56);
        }
    }

    public void method115(int i, int j, int k, Class31_Sub3_Sub1_Sub2 class31_sub3_sub1_sub2)
    {
        if(j >= 0)
            return;
        int l = i * i + k * k;
        if(l > 4225 && l < 0x15f90)
        {
            int i1 = anInt820 + anInt1231 & 0x7ff;
            int j1 = Class31_Sub3_Sub3_Sub2.anIntArray1606[i1];
            int k1 = Class31_Sub3_Sub3_Sub2.anIntArray1607[i1];
            j1 = (j1 * 256) / (anInt1290 + 256);
            k1 = (k1 * 256) / (anInt1290 + 256);
            int l1 = k * j1 + i * k1 >> 16;
            int i2 = k * k1 - i * j1 >> 16;
            double d = Math.atan2(l1, i2);
            int j2 = (int)(Math.sin(d) * 63D);
            int k2 = (int)(Math.cos(d) * 57D);
            aClass31_Sub3_Sub1_Sub2_1143.method384(15, 20, 15, 20, d, 460, 256, 83 - k2 - 20, (94 + j2 + 4) - 10);
            return;
        } else
        {
            method126(i, aBoolean890, k, class31_sub3_sub1_sub2);
            return;
        }
    }

    public void method116(int i, int j)
    {
        Class28 class28 = aClass28ArrayArrayArray996[anInt981][i][j];
        if(class28 == null)
        {
            aClass34_937.method532(anInt981, i, j);
            return;
        }
        int k = 0xfa0a1f01;
        Object obj = null;
        for(Class31_Sub3_Sub3_Sub6 class31_sub3_sub3_sub6 = (Class31_Sub3_Sub3_Sub6)class28.method328(); class31_sub3_sub3_sub6 != null; class31_sub3_sub3_sub6 = (Class31_Sub3_Sub3_Sub6)class28.method330(-582))
        {
            Class41 class41 = Class41.method577(class31_sub3_sub3_sub6.anInt1708);
            int l = class41.anInt620;
            if(class41.aBoolean651)
                l *= class31_sub3_sub3_sub6.anInt1709 + 1;
            if(l > k)
            {
                k = l;
                obj = class31_sub3_sub3_sub6;
            }
        }

        class28.method326(13081, ((Class31) (obj)));
        Object obj1 = null;
        Object obj2 = null;
        for(Class31_Sub3_Sub3_Sub6 class31_sub3_sub3_sub6_1 = (Class31_Sub3_Sub3_Sub6)class28.method328(); class31_sub3_sub3_sub6_1 != null; class31_sub3_sub3_sub6_1 = (Class31_Sub3_Sub3_Sub6)class28.method330(-582))
        {
            if(class31_sub3_sub3_sub6_1.anInt1708 != ((Class31_Sub3_Sub3_Sub6) (obj)).anInt1708 && obj1 == null)
                obj1 = class31_sub3_sub3_sub6_1;
            if(class31_sub3_sub3_sub6_1.anInt1708 != ((Class31_Sub3_Sub3_Sub6) (obj)).anInt1708 && class31_sub3_sub3_sub6_1.anInt1708 != ((Class31_Sub3_Sub3_Sub6) (obj1)).anInt1708 && obj2 == null)
                obj2 = class31_sub3_sub3_sub6_1;
        }

        int i1 = i + (j << 7) + 0x60000000;
        aClass34_937.method518(anInt981, ((Class31_Sub3_Sub3) (obj)), 932, j, ((Class31_Sub3_Sub3) (obj2)), ((Class31_Sub3_Sub3) (obj1)), method143(i * 128 + 64, 0, anInt981, j * 128 + 64), i1, i);
    }

    public void method117(int i, byte byte0, Class31_Sub3_Sub2 class31_sub3_sub2)
    {
        class31_sub3_sub2.method432(-604);
        if(byte0 != aByte1104)
            aClass28ArrayArrayArray996 = null;
        int j = class31_sub3_sub2.method433(1, (byte)-50);
        if(j == 0)
            return;
        int k = class31_sub3_sub2.method433(2, (byte)-50);
        if(k == 0)
        {
            anIntArray972[anInt971++] = anInt967;
            return;
        }
        if(k == 1)
        {
            int l = class31_sub3_sub2.method433(3, (byte)-50);
            aClass31_Sub3_Sub3_Sub4_Sub2_885.method495(l, false, true);
            int k1 = class31_sub3_sub2.method433(1, (byte)-50);
            if(k1 == 1)
                anIntArray972[anInt971++] = anInt967;
            return;
        }
        if(k == 2)
        {
            int i1 = class31_sub3_sub2.method433(3, (byte)-50);
            aClass31_Sub3_Sub3_Sub4_Sub2_885.method495(i1, true, true);
            int l1 = class31_sub3_sub2.method433(3, (byte)-50);
            aClass31_Sub3_Sub3_Sub4_Sub2_885.method495(l1, true, true);
            int j2 = class31_sub3_sub2.method433(1, (byte)-50);
            if(j2 == 1)
                anIntArray972[anInt971++] = anInt967;
            return;
        }
        if(k == 3)
        {
            anInt981 = class31_sub3_sub2.method433(2, (byte)-50);
            int j1 = class31_sub3_sub2.method433(7, (byte)-50);
            int i2 = class31_sub3_sub2.method433(1, (byte)-50);
            int k2 = class31_sub3_sub2.method433(1, (byte)-50);
            if(k2 == 1)
                anIntArray972[anInt971++] = anInt967;
            int l2 = class31_sub3_sub2.method433(7, (byte)-50);
            aClass31_Sub3_Sub3_Sub4_Sub2_885.method497(l2, j1, aByte1109, i2 == 1);
        }
    }

    public void method118(Class31_Sub3_Sub2 class31_sub3_sub2, int i, int j)
    {
        if(j < 3 || j > 3)
            aBoolean1249 = !aBoolean1249;
        for(int k = 0; k < anInt971; k++)
        {
            int l = anIntArray972[k];
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[l];
            int i1 = class31_sub3_sub2.method422();
            if((i1 & 0x10) != 0)
            {
                class31_sub3_sub3_sub4_sub1.anInt1653 = class31_sub3_sub2.method448((byte)56);
                class31_sub3_sub3_sub4_sub1.anInt1654 = class31_sub3_sub2.method449(-30785);
            }
            if((i1 & 0x80) != 0)
            {
                int j1 = class31_sub3_sub2.method440((byte)104);
                int j2 = class31_sub3_sub2.method441(false);
                class31_sub3_sub3_sub4_sub1.method498(j1, anInt935, true, j2);
                class31_sub3_sub3_sub4_sub1.anInt1679 = anInt935 + 300;
                class31_sub3_sub3_sub4_sub1.anInt1680 = class31_sub3_sub2.method441(false);
                class31_sub3_sub3_sub4_sub1.anInt1681 = class31_sub3_sub2.method422();
            }
            if((i1 & 0x20) != 0)
            {
                class31_sub3_sub3_sub4_sub1.aClass45_1711 = Class45.method598(class31_sub3_sub2.method424());
                class31_sub3_sub3_sub4_sub1.anInt1650 = class31_sub3_sub3_sub4_sub1.aClass45_1711.aByte706;
                class31_sub3_sub3_sub4_sub1.anInt1660 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt709;
                class31_sub3_sub3_sub4_sub1.anInt1639 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt708;
                class31_sub3_sub3_sub4_sub1.anInt1640 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt674;
                class31_sub3_sub3_sub4_sub1.anInt1641 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt687;
                class31_sub3_sub3_sub4_sub1.anInt1642 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt705;
                class31_sub3_sub3_sub4_sub1.anInt1647 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt699;
            }
            if((i1 & 4) != 0)
            {
                class31_sub3_sub3_sub4_sub1.anInt1627 = class31_sub3_sub2.method448((byte)56);
                int k1 = class31_sub3_sub2.method455(true);
                class31_sub3_sub3_sub4_sub1.anInt1631 = k1 >> 16;
                class31_sub3_sub3_sub4_sub1.anInt1630 = anInt935 + (k1 & 0xffff);
                class31_sub3_sub3_sub4_sub1.anInt1628 = 0;
                class31_sub3_sub3_sub4_sub1.anInt1629 = 0;
                if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1630 > anInt935)
                    class31_sub3_sub3_sub4_sub1.anInt1628 = -1;
                if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1627 == 65535)
                    class31_sub3_sub3_sub4_sub1.anInt1627 = -1;
            }
            if((i1 & 2) != 0)
            {
                class31_sub3_sub3_sub4_sub1.aString1665 = class31_sub3_sub2.method429();
                class31_sub3_sub3_sub4_sub1.anInt1651 = 100;
            }
            if((i1 & 1) != 0)
            {
                int l1 = class31_sub3_sub2.method449(-30785);
                if(l1 == 65535)
                    l1 = -1;
                int k2 = class31_sub3_sub2.method441(false);
                if(l1 == ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1674 && l1 != -1)
                {
                    int i3 = Class8.aClass8Array140[l1].anInt154;
                    if(i3 == 1)
                    {
                        class31_sub3_sub3_sub4_sub1.anInt1675 = 0;
                        class31_sub3_sub3_sub4_sub1.anInt1676 = 0;
                        class31_sub3_sub3_sub4_sub1.anInt1677 = k2;
                        class31_sub3_sub3_sub4_sub1.anInt1678 = 0;
                    }
                    if(i3 == 2)
                        class31_sub3_sub3_sub4_sub1.anInt1678 = 0;
                } else
                if(l1 == -1 || ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1674 == -1 || Class8.aClass8Array140[l1].anInt148 >= Class8.aClass8Array140[((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1674].anInt148)
                {
                    class31_sub3_sub3_sub4_sub1.anInt1674 = l1;
                    class31_sub3_sub3_sub4_sub1.anInt1675 = 0;
                    class31_sub3_sub3_sub4_sub1.anInt1676 = 0;
                    class31_sub3_sub3_sub4_sub1.anInt1677 = k2;
                    class31_sub3_sub3_sub4_sub1.anInt1678 = 0;
                    class31_sub3_sub3_sub4_sub1.anInt1638 = ((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1657;
                }
            }
            if((i1 & 8) != 0)
            {
                class31_sub3_sub3_sub4_sub1.anInt1666 = class31_sub3_sub2.method424();
                if(((Class31_Sub3_Sub3_Sub4) (class31_sub3_sub3_sub4_sub1)).anInt1666 == 65535)
                    class31_sub3_sub3_sub4_sub1.anInt1666 = -1;
            }
            if((i1 & 0x40) != 0)
            {
                int i2 = class31_sub3_sub2.method441(false);
                int l2 = class31_sub3_sub2.method442(-13491);
                class31_sub3_sub3_sub4_sub1.method498(i2, anInt935, true, l2);
                class31_sub3_sub3_sub4_sub1.anInt1679 = anInt935 + 300;
                class31_sub3_sub3_sub4_sub1.anInt1680 = class31_sub3_sub2.method440((byte)104);
                class31_sub3_sub3_sub4_sub1.anInt1681 = class31_sub3_sub2.method442(-13491);
            }
        }

    }

    public void method119(int i)
    {
        if(anInt1311 != 0)
            return;
        aStringArray1208[0] = "Cancel";
        anIntArray1017[0] = 1321;
        anInt878 = 1;
        if(anInt900 != -1)
        {
            anInt1272 = 0;
            anInt919 = 0;
            method53(0, 0, super.anInt23, 0, Class30.method339(anInt900), 0, 0, super.anInt24);
            if(anInt1272 != anInt1156)
                anInt1156 = anInt1272;
            if(anInt919 != anInt1088)
                anInt1088 = anInt919;
            return;
        }
        method124((byte)9);
        anInt1272 = 0;
        anInt919 = 0;
        if(super.anInt23 > 4 && super.anInt24 > 4 && super.anInt23 < 516 && super.anInt24 < 338)
            if(anInt1303 != -1)
                method53(0, 0, super.anInt23, 0, Class30.method339(anInt1303), 4, 4, super.anInt24);
            else
                method65(false);
        if(anInt1272 != anInt1156)
            anInt1156 = anInt1272;
        if(anInt919 != anInt1088)
            anInt1088 = anInt919;
        anInt1272 = 0;
        anInt919 = 0;
        if(super.anInt23 > 553 && super.anInt24 > 205 && super.anInt23 < 743 && super.anInt24 < 466)
            if(anInt1206 != -1)
                method53(0, 1, super.anInt23, 0, Class30.method339(anInt1206), 553, 205, super.anInt24);
            else
            if(anIntArray1110[anInt1014] != -1)
                method53(0, 1, super.anInt23, 0, Class30.method339(anIntArray1110[anInt1014]), 553, 205, super.anInt24);
        if(anInt1272 != anInt1301)
        {
            aBoolean1315 = true;
            anInt1301 = anInt1272;
        }
        if(anInt919 != anInt1096)
        {
            aBoolean1315 = true;
            anInt1096 = anInt919;
        }
        anInt1272 = 0;
        anInt919 = 0;
        if(i >= 0)
            anInt907 = aClass24_993.method288();
        if(super.anInt23 > 17 && super.anInt24 > 357 && super.anInt23 < 496 && super.anInt24 < 453)
            if(anInt1129 != -1)
                method53(0, 2, super.anInt23, 0, Class30.method339(anInt1129), 17, 357, super.anInt24);
            else
            if(anInt899 != -1)
                method53(0, 3, super.anInt23, 0, Class30.method339(anInt899), 17, 357, super.anInt24);
            else
            if(super.anInt24 < 434 && super.anInt23 < 426 && anInt823 == 0)
                method110(super.anInt23 - 17, super.anInt24 - 357, true);
        if((anInt1129 != -1 || anInt899 != -1) && anInt1272 != anInt1230)
        {
            aBoolean1289 = true;
            anInt1230 = anInt1272;
        }
        if((anInt1129 != -1 || anInt899 != -1) && anInt919 != anInt1247)
        {
            aBoolean1289 = true;
            anInt1247 = anInt919;
        }
        for(boolean flag = false; !flag;)
        {
            flag = true;
            for(int j = 0; j < anInt878 - 1; j++)
                if(anIntArray1017[j] < 1000 && anIntArray1017[j + 1] > 1000)
                {
                    String s = aStringArray1208[j];
                    aStringArray1208[j] = aStringArray1208[j + 1];
                    aStringArray1208[j + 1] = s;
                    int k = anIntArray1017[j];
                    anIntArray1017[j] = anIntArray1017[j + 1];
                    anIntArray1017[j + 1] = k;
                    k = anIntArray1015[j];
                    anIntArray1015[j] = anIntArray1015[j + 1];
                    anIntArray1015[j + 1] = k;
                    k = anIntArray1016[j];
                    anIntArray1016[j] = anIntArray1016[j + 1];
                    anIntArray1016[j + 1] = k;
                    k = anIntArray1018[j];
                    anIntArray1018[j] = anIntArray1018[j + 1];
                    anIntArray1018[j + 1] = k;
                    flag = false;
                }

        }

    }

    public void method120(byte byte0, Class31_Sub3_Sub2 class31_sub3_sub2, int i)
    {
        anInt1294 = 0;
        anInt971 = 0;
        method117(i, (byte)6, class31_sub3_sub2);
        method35(class31_sub3_sub2, i, 39779);
        method33(i, 241, class31_sub3_sub2);
        method106(class31_sub3_sub2, i, 2);
        if(byte0 != 8)
            aBoolean1181 = !aBoolean1181;
        for(int j = 0; j < anInt1294; j++)
        {
            int k = anIntArray1295[j];
            if(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2Array968[k])).anInt1626 != anInt935)
                aClass31_Sub3_Sub3_Sub4_Sub2Array968[k] = null;
        }

        if(class31_sub3_sub2.anInt1440 != i)
        {
            signlink.reporterror("Error packet size mismatch in getplayer pos:" + class31_sub3_sub2.anInt1440 + " psize:" + i);
            throw new RuntimeException("eek");
        }
        for(int l = 0; l < anInt969; l++)
            if(aClass31_Sub3_Sub3_Sub4_Sub2Array968[anIntArray970[l]] == null)
            {
                signlink.reporterror(aString1211 + " null entry in pl list - pos:" + l + " size:" + anInt969);
                throw new RuntimeException("eek");
            }

    }

    public void method8(int i)
    {
        aClass31_Sub3_Sub2_1100 = null;
        aClass15_1264 = null;
        aClass15_1265 = null;
        aClass15_1266 = null;
        aClass31_Sub3_Sub1_Sub3_1241 = null;
        aClass31_Sub3_Sub1_Sub3_1242 = null;
        aClass31_Sub3_Sub1_Sub3_1243 = null;
        aClass31_Sub3_Sub1_Sub3_1244 = null;
        aClass31_Sub3_Sub1_Sub3_1245 = null;
        aClass31_Sub3_Sub1_Sub2_957 = null;
        aClass31_Sub3_Sub1_Sub2Array1306 = null;
        aClass31_Sub3_Sub1_Sub2Array851 = null;
        aClass31_Sub3_Sub1_Sub2Array1001 = null;
        aClass31_Sub3_Sub1_Sub2Array1118 = null;
        aClass31_Sub3_Sub1_Sub2Array1070 = null;
        aClass31_Sub3_Sub1_Sub3_856 = null;
        aClass31_Sub3_Sub1_Sub3_857 = null;
        aClass31_Sub3_Sub1_Sub3_858 = null;
        aClass31_Sub3_Sub1_Sub3_859 = null;
        aClass31_Sub3_Sub1_Sub3_860 = null;
        aByteArray852 = null;
        aClass15_1193 = null;
        aClass15_1194 = null;
        aClass15_1195 = null;
        aClass15_1196 = null;
        aClass15_1197 = null;
        aClass28_1080 = null;
        aClass28_1124 = null;
        aClass31_Sub3_Sub1_Sub3Array1141 = null;
        aClass31_Sub3_Sub3_Sub4_Sub1Array1101 = null;
        if(i < 1 || i > 1)
            return;
        anIntArray1103 = null;
        aClass31_Sub3_Sub3_Sub4_Sub2Array968 = null;
        anIntArray970 = null;
        anIntArray972 = null;
        aClass31_Sub3_Sub2Array973 = null;
        anIntArray1295 = null;
        aClass31_Sub3_Sub1_Sub2_1176 = null;
        aClass31_Sub3_Sub1_Sub2_1177 = null;
        aClass31_Sub3_Sub1_Sub2_1178 = null;
        aClass31_Sub3_Sub1_Sub2_1179 = null;
        aClass31_Sub3_Sub1_Sub2_1180 = null;
        anIntArrayArray884 = null;
        aClass31_Sub3_Sub1_Sub3_1172 = null;
        aClass31_Sub3_Sub1_Sub3_1173 = null;
        aClass31_Sub3_Sub1_Sub3_1174 = null;
        anIntArrayArray1133 = null;
        anIntArrayArray959 = null;
        anIntArray1086 = null;
        anIntArray1087 = null;
        aClass31_Sub3_Sub1_Sub2_1027 = null;
        if(aClass10_1200 != null)
            aClass10_1200.aBoolean193 = false;
        aClass10_1200 = null;
        if(aClass27_Sub1_843 != null)
            aClass27_Sub1_843.method307();
        aClass27_Sub1_843 = null;
        aClass31_Sub3_Sub1_Sub3Array1140 = null;
        aClass31_Sub3_Sub1_Sub2Array916 = null;
        aClass31_Sub3_Sub1_Sub2_984 = null;
        try
        {
            if(aClass12_1075 != null)
                aClass12_1075.method205();
        }
        catch(Exception _ex) { }
        aClass12_1075 = null;
        aClass15_1189 = null;
        aClass15_1190 = null;
        aClass15_1191 = null;
        aClass15_1192 = null;
        anIntArray1299 = null;
        anIntArray1300 = null;
        aClass31_Sub3_Sub1_Sub2Array1228 = null;
        aClass28ArrayArrayArray996 = null;
        aClass28_836 = null;
        aClass15_1005 = null;
        aClass15_1006 = null;
        aClass15_1002 = null;
        aClass15_1003 = null;
        aClass15_1004 = null;
        aClass31_Sub3_Sub1_Sub3_1032 = null;
        aClass31_Sub3_Sub1_Sub3_1033 = null;
        aClass31_Sub3_Sub1_Sub3_1034 = null;
        aStringArray1000 = null;
        aLongArray1218 = null;
        anIntArray915 = null;
        aClass15_1224 = null;
        aClass15_1225 = null;
        aClass15_1226 = null;
        aClass15_1227 = null;
        anIntArray1111 = null;
        aClass15_1007 = null;
        aClass15_1008 = null;
        aClass15_1009 = null;
        aClass15_1010 = null;
        method105((byte)-65);
        anIntArray1282 = null;
        aByteArrayArray1142 = null;
        aByteArrayArray1248 = null;
        anIntArray1283 = null;
        anIntArray1284 = null;
        aClass31_Sub3_Sub2_853 = null;
        aClass31_Sub3_Sub2_1222 = null;
        aClass31_Sub3_Sub2_1307 = null;
        anIntArrayArrayArray848 = null;
        aByteArrayArrayArray917 = null;
        aClass34_937 = null;
        aClass4Array1281 = null;
        anIntArray1015 = null;
        anIntArray1016 = null;
        anIntArray1017 = null;
        anIntArray1018 = null;
        aStringArray1208 = null;
        method15(aByte1274);
        Class22.method277(false);
        Class45.method596(false);
        Class41.method579(false);
        Class30.method336(false);
        Class2.aClass2Array60 = null;
        Class5.aClass5Array104 = null;
        Class6.aClass6Array111 = null;
        Class8.aClass8Array140 = null;
        Class3.aClass3Array73 = null;
        Class3.aClass36_85 = null;
        Class21.aClass21Array286 = null;
        super.aClass15_16 = null;
        Class31_Sub3_Sub3_Sub4_Sub2.aClass36_1721 = null;
        Class31_Sub3_Sub1_Sub1.method357(false);
        Class34.method510(false);
        Class31_Sub3_Sub3_Sub2.method463(false);
        Class32.method507(false);
        System.gc();
    }

    public void method121(int i, int j, Class30 class30, int k, int l, byte byte0, int i1, 
            int j1, int k1)
    {
        if(byte0 != 110)
            anInt922 = aClass24_993.method288();
        if(aBoolean1297)
            anInt1183 = 32;
        else
            anInt1183 = 0;
        aBoolean1297 = false;
        if(j >= j1 && j < j1 + 16 && i >= k1 && i < k1 + 16)
        {
            class30.anInt460 -= anInt965 * 4;
            if(i1 == 1)
                aBoolean1315 = true;
            if(i1 == 2 || i1 == 3)
                aBoolean1289 = true;
            return;
        }
        if(j >= j1 && j < j1 + 16 && i >= (k1 + l) - 16 && i < k1 + l)
        {
            class30.anInt460 += anInt965 * 4;
            if(i1 == 1)
                aBoolean1315 = true;
            if(i1 == 2 || i1 == 3)
                aBoolean1289 = true;
            return;
        }
        if(j >= j1 - anInt1183 && j < j1 + 16 + anInt1183 && i >= k1 + 16 && i < (k1 + l) - 16 && anInt965 > 0)
        {
            int l1 = ((l - 32) * l) / k;
            if(l1 < 8)
                l1 = 8;
            int i2 = i - k1 - 16 - l1 / 2;
            int j2 = l - 32 - l1;
            class30.anInt460 = ((k - l) * i2) / j2;
            if(i1 == 1)
                aBoolean1315 = true;
            if(i1 == 2 || i1 == 3)
                aBoolean1289 = true;
            aBoolean1297 = true;
        }
    }

    public boolean method122(byte byte0)
    {
        if(byte0 == aByte1043)
            byte0 = 0;
        else
            throw new NullPointerException();
        return signlink.wavereplay();
    }

    public boolean method123(int i, byte abyte0[], int j)
    {
        while(j >= 0) 
            aClass28ArrayArrayArray996 = null;
        if(abyte0 == null)
            return true;
        else
            return signlink.wavesave(abyte0, i);
    }

    public void method124(byte byte0)
    {
        if(anInt842 == 0)
            return;
        int i = 0;
        if(anInt1167 != 0)
            i = 1;
        for(int j = 0; j < 100; j++)
            if(aStringArray1107[j] != null)
            {
                int k = anIntArray1105[j];
                String s = aStringArray1106[j];
                boolean flag = false;
                if(s != null && s.startsWith("@cr1@"))
                {
                    s = s.substring(5);
                    boolean flag1 = true;
                }
                if(s != null && s.startsWith("@cr2@"))
                {
                    s = s.substring(5);
                    byte byte1 = 2;
                }
                if((k == 3 || k == 7) && (k == 7 || anInt849 == 0 || anInt849 == 1 && method16(s, (byte)9)))
                {
                    int l = 329 - i * 13;
                    if(super.anInt23 > 4 && super.anInt24 - 4 > l - 10 && super.anInt24 - 4 <= l + 3)
                    {
                        int i1 = aClass31_Sub3_Sub1_Sub4_1235.method397("From:  " + s + aStringArray1107[j], aByte1304) + 25;
                        if(i1 > 450)
                            i1 = 450;
                        if(super.anInt23 < 4 + i1)
                        {
                            if(anInt1117 >= 1)
                            {
                                aStringArray1208[anInt878] = "Report abuse @whi@" + s;
                                anIntArray1017[anInt878] = 2564;
                                anInt878++;
                            }
                            aStringArray1208[anInt878] = "Add ignore @whi@" + s;
                            anIntArray1017[anInt878] = 2502;
                            anInt878++;
                            aStringArray1208[anInt878] = "Add friend @whi@" + s;
                            anIntArray1017[anInt878] = 2308;
                            anInt878++;
                        }
                    }
                    if(++i >= 5)
                        return;
                }
                if((k == 5 || k == 6) && anInt849 < 2 && ++i >= 5)
                    return;
            }

        if(byte0 == 9)
        {
            byte0 = 0;
            return;
        } else
        {
            anInt903 = aClass24_993.method288();
            return;
        }
    }

    public void method125(int i, int j, Class31_Sub3_Sub2 class31_sub3_sub2)
    {
        anInt1294 = 0;
        anInt971 = 0;
        method147((byte)-90, j, class31_sub3_sub2);
        if(i < 6 || i > 6)
            anInt961 = -1;
        method148((byte)7, j, class31_sub3_sub2);
        method118(class31_sub3_sub2, j, 3);
        for(int k = 0; k < anInt1294; k++)
        {
            int l = anIntArray1295[k];
            if(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub1Array1101[l])).anInt1626 != anInt935)
            {
                aClass31_Sub3_Sub3_Sub4_Sub1Array1101[l].aClass45_1711 = null;
                aClass31_Sub3_Sub3_Sub4_Sub1Array1101[l] = null;
            }
        }

        if(class31_sub3_sub2.anInt1440 != j)
        {
            signlink.reporterror(aString1211 + " size mismatch in getnpcpos - pos:" + class31_sub3_sub2.anInt1440 + " psize:" + j);
            throw new RuntimeException("eek");
        }
        for(int i1 = 0; i1 < anInt1102; i1++)
            if(aClass31_Sub3_Sub3_Sub4_Sub1Array1101[anIntArray1103[i1]] == null)
            {
                signlink.reporterror(aString1211 + " null entry in npc list - pos:" + i1 + " size:" + anInt1102);
                throw new RuntimeException("eek");
            }

    }

    public void method126(int i, boolean flag, int j, Class31_Sub3_Sub1_Sub2 class31_sub3_sub1_sub2)
    {
        if(flag)
            return;
        int k = anInt820 + anInt1231 & 0x7ff;
        int l = i * i + j * j;
        if(l > 6400)
            return;
        int i1 = Class31_Sub3_Sub3_Sub2.anIntArray1606[k];
        int j1 = Class31_Sub3_Sub3_Sub2.anIntArray1607[k];
        i1 = (i1 * 256) / (anInt1290 + 256);
        j1 = (j1 * 256) / (anInt1290 + 256);
        int k1 = j * i1 + i * j1 >> 16;
        int l1 = j * j1 - i * i1 >> 16;
        if(l > 2500)
        {
            class31_sub3_sub1_sub2.method385(83 - l1 - class31_sub3_sub1_sub2.anInt1498 / 2 - 4, ((94 + k1) - class31_sub3_sub1_sub2.anInt1497 / 2) + 4, (byte)-9, aClass31_Sub3_Sub1_Sub3_1173);
            return;
        } else
        {
            class31_sub3_sub1_sub2.method379(-4899, ((94 + k1) - class31_sub3_sub1_sub2.anInt1497 / 2) + 4, 83 - l1 - class31_sub3_sub1_sub2.anInt1498 / 2 - 4);
            return;
        }
    }

    public void method127(int i, int j)
    {
        if(i != 47243)
            aClass31_Sub3_Sub2_853.method412(95);
        Class30 class30 = Class30.method339(j);
        for(int k = 0; k < class30.anIntArray405.length; k++)
        {
            if(class30.anIntArray405[k] == -1)
                break;
            Class30 class30_1 = Class30.method339(class30.anIntArray405[k]);
            if(class30_1.anInt435 == 1)
                method127(47243, class30_1.anInt459);
            class30_1.anInt442 = 0;
            class30_1.anInt449 = 0;
        }

    }

    public Socket method128(int i)
        throws IOException
    {
        if(signlink.mainapp != null)
            return signlink.opensocket(i);
        else
            return new Socket(InetAddress.getByName(getCodeBase().getHost()), i);
    }

    public void method129(int i)
    {
        if(i < 2 || i > 2)
            return;
        for(int j = -1; j < anInt969; j++)
        {
            int k;
            if(j == -1)
                k = anInt967;
            else
                k = anIntArray970[j];
            Class31_Sub3_Sub3_Sub4_Sub2 class31_sub3_sub3_sub4_sub2 = aClass31_Sub3_Sub3_Sub4_Sub2Array968[k];
            if(class31_sub3_sub3_sub4_sub2 != null)
                method22(1, true, class31_sub3_sub3_sub4_sub2);
        }

    }

    public static String method130(int i, int j)
    {
        if(i != anInt914)
            anInt922 = 180;
        if(j < 0x186a0)
            return String.valueOf(j);
        if(j < 0x989680)
            return j / 1000 + "K";
        else
            return j / 0xf4240 + "M";
    }

    public void method131(int i)
    {
        if(anInt1311 != 0)
            return;
        int j = super.anInt29;
        if(i != 11405)
            anInt1302 = aClass24_993.method288();
        if(anInt948 == 1 && super.anInt30 >= 516 && super.anInt31 >= 160 && super.anInt30 <= 765 && super.anInt31 <= 205)
            j = 0;
        if(aBoolean1268)
        {
            if(j != 1)
            {
                int k = super.anInt23;
                int j1 = super.anInt24;
                if(anInt923 == 0)
                {
                    k -= 4;
                    j1 -= 4;
                }
                if(anInt923 == 1)
                {
                    k -= 553;
                    j1 -= 205;
                }
                if(anInt923 == 2)
                {
                    k -= 17;
                    j1 -= 357;
                }
                if(k < anInt924 - 10 || k > anInt924 + anInt926 + 10 || j1 < anInt925 - 10 || j1 > anInt925 + anInt927 + 10)
                {
                    aBoolean1268 = false;
                    if(anInt923 == 1)
                        aBoolean1315 = true;
                    if(anInt923 == 2)
                        aBoolean1289 = true;
                }
            }
            if(j == 1)
            {
                int l = anInt924;
                int k1 = anInt925;
                int i2 = anInt926;
                int k2 = super.anInt30;
                int l2 = super.anInt31;
                if(anInt923 == 0)
                {
                    k2 -= 4;
                    l2 -= 4;
                }
                if(anInt923 == 1)
                {
                    k2 -= 553;
                    l2 -= 205;
                }
                if(anInt923 == 2)
                {
                    k2 -= 17;
                    l2 -= 357;
                }
                int i3 = -1;
                for(int j3 = 0; j3 < anInt878; j3++)
                {
                    int k3 = k1 + 31 + (anInt878 - 1 - j3) * 15;
                    if(k2 > l && k2 < l + i2 && l2 > k3 - 13 && l2 < k3 + 3)
                        i3 = j3;
                }

                if(i3 != -1)
                    method85(i3, 413);
                aBoolean1268 = false;
                if(anInt923 == 1)
                    aBoolean1315 = true;
                if(anInt923 == 2)
                {
                    aBoolean1289 = true;
                    return;
                }
            }
        } else
        {
            if(j == 1 && anInt878 > 0)
            {
                int i1 = anIntArray1017[anInt878 - 1];
                if(i1 == 971 || i1 == 364 || i1 == 855 || i1 == 817 || i1 == 168 || i1 == 495 || i1 == 220 || i1 == 34 || i1 == 273 || i1 == 377 || i1 == 138 || i1 == 1759)
                {
                    int l1 = anIntArray1015[anInt878 - 1];
                    int j2 = anIntArray1016[anInt878 - 1];
                    Class30 class30 = Class30.method339(j2);
                    if(class30.aBoolean407 || class30.aBoolean447)
                    {
                        aBoolean933 = false;
                        anInt1170 = 0;
                        anInt1309 = j2;
                        anInt1310 = l1;
                        anInt1311 = 2;
                        anInt1312 = super.anInt30;
                        anInt1313 = super.anInt31;
                        if(Class30.method339(j2).anInt432 == anInt1303)
                            anInt1311 = 1;
                        if(Class30.method339(j2).anInt432 == anInt1129)
                            anInt1311 = 3;
                        return;
                    }
                }
            }
            if(j == 1 && (anInt1128 == 1 || method112(false, anInt878 - 1)) && anInt878 > 2)
                j = 2;
            if(j == 1 && anInt878 > 0)
                method85(anInt878 - 1, 413);
            if(j == 2 && anInt878 > 0)
                method58(3);
        }
    }

    public void method132(int i)
    {
        if(i >= 0)
        {
            for(int j = 1; j > 0; j++);
        }
        do
        {
            int k = method5(true);
            if(k == -1)
                break;
            if(anInt1303 != -1 && anInt1303 == anInt1108)
            {
                if(k == 8 && aString992.length() > 0)
                    aString992 = aString992.substring(0, aString992.length() - 1);
                if((k >= 97 && k <= 122 || k >= 65 && k <= 90 || k >= 48 && k <= 57 || k == 32) && aString992.length() < 12)
                    aString992 += (char)k;
            } else
            if(aBoolean829)
            {
                if(k >= 32 && k <= 122 && aString1069.length() < 80)
                {
                    aString1069 += (char)k;
                    aBoolean1289 = true;
                }
                if(k == 8 && aString1069.length() > 0)
                {
                    aString1069 = aString1069.substring(0, aString1069.length() - 1);
                    aBoolean1289 = true;
                }
                if(k == 13 || k == 10)
                {
                    aBoolean829 = false;
                    aBoolean1289 = true;
                    if(anInt1169 == 1)
                    {
                        long l = Class26.method297(aString1069);
                        method46((byte)5, l);
                    }
                    if(anInt1169 == 2 && anInt1161 > 0)
                    {
                        long l1 = Class26.method297(aString1069);
                        method101((byte)117, l1);
                    }
                    if(anInt1169 == 3 && aString1069.length() > 0)
                    {
                        aClass31_Sub3_Sub2_853.method411(7793, 179);
                        aClass31_Sub3_Sub2_853.method412(0);
                        int i1 = aClass31_Sub3_Sub2_853.anInt1440;
                        aClass31_Sub3_Sub2_853.method418(aLong1270, (byte)56);
                        Class35.method563(aString1069, aClass31_Sub3_Sub2_853, false);
                        aClass31_Sub3_Sub2_853.method421(aClass31_Sub3_Sub2_853.anInt1440 - i1, 8);
                        aString1069 = Class35.method564(aString1069, 0);
                        aString1069 = Class16.method226(aString1069, 0);
                        method66(aString1069, Class26.method301(true, Class26.method298(359, aLong1270)), 6, -39349);
                        if(anInt849 == 2)
                        {
                            anInt849 = 1;
                            aBoolean902 = true;
                            aClass31_Sub3_Sub2_853.method411(7793, 145);
                            aClass31_Sub3_Sub2_853.method412(anInt995);
                            aClass31_Sub3_Sub2_853.method412(anInt849);
                            aClass31_Sub3_Sub2_853.method412(anInt837);
                        }
                    }
                    if(anInt1169 == 4 && anInt998 < 100)
                    {
                        long l2 = Class26.method297(aString1069);
                        method81(l2, 954);
                    }
                    if(anInt1169 == 5 && anInt998 > 0)
                    {
                        long l3 = Class26.method297(aString1069);
                        method108(5, l3);
                    }
                }
            } else
            if(anInt823 == 1)
            {
                if(k >= 48 && k <= 57 && aString1199.length() < 10)
                {
                    aString1199 += (char)k;
                    aBoolean1289 = true;
                }
                if(k == 8 && aString1199.length() > 0)
                {
                    aString1199 = aString1199.substring(0, aString1199.length() - 1);
                    aBoolean1289 = true;
                }
                if(k == 13 || k == 10)
                {
                    if(aString1199.length() > 0)
                    {
                        int j1 = 0;
                        try
                        {
                            j1 = Integer.parseInt(aString1199);
                        }
                        catch(Exception _ex) { }
                        aClass31_Sub3_Sub2_853.method411(7793, 157);
                        aClass31_Sub3_Sub2_853.method416(j1);
                    }
                    anInt823 = 0;
                    aBoolean1289 = true;
                }
            } else
            if(anInt823 == 2)
            {
                if(k >= 32 && k <= 122 && aString1199.length() < 12)
                {
                    aString1199 += (char)k;
                    aBoolean1289 = true;
                }
                if(k == 8 && aString1199.length() > 0)
                {
                    aString1199 = aString1199.substring(0, aString1199.length() - 1);
                    aBoolean1289 = true;
                }
                if(k == 13 || k == 10)
                {
                    if(aString1199.length() > 0)
                    {
                        aClass31_Sub3_Sub2_853.method411(7793, 190);
                        aClass31_Sub3_Sub2_853.method418(Class26.method297(aString1199), (byte)56);
                    }
                    anInt823 = 0;
                    aBoolean1289 = true;
                }
            } else
            if(anInt823 == 3)
            {
                if(k >= 32 && k <= 122 && aString1199.length() < 40)
                {
                    aString1199 += (char)k;
                    aBoolean1289 = true;
                }
                if(k == 8 && aString1199.length() > 0)
                {
                    aString1199 = aString1199.substring(0, aString1199.length() - 1);
                    aBoolean1289 = true;
                }
            } else
            if(anInt1129 == -1 && anInt900 == -1)
            {
                if(k >= 32 && k <= 122 && aString1168.length() < 80)
                {
                    aString1168 += (char)k;
                    aBoolean1289 = true;
                }
                if(k == 8 && aString1168.length() > 0)
                {
                    aString1168 = aString1168.substring(0, aString1168.length() - 1);
                    aBoolean1289 = true;
                }
                if((k == 13 || k == 10) && aString1168.length() > 0)
                {
                    if(anInt1117 == 2)
                    {
                        if(aString1168.equals("::clientdrop"))
                            method40(false);
                        if(aString1168.equals("::lag"))
                            method64(false);
                        if(aString1168.equals("::prefetchmusic"))
                        {
                            for(int k1 = 0; k1 < aClass27_Sub1_843.method315(2, false); k1++)
                                aClass27_Sub1_843.method318((byte)1, k1, 2, false);

                        }
                        if(aString1168.equals("::fpson"))
                            aBoolean1057 = true;
                        if(aString1168.equals("::fpsoff"))
                            aBoolean1057 = false;
                        if(aString1168.equals("::noclip"))
                        {
                            for(int i2 = 0; i2 < 4; i2++)
                            {
                                for(int j2 = 1; j2 < 103; j2++)
                                {
                                    for(int i3 = 1; i3 < 103; i3++)
                                        aClass4Array1281[i2].anIntArrayArray100[j2][i3] = 0;

                                }

                            }

                        }
                    }
                    if(aString1168.startsWith("::"))
                    {
                        aClass31_Sub3_Sub2_853.method411(7793, 138);
                        aClass31_Sub3_Sub2_853.method412(aString1168.length() - 1);
                        aClass31_Sub3_Sub2_853.method419(aString1168.substring(2));
                    } else
                    {
                        String s = aString1168.toLowerCase();
                        int k2 = 0;
                        if(s.startsWith("yellow:"))
                        {
                            k2 = 0;
                            aString1168 = aString1168.substring(7);
                        } else
                        if(s.startsWith("red:"))
                        {
                            k2 = 1;
                            aString1168 = aString1168.substring(4);
                        } else
                        if(s.startsWith("green:"))
                        {
                            k2 = 2;
                            aString1168 = aString1168.substring(6);
                        } else
                        if(s.startsWith("cyan:"))
                        {
                            k2 = 3;
                            aString1168 = aString1168.substring(5);
                        } else
                        if(s.startsWith("purple:"))
                        {
                            k2 = 4;
                            aString1168 = aString1168.substring(7);
                        } else
                        if(s.startsWith("white:"))
                        {
                            k2 = 5;
                            aString1168 = aString1168.substring(6);
                        } else
                        if(s.startsWith("flash1:"))
                        {
                            k2 = 6;
                            aString1168 = aString1168.substring(7);
                        } else
                        if(s.startsWith("flash2:"))
                        {
                            k2 = 7;
                            aString1168 = aString1168.substring(7);
                        } else
                        if(s.startsWith("flash3:"))
                        {
                            k2 = 8;
                            aString1168 = aString1168.substring(7);
                        } else
                        if(s.startsWith("glow1:"))
                        {
                            k2 = 9;
                            aString1168 = aString1168.substring(6);
                        } else
                        if(s.startsWith("glow2:"))
                        {
                            k2 = 10;
                            aString1168 = aString1168.substring(6);
                        } else
                        if(s.startsWith("glow3:"))
                        {
                            k2 = 11;
                            aString1168 = aString1168.substring(6);
                        }
                        s = aString1168.toLowerCase();
                        int j3 = 0;
                        if(s.startsWith("wave:"))
                        {
                            j3 = 1;
                            aString1168 = aString1168.substring(5);
                        } else
                        if(s.startsWith("wave2:"))
                        {
                            j3 = 2;
                            aString1168 = aString1168.substring(6);
                        } else
                        if(s.startsWith("shake:"))
                        {
                            j3 = 3;
                            aString1168 = aString1168.substring(6);
                        } else
                        if(s.startsWith("scroll:"))
                        {
                            j3 = 4;
                            aString1168 = aString1168.substring(7);
                        } else
                        if(s.startsWith("slide:"))
                        {
                            j3 = 5;
                            aString1168 = aString1168.substring(6);
                        }
                        aClass31_Sub3_Sub2_853.method411(7793, 197);
                        aClass31_Sub3_Sub2_853.method412(0);
                        int k3 = aClass31_Sub3_Sub2_853.anInt1440;
                        aClass31_Sub3_Sub2_1100.anInt1440 = 0;
                        Class35.method563(aString1168, aClass31_Sub3_Sub2_1100, false);
                        aClass31_Sub3_Sub2_853.method458(false, 0, aClass31_Sub3_Sub2_1100.aByteArray1439, aClass31_Sub3_Sub2_1100.anInt1440);
                        aClass31_Sub3_Sub2_853.method438(0, j3);
                        aClass31_Sub3_Sub2_853.method439(k2, 4);
                        aClass31_Sub3_Sub2_853.method421(aClass31_Sub3_Sub2_853.anInt1440 - k3, 8);
                        aString1168 = Class35.method564(aString1168, 0);
                        aString1168 = Class16.method226(aString1168, 0);
                        aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1665 = aString1168;
                        aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1656 = k2;
                        aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1632 = j3;
                        aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1651 = 150;
                        if(anInt1117 == 2)
                            method66(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).aString1665, "@cr2@" + aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729, 2, -39349);
                        else
                        if(anInt1117 == 1)
                            method66(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).aString1665, "@cr1@" + aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729, 2, -39349);
                        else
                            method66(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).aString1665, aClass31_Sub3_Sub3_Sub4_Sub2_885.aString1729, 2, -39349);
                        if(anInt995 == 2)
                        {
                            anInt995 = 3;
                            aBoolean902 = true;
                            aClass31_Sub3_Sub2_853.method411(7793, 145);
                            aClass31_Sub3_Sub2_853.method412(anInt995);
                            aClass31_Sub3_Sub2_853.method412(anInt849);
                            aClass31_Sub3_Sub2_853.method412(anInt837);
                        }
                    }
                    aString1168 = "";
                    aBoolean1289 = true;
                }
            }
        } while(true);
    }

    public void method133(int i)
    {
        aClass15_1224.method213(0);
        Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1278;
        aClass31_Sub3_Sub1_Sub3_1172.method392(-4899, 0, 0);
        while(i >= 0) 
            aBoolean1210 = !aBoolean1210;
        if(anInt1206 != -1)
            method38(0, 0, Class30.method339(anInt1206), -545, 0);
        else
        if(anIntArray1110[anInt1014] != -1)
            method38(0, 0, Class30.method339(anIntArray1110[anInt1014]), -545, 0);
        if(aBoolean1268 && anInt923 == 1)
            method139(614);
        aClass15_1224.method214(super.aGraphics15, 553, 0, 205);
        aClass15_1226.method213(0);
        Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
    }

    public void method134(Class31_Sub2 class31_sub2, byte byte0)
    {
        int i = 0;
        int j = -1;
        int k = 0;
        int l = 0;
        if(class31_sub2.anInt1396 == 0)
            i = aClass34_937.method537(class31_sub2.anInt1395, class31_sub2.anInt1397, class31_sub2.anInt1398);
        if(class31_sub2.anInt1396 == 1)
            i = aClass34_937.method538(class31_sub2.anInt1395, class31_sub2.anInt1397, -38326, class31_sub2.anInt1398);
        if(class31_sub2.anInt1396 == 2)
            i = aClass34_937.method539(class31_sub2.anInt1395, class31_sub2.anInt1397, class31_sub2.anInt1398);
        if(class31_sub2.anInt1396 == 3)
            i = aClass34_937.method540(class31_sub2.anInt1395, class31_sub2.anInt1397, class31_sub2.anInt1398);
        if(i != 0)
        {
            int i1 = aClass34_937.method541(class31_sub2.anInt1395, class31_sub2.anInt1397, class31_sub2.anInt1398, i);
            j = i >> 14 & 0x7fff;
            k = i1 & 0x1f;
            l = i1 >> 6;
        }
        class31_sub2.anInt1392 = j;
        class31_sub2.anInt1394 = k;
        class31_sub2.anInt1393 = l;
        if(byte0 == 7);
    }

    public void method135(int i)
    {
        if(i < 3 || i > 3)
            anInt990 = 122;
        if(anInt878 < 2 && anInt943 == 0 && anInt948 == 0)
            return;
        String s;
        if(anInt943 == 1 && anInt878 < 2)
            s = "Use " + aString947 + " with...";
        else
        if(anInt948 == 1 && anInt878 < 2)
            s = aString951 + "...";
        else
            s = aStringArray1208[anInt878 - 1];
        if(anInt878 > 2)
            s = s + "@whi@ / " + (anInt878 - 2) + " more options";
        aClass31_Sub3_Sub1_Sub4_1236.method404(true, s, anInt1239, 15, 4, anInt935 / 1000, 0xffffff);
    }

    public void method136(boolean flag)
    {
        int i = anInt1145 * 128 + 64;
        int j = anInt1146 * 128 + 64;
        int k = method143(i, 0, anInt981, j) - anInt1147;
        if(anInt1201 < i)
        {
            anInt1201 += anInt1148 + ((i - anInt1201) * anInt1149) / 1000;
            if(anInt1201 > i)
                anInt1201 = i;
        }
        if(anInt1201 > i)
        {
            anInt1201 -= anInt1148 + ((anInt1201 - i) * anInt1149) / 1000;
            if(anInt1201 < i)
                anInt1201 = i;
        }
        if(anInt1202 < k)
        {
            anInt1202 += anInt1148 + ((k - anInt1202) * anInt1149) / 1000;
            if(anInt1202 > k)
                anInt1202 = k;
        }
        if(anInt1202 > k)
        {
            anInt1202 -= anInt1148 + ((anInt1202 - k) * anInt1149) / 1000;
            if(anInt1202 < k)
                anInt1202 = k;
        }
        if(anInt1203 < j)
        {
            anInt1203 += anInt1148 + ((j - anInt1203) * anInt1149) / 1000;
            if(anInt1203 > j)
                anInt1203 = j;
        }
        if(anInt1203 > j)
        {
            anInt1203 -= anInt1148 + ((anInt1203 - j) * anInt1149) / 1000;
            if(anInt1203 < j)
                anInt1203 = j;
        }
        i = anInt1316 * 128 + 64;
        j = anInt1317 * 128 + 64;
        k = method143(i, 0, anInt981, j) - anInt1318;
        int l = i - anInt1201;
        int i1 = k - anInt1202;
        int j1 = j - anInt1203;
        if(!flag)
            anInt990 = aClass24_993.method288();
        int k1 = (int)Math.sqrt(l * l + j1 * j1);
        int l1 = (int)(Math.atan2(i1, k1) * 325.94900000000001D) & 0x7ff;
        int i2 = (int)(Math.atan2(l, j1) * -325.94900000000001D) & 0x7ff;
        if(l1 < 128)
            l1 = 128;
        if(l1 > 383)
            l1 = 383;
        if(anInt1204 < l1)
        {
            anInt1204 += anInt1319 + ((l1 - anInt1204) * anInt1320) / 1000;
            if(anInt1204 > l1)
                anInt1204 = l1;
        }
        if(anInt1204 > l1)
        {
            anInt1204 -= anInt1319 + ((anInt1204 - l1) * anInt1320) / 1000;
            if(anInt1204 < l1)
                anInt1204 = l1;
        }
        int j2 = i2 - anInt1205;
        if(j2 > 1024)
            j2 -= 2048;
        if(j2 < -1024)
            j2 += 2048;
        if(j2 > 0)
        {
            anInt1205 += anInt1319 + (j2 * anInt1320) / 1000;
            anInt1205 &= 0x7ff;
        }
        if(j2 < 0)
        {
            anInt1205 -= anInt1319 + (-j2 * anInt1320) / 1000;
            anInt1205 &= 0x7ff;
        }
        int k2 = i2 - anInt1205;
        if(k2 > 1024)
            k2 -= 2048;
        if(k2 < -1024)
            k2 += 2048;
        if(k2 < 0 && j2 > 0 || k2 > 0 && j2 < 0)
            anInt1205 = i2;
    }

    public void method7(int i)
    {
        if(aBoolean958 || aBoolean928 || aBoolean1058)
            return;
        anInt935++;
        i = 72 / i;
        if(!aBoolean1079)
            method141(anInt938);
        else
            method56(-436);
        method36(44393);
    }

    public void method137(String s, boolean flag)
    {
        if(s == null || s.length() == 0)
        {
            anInt825 = 0;
            return;
        }
        String s1 = s;
        String as[] = new String[100];
        if(!flag)
            anInt961 = -1;
        int i = 0;
        do
        {
            int j = s1.indexOf(" ");
            if(j == -1)
                break;
            String s2 = s1.substring(0, j).trim();
            if(s2.length() > 0)
                as[i++] = s2.toLowerCase();
            s1 = s1.substring(j + 1);
        } while(true);
        s1 = s1.trim();
        if(s1.length() > 0)
            as[i++] = s1.toLowerCase();
        anInt825 = 0;
label0:
        for(int k = 0; k < Class41.anInt616; k++)
        {
            Class41 class41 = Class41.method577(k);
            if(class41.anInt645 != -1 || class41.aString650 == null)
                continue;
            String s3 = class41.aString650.toLowerCase();
            for(int l = 0; l < i; l++)
                if(s3.indexOf(as[l]) == -1)
                    continue label0;

            aStringArray826[anInt825] = s3;
            anIntArray827[anInt825] = k;
            anInt825++;
            if(anInt825 >= aStringArray826.length)
                return;
        }

    }

    public void method138(int i, Class45 class45, byte byte0, int j, int k)
    {
        if(byte0 == aByte1187)
            byte0 = 0;
        else
            anInt961 = -1;
        if(anInt878 >= 400)
            return;
        if(class45.anIntArray696 != null)
            class45 = class45.method595(7);
        if(class45 == null)
            return;
        if(!class45.aBoolean688)
            return;
        String s = class45.aString691;
        if(class45.anInt685 != 0)
            s = s + method20(class45.anInt685, aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1714, 869) + " (level-" + class45.anInt685 + ")";
        if(anInt943 == 1)
        {
            aStringArray1208[anInt878] = "Use " + aString947 + " with @yel@" + s;
            anIntArray1017[anInt878] = 151;
            anIntArray1018[anInt878] = i;
            anIntArray1015[anInt878] = j;
            anIntArray1016[anInt878] = k;
            anInt878++;
            return;
        }
        if(anInt948 == 1)
        {
            if((anInt950 & 2) == 2)
            {
                aStringArray1208[anInt878] = aString951 + " @yel@" + s;
                anIntArray1017[anInt878] = 581;
                anIntArray1018[anInt878] = i;
                anIntArray1015[anInt878] = j;
                anIntArray1016[anInt878] = k;
                anInt878++;
                return;
            }
        } else
        {
            if(class45.aStringArray686 != null)
            {
                for(int l = 4; l >= 0; l--)
                    if(class45.aStringArray686[l] != null && !class45.aStringArray686[l].equalsIgnoreCase("attack"))
                    {
                        aStringArray1208[anInt878] = class45.aStringArray686[l] + " @yel@" + s;
                        if(l == 0)
                            anIntArray1017[anInt878] = 132;
                        if(l == 1)
                            anIntArray1017[anInt878] = 776;
                        if(l == 2)
                            anIntArray1017[anInt878] = 565;
                        if(l == 3)
                            anIntArray1017[anInt878] = 705;
                        if(l == 4)
                            anIntArray1017[anInt878] = 181;
                        anIntArray1018[anInt878] = i;
                        anIntArray1015[anInt878] = j;
                        anIntArray1016[anInt878] = k;
                        anInt878++;
                    }

            }
            if(class45.aStringArray686 != null)
            {
                for(int i1 = 4; i1 >= 0; i1--)
                    if(class45.aStringArray686[i1] != null && class45.aStringArray686[i1].equalsIgnoreCase("attack"))
                    {
                        char c = '\0';
                        if(class45.anInt685 > aClass31_Sub3_Sub3_Sub4_Sub2_885.anInt1714)
                            c = '\u07D0';
                        aStringArray1208[anInt878] = class45.aStringArray686[i1] + " @yel@" + s;
                        if(i1 == 0)
                            anIntArray1017[anInt878] = 132 + c;
                        if(i1 == 1)
                            anIntArray1017[anInt878] = 776 + c;
                        if(i1 == 2)
                            anIntArray1017[anInt878] = 565 + c;
                        if(i1 == 3)
                            anIntArray1017[anInt878] = 705 + c;
                        if(i1 == 4)
                            anIntArray1017[anInt878] = 181 + c;
                        anIntArray1018[anInt878] = i;
                        anIntArray1015[anInt878] = j;
                        anIntArray1016[anInt878] = k;
                        anInt878++;
                    }

            }
            aStringArray1208[anInt878] = "Examine @yel@" + s;
            anIntArray1017[anInt878] = 1094;
            anIntArray1018[anInt878] = i;
            anIntArray1015[anInt878] = j;
            anIntArray1016[anInt878] = k;
            anInt878++;
        }
    }

    public void method139(int i)
    {
        int j = anInt924;
        int k = anInt925;
        int l = anInt926;
        int i1 = anInt927;
        int j1 = 0x5d5447;
        Class31_Sub3_Sub1.method350(l, 2, j, j1, k, i1);
        Class31_Sub3_Sub1.method350(l - 2, 2, j + 1, 0, k + 1, 16);
        Class31_Sub3_Sub1.method351(i1 - 19, 0, 0, j + 1, l - 2, k + 18);
        aClass31_Sub3_Sub1_Sub4_1236.method399("Choose Option", k + 14, j + 3, j1, -32001);
        int k1 = super.anInt23;
        int l1 = super.anInt24;
        if(anInt923 == 0)
        {
            k1 -= 4;
            l1 -= 4;
        }
        if(anInt923 == 1)
        {
            k1 -= 553;
            l1 -= 205;
        }
        if(anInt923 == 2)
        {
            k1 -= 17;
            l1 -= 357;
        }
        for(int i2 = 0; i2 < anInt878; i2++)
        {
            int j2 = k + 31 + (anInt878 - 1 - i2) * 15;
            int k2 = 0xffffff;
            if(k1 > j && k1 < j + l && l1 > j2 - 13 && l1 < j2 + 3)
                k2 = 0xffff00;
            aClass31_Sub3_Sub1_Sub4_1236.method403(k2, aStringArray1208[i2], true, j + 3, aBoolean861, j2);
        }

        if(i <= 0)
            anInt1239 = aClass24_993.method288();
    }

    public void method140(byte byte0, int i, int j, int k, int l, int i1)
    {
        int j1 = aClass34_937.method537(i, k, i1);
        if(byte0 != -21)
            return;
        if(j1 != 0)
        {
            int k1 = aClass34_937.method541(i, k, i1, j1);
            int j2 = k1 >> 6 & 3;
            int l2 = k1 & 0x1f;
            int j3 = j;
            if(j1 > 0)
                j3 = l;
            int ai[] = aClass31_Sub3_Sub1_Sub2_984.anIntArray1492;
            int j4 = 24624 + k * 4 + (103 - i1) * 512 * 4;
            int l4 = j1 >> 14 & 0x7fff;
            Class22 class22_2 = Class22.method273(l4);
            if(class22_2.anInt327 != -1)
            {
                Class31_Sub3_Sub1_Sub3 class31_sub3_sub1_sub3_2 = aClass31_Sub3_Sub1_Sub3Array1140[class22_2.anInt327];
                if(class31_sub3_sub1_sub3_2 != null)
                {
                    int l5 = (class22_2.anInt323 * 4 - class31_sub3_sub1_sub3_2.anInt1504) / 2;
                    int i6 = (class22_2.anInt344 * 4 - class31_sub3_sub1_sub3_2.anInt1505) / 2;
                    class31_sub3_sub1_sub3_2.method392(-4899, 48 + k * 4 + l5, 48 + (104 - i1 - class22_2.anInt344) * 4 + i6);
                }
            } else
            {
                if(l2 == 0 || l2 == 2)
                    if(j2 == 0)
                    {
                        ai[j4] = j3;
                        ai[j4 + 512] = j3;
                        ai[j4 + 1024] = j3;
                        ai[j4 + 1536] = j3;
                    } else
                    if(j2 == 1)
                    {
                        ai[j4] = j3;
                        ai[j4 + 1] = j3;
                        ai[j4 + 2] = j3;
                        ai[j4 + 3] = j3;
                    } else
                    if(j2 == 2)
                    {
                        ai[j4 + 3] = j3;
                        ai[j4 + 3 + 512] = j3;
                        ai[j4 + 3 + 1024] = j3;
                        ai[j4 + 3 + 1536] = j3;
                    } else
                    if(j2 == 3)
                    {
                        ai[j4 + 1536] = j3;
                        ai[j4 + 1536 + 1] = j3;
                        ai[j4 + 1536 + 2] = j3;
                        ai[j4 + 1536 + 3] = j3;
                    }
                if(l2 == 3)
                    if(j2 == 0)
                        ai[j4] = j3;
                    else
                    if(j2 == 1)
                        ai[j4 + 3] = j3;
                    else
                    if(j2 == 2)
                        ai[j4 + 3 + 1536] = j3;
                    else
                    if(j2 == 3)
                        ai[j4 + 1536] = j3;
                if(l2 == 2)
                    if(j2 == 3)
                    {
                        ai[j4] = j3;
                        ai[j4 + 512] = j3;
                        ai[j4 + 1024] = j3;
                        ai[j4 + 1536] = j3;
                    } else
                    if(j2 == 0)
                    {
                        ai[j4] = j3;
                        ai[j4 + 1] = j3;
                        ai[j4 + 2] = j3;
                        ai[j4 + 3] = j3;
                    } else
                    if(j2 == 1)
                    {
                        ai[j4 + 3] = j3;
                        ai[j4 + 3 + 512] = j3;
                        ai[j4 + 3 + 1024] = j3;
                        ai[j4 + 3 + 1536] = j3;
                    } else
                    if(j2 == 2)
                    {
                        ai[j4 + 1536] = j3;
                        ai[j4 + 1536 + 1] = j3;
                        ai[j4 + 1536 + 2] = j3;
                        ai[j4 + 1536 + 3] = j3;
                    }
            }
        }
        j1 = aClass34_937.method539(i, k, i1);
        if(j1 != 0)
        {
            int l1 = aClass34_937.method541(i, k, i1, j1);
            int k2 = l1 >> 6 & 3;
            int i3 = l1 & 0x1f;
            int k3 = j1 >> 14 & 0x7fff;
            Class22 class22_1 = Class22.method273(k3);
            if(class22_1.anInt327 != -1)
            {
                Class31_Sub3_Sub1_Sub3 class31_sub3_sub1_sub3_1 = aClass31_Sub3_Sub1_Sub3Array1140[class22_1.anInt327];
                if(class31_sub3_sub1_sub3_1 != null)
                {
                    int i5 = (class22_1.anInt323 * 4 - class31_sub3_sub1_sub3_1.anInt1504) / 2;
                    int j5 = (class22_1.anInt344 * 4 - class31_sub3_sub1_sub3_1.anInt1505) / 2;
                    class31_sub3_sub1_sub3_1.method392(-4899, 48 + k * 4 + i5, 48 + (104 - i1 - class22_1.anInt344) * 4 + j5);
                }
            } else
            if(i3 == 9)
            {
                int k4 = 0xeeeeee;
                if(j1 > 0)
                    k4 = 0xee0000;
                int ai1[] = aClass31_Sub3_Sub1_Sub2_984.anIntArray1492;
                int k5 = 24624 + k * 4 + (103 - i1) * 512 * 4;
                if(k2 == 0 || k2 == 2)
                {
                    ai1[k5 + 1536] = k4;
                    ai1[k5 + 1024 + 1] = k4;
                    ai1[k5 + 512 + 2] = k4;
                    ai1[k5 + 3] = k4;
                } else
                {
                    ai1[k5] = k4;
                    ai1[k5 + 512 + 1] = k4;
                    ai1[k5 + 1024 + 2] = k4;
                    ai1[k5 + 1536 + 3] = k4;
                }
            }
        }
        j1 = aClass34_937.method540(i, k, i1);
        if(j1 != 0)
        {
            int i2 = j1 >> 14 & 0x7fff;
            Class22 class22 = Class22.method273(i2);
            if(class22.anInt327 != -1)
            {
                Class31_Sub3_Sub1_Sub3 class31_sub3_sub1_sub3 = aClass31_Sub3_Sub1_Sub3Array1140[class22.anInt327];
                if(class31_sub3_sub1_sub3 != null)
                {
                    int l3 = (class22.anInt323 * 4 - class31_sub3_sub1_sub3.anInt1504) / 2;
                    int i4 = (class22.anInt344 * 4 - class31_sub3_sub1_sub3.anInt1505) / 2;
                    class31_sub3_sub1_sub3.method392(-4899, 48 + k * 4 + l3, 48 + (104 - i1 - class22.anInt344) * 4 + i4);
                }
            }
        }
    }

    public void method141(int i)
    {
        i = 94 / i;
        if(anInt989 == 0)
        {
            int j = super.anInt13 / 2 - 80;
            int i1 = super.anInt14 / 2 + 20;
            i1 += 20;
            if(super.anInt29 == 1 && super.anInt30 >= j - 75 && super.anInt30 <= j + 75 && super.anInt31 >= i1 - 20 && super.anInt31 <= i1 + 20)
            {
                anInt989 = 3;
                anInt1026 = 0;
            }
            j = super.anInt13 / 2 + 80;
            if(super.anInt29 == 1 && super.anInt30 >= j - 75 && super.anInt30 <= j + 75 && super.anInt31 >= i1 - 20 && super.anInt31 <= i1 + 20)
            {
                aString854 = "";
                aString855 = "Enter your username & password.";
                anInt989 = 2;
                anInt1026 = 0;
                return;
            }
        } else
        {
            if(anInt989 == 2)
            {
                int k = super.anInt14 / 2 - 40;
                k += 30;
                k += 25;
                if(super.anInt29 == 1 && super.anInt31 >= k - 15 && super.anInt31 < k)
                    anInt1026 = 0;
                k += 15;
                if(super.anInt29 == 1 && super.anInt31 >= k - 15 && super.anInt31 < k)
                    anInt1026 = 1;
                k += 15;
                int j1 = super.anInt13 / 2 - 80;
                int l1 = super.anInt14 / 2 + 50;
                l1 += 20;
                if(super.anInt29 == 1 && super.anInt30 >= j1 - 75 && super.anInt30 <= j1 + 75 && super.anInt31 >= l1 - 20 && super.anInt31 <= l1 + 20)
                {
                    anInt1220 = 0;
                    method29(aString1211, aString1212, false);
                    if(aBoolean1079)
                        return;
                }
                j1 = super.anInt13 / 2 + 80;
                if(super.anInt29 == 1 && super.anInt30 >= j1 - 75 && super.anInt30 <= j1 + 75 && super.anInt31 >= l1 - 20 && super.anInt31 <= l1 + 20)
                {
                    anInt989 = 0;
                    aString1211 = "";
                    aString1212 = "";
                }
                do
                {
                    int i2 = method5(true);
                    if(i2 == -1)
                        break;
                    boolean flag = false;
                    for(int j2 = 0; j2 < aString1296.length(); j2++)
                    {
                        if(i2 != aString1296.charAt(j2))
                            continue;
                        flag = true;
                        break;
                    }

                    if(anInt1026 == 0)
                    {
                        if(i2 == 8 && aString1211.length() > 0)
                            aString1211 = aString1211.substring(0, aString1211.length() - 1);
                        if(i2 == 9 || i2 == 10 || i2 == 13)
                            anInt1026 = 1;
                        if(flag)
                            aString1211 += (char)i2;
                        if(aString1211.length() > 12)
                            aString1211 = aString1211.substring(0, 12);
                    } else
                    if(anInt1026 == 1)
                    {
                        if(i2 == 8 && aString1212.length() > 0)
                            aString1212 = aString1212.substring(0, aString1212.length() - 1);
                        if(i2 == 9 || i2 == 10 || i2 == 13)
                            anInt1026 = 0;
                        if(flag)
                            aString1212 += (char)i2;
                        if(aString1212.length() > 20)
                            aString1212 = aString1212.substring(0, 20);
                    }
                } while(true);
                return;
            }
            if(anInt989 == 3)
            {
                int l = super.anInt13 / 2;
                int k1 = super.anInt14 / 2 + 50;
                k1 += 20;
                if(super.anInt29 == 1 && super.anInt30 >= l - 75 && super.anInt30 <= l + 75 && super.anInt31 >= k1 - 20 && super.anInt31 <= k1 + 20)
                    anInt989 = 0;
            }
        }
    }

    public void method142(String s)
    {
        System.out.println(s);
        try
        {
            getAppletContext().showDocument(new URL(getCodeBase(), "loaderror_" + s + ".html"));
        }
        catch(Exception exception)
        {
            exception.printStackTrace();
        }
        do
            try
            {
                Thread.sleep(1000L);
            }
            catch(Exception _ex) { }
        while(true);
    }

    public int method143(int i, int j, int k, int l)
    {
        int i1 = i >> 7;
        int j1 = l >> 7;
        if(i1 < 0 || j1 < 0 || i1 > 103 || j1 > 103)
            return 0;
        int k1 = k;
        anInt960 += j;
        if(k1 < 3 && (aByteArrayArrayArray917[1][i1][j1] & 2) == 2)
            k1++;
        int l1 = i & 0x7f;
        int i2 = l & 0x7f;
        int j2 = anIntArrayArrayArray848[k1][i1][j1] * (128 - l1) + anIntArrayArrayArray848[k1][i1 + 1][j1] * l1 >> 7;
        int k2 = anIntArrayArrayArray848[k1][i1][j1 + 1] * (128 - l1) + anIntArrayArrayArray848[k1][i1 + 1][j1 + 1] * l1 >> 7;
        return j2 * (128 - i2) + k2 * i2 >> 7;
    }

    public void method144(boolean flag)
    {
        aBoolean1013 = true;
        if(!flag)
            aClass31_Sub3_Sub2_853.method412(223);
        try
        {
            long l = System.currentTimeMillis();
            int i = 0;
            int j = 20;
            while(aBoolean1067) 
            {
                anInt1073++;
                method19(5);
                method19(5);
                method109(-544);
                if(++i > 10)
                {
                    long l1 = System.currentTimeMillis();
                    int k = (int)(l1 - l) / 10 - j;
                    j = 40 - k;
                    if(j < 5)
                        j = 5;
                    i = 0;
                    l = l1;
                }
                try
                {
                    Thread.sleep(j);
                }
                catch(Exception _ex) { }
            }
        }
        catch(Exception _ex) { }
        aBoolean1013 = false;
    }

    public void method145(int i)
    {
        if(aClass15_1227 != null)
            return;
        method15(aByte1274);
        super.aClass15_16 = null;
        aClass15_1002 = null;
        if(i != anInt883)
            aClass31_Sub3_Sub2_853.method412(120);
        aClass15_1003 = null;
        aClass15_1004 = null;
        aClass15_1005 = null;
        aClass15_1006 = null;
        aClass15_1007 = null;
        aClass15_1008 = null;
        aClass15_1009 = null;
        aClass15_1010 = null;
        aClass15_1227 = new Class15(96, 479, method11(true), anInt1144);
        aClass15_1225 = new Class15(156, 172, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass31_Sub3_Sub1_Sub3_1173.method392(-4899, 0, 0);
        aClass15_1224 = new Class15(261, 190, method11(true), anInt1144);
        aClass15_1226 = new Class15(334, 512, method11(true), anInt1144);
        Class31_Sub3_Sub1.method348(true);
        aClass15_1264 = new Class15(50, 496, method11(true), anInt1144);
        aClass15_1265 = new Class15(37, 269, method11(true), anInt1144);
        aClass15_1266 = new Class15(45, 249, method11(true), anInt1144);
        aBoolean835 = true;
        aClass15_1226.method213(0);
        Class31_Sub3_Sub1_Sub1.anIntArray1474 = anIntArray1279;
    }

    public void method146(int i)
    {
        if(i <= 0)
            return;
        try
        {
            int j = ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 + anInt874;
            int k = ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 + anInt1030;
            if(anInt1090 - j < -500 || anInt1090 - j > 500 || anInt1091 - k < -500 || anInt1091 - k > 500)
            {
                anInt1090 = j;
                anInt1091 = k;
            }
            if(anInt1090 != j)
                anInt1090 += (j - anInt1090) / 16;
            if(anInt1091 != k)
                anInt1091 += (k - anInt1091) / 16;
            if(super.anIntArray33[1] == 1)
                anInt821 += (-24 - anInt821) / 2;
            else
            if(super.anIntArray33[2] == 1)
                anInt821 += (24 - anInt821) / 2;
            else
                anInt821 /= 2;
            if(super.anIntArray33[3] == 1)
                anInt822 += (12 - anInt822) / 2;
            else
            if(super.anIntArray33[4] == 1)
                anInt822 += (-12 - anInt822) / 2;
            else
                anInt822 /= 2;
            anInt820 = anInt820 + anInt821 / 2 & 0x7ff;
            anInt819 += anInt822 / 2;
            if(anInt819 < 128)
                anInt819 = 128;
            if(anInt819 > 383)
                anInt819 = 383;
            int l = anInt1090 >> 7;
            int i1 = anInt1091 >> 7;
            int j1 = method143(anInt1090, 0, anInt981, anInt1091);
            int k1 = 0;
            if(l > 3 && i1 > 3 && l < 100 && i1 < 100)
            {
                for(int l1 = l - 4; l1 <= l + 4; l1++)
                {
                    for(int j2 = i1 - 4; j2 <= i1 + 4; j2++)
                    {
                        int k2 = anInt981;
                        if(k2 < 3 && (aByteArrayArrayArray917[1][l1][j2] & 2) == 2)
                            k2++;
                        int l2 = j1 - anIntArrayArrayArray848[k2][l1][j2];
                        if(l2 > k1)
                            k1 = l2;
                    }

                }

            }
            anInt936++;
            if(anInt936 > 101)
            {
                anInt936 = 0;
                aClass31_Sub3_Sub2_853.method411(7793, 110);
                aClass31_Sub3_Sub2_853.method413(3789);
            }
            int i2 = k1 * 192;
            if(i2 > 0x17f00)
                i2 = 0x17f00;
            if(i2 < 32768)
                i2 = 32768;
            if(i2 > anInt994)
            {
                anInt994 += (i2 - anInt994) / 24;
                return;
            }
            if(i2 < anInt994)
            {
                anInt994 += (i2 - anInt994) / 80;
                return;
            }
        }
        catch(Exception _ex)
        {
            signlink.reporterror("glfc_ex " + ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1635 + "," + ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anInt1636 + "," + anInt1090 + "," + anInt1091 + "," + anInt1122 + "," + anInt1123 + "," + anInt929 + "," + anInt930);
            throw new RuntimeException("eek");
        }
    }

    public AppletContext getAppletContext()
    {
        if(signlink.mainapp != null)
            return signlink.mainapp.getAppletContext();
        else
            return super.getAppletContext();
    }

    public void method147(byte byte0, int i, Class31_Sub3_Sub2 class31_sub3_sub2)
    {
        class31_sub3_sub2.method432(-604);
        int j = class31_sub3_sub2.method433(8, (byte)-50);
        if(j < anInt1102)
        {
            for(int k = j; k < anInt1102; k++)
                anIntArray1295[anInt1294++] = anIntArray1103[k];

        }
        if(j > anInt1102)
        {
            signlink.reporterror(aString1211 + " Too many npcs");
            throw new RuntimeException("eek");
        }
        anInt1102 = 0;
        if(byte0 != -90)
            return;
        for(int l = 0; l < j; l++)
        {
            int i1 = anIntArray1103[l];
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[i1];
            int j1 = class31_sub3_sub2.method433(1, (byte)-50);
            if(j1 == 0)
            {
                anIntArray1103[anInt1102++] = i1;
                class31_sub3_sub3_sub4_sub1.anInt1626 = anInt935;
            } else
            {
                int k1 = class31_sub3_sub2.method433(2, (byte)-50);
                if(k1 == 0)
                {
                    anIntArray1103[anInt1102++] = i1;
                    class31_sub3_sub3_sub4_sub1.anInt1626 = anInt935;
                    anIntArray972[anInt971++] = i1;
                } else
                if(k1 == 1)
                {
                    anIntArray1103[anInt1102++] = i1;
                    class31_sub3_sub3_sub4_sub1.anInt1626 = anInt935;
                    int l1 = class31_sub3_sub2.method433(3, (byte)-50);
                    class31_sub3_sub3_sub4_sub1.method495(l1, false, true);
                    int j2 = class31_sub3_sub2.method433(1, (byte)-50);
                    if(j2 == 1)
                        anIntArray972[anInt971++] = i1;
                } else
                if(k1 == 2)
                {
                    anIntArray1103[anInt1102++] = i1;
                    class31_sub3_sub3_sub4_sub1.anInt1626 = anInt935;
                    int i2 = class31_sub3_sub2.method433(3, (byte)-50);
                    class31_sub3_sub3_sub4_sub1.method495(i2, true, true);
                    int k2 = class31_sub3_sub2.method433(3, (byte)-50);
                    class31_sub3_sub3_sub4_sub1.method495(k2, true, true);
                    int l2 = class31_sub3_sub2.method433(1, (byte)-50);
                    if(l2 == 1)
                        anIntArray972[anInt971++] = i1;
                } else
                if(k1 == 3)
                    anIntArray1295[anInt1294++] = i1;
            }
        }

    }

    public static void main(String args[])
    {
        try
        {
            System.out.println("RS2 user client - release #" + 356);
            if(args.length != 5)
            {
                System.out.println("Usage: node-id, port-offset, [lowmem/highmem], [free/members], storeid");
                return;
            }
            anInt976 = Integer.parseInt(args[0]);
            anInt977 = Integer.parseInt(args[1]);
            if(args[2].equals("lowmem"))
                method52(aByte1112);
            else
            if(args[2].equals("highmem"))
            {
                method93(0);
            } else
            {
                System.out.println("Usage: node-id, port-offset, [lowmem/highmem], [free/members], storeid");
                return;
            }
            if(args[3].equals("free"))
                aBoolean978 = false;
            else
            if(args[3].equals("members"))
            {
                aBoolean978 = true;
            } else
            {
                System.out.println("Usage: node-id, port-offset, [lowmem/highmem], [free/members], storeid");
                return;
            }
            signlink.storeid = Integer.parseInt(args[4]);
            signlink.startpriv(InetAddress.getLocalHost());
            client client1 = new client();
            client1.method1(503, aByte1050, 765);
            return;
        }
        catch(Exception exception)
        {
            return;
        }
    }

    public void method148(byte byte0, int i, Class31_Sub3_Sub2 class31_sub3_sub2)
    {
        if(byte0 == 7)
            byte0 = 0;
        else
            aBoolean1249 = !aBoolean1249;
        while(class31_sub3_sub2.anInt1441 + 21 < i * 8) 
        {
            int j = class31_sub3_sub2.method433(14, (byte)-50);
            if(j == 16383)
                break;
            if(aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j] == null)
                aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j] = new Class31_Sub3_Sub3_Sub4_Sub1();
            Class31_Sub3_Sub3_Sub4_Sub1 class31_sub3_sub3_sub4_sub1 = aClass31_Sub3_Sub3_Sub4_Sub1Array1101[j];
            anIntArray1103[anInt1102++] = j;
            class31_sub3_sub3_sub4_sub1.anInt1626 = anInt935;
            class31_sub3_sub3_sub4_sub1.aClass45_1711 = Class45.method598(class31_sub3_sub2.method433(13, (byte)-50));
            int k = class31_sub3_sub2.method433(1, (byte)-50);
            if(k == 1)
                anIntArray972[anInt971++] = j;
            int l = class31_sub3_sub2.method433(1, (byte)-50);
            int i1 = class31_sub3_sub2.method433(5, (byte)-50);
            if(i1 > 15)
                i1 -= 32;
            int j1 = class31_sub3_sub2.method433(5, (byte)-50);
            if(j1 > 15)
                j1 -= 32;
            class31_sub3_sub3_sub4_sub1.anInt1650 = class31_sub3_sub3_sub4_sub1.aClass45_1711.aByte706;
            class31_sub3_sub3_sub4_sub1.anInt1660 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt709;
            class31_sub3_sub3_sub4_sub1.anInt1639 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt708;
            class31_sub3_sub3_sub4_sub1.anInt1640 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt674;
            class31_sub3_sub3_sub4_sub1.anInt1641 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt687;
            class31_sub3_sub3_sub4_sub1.anInt1642 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt705;
            class31_sub3_sub3_sub4_sub1.anInt1647 = class31_sub3_sub3_sub4_sub1.aClass45_1711.anInt699;
            class31_sub3_sub3_sub4_sub1.method497(((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1633[0] + j1, ((Class31_Sub3_Sub3_Sub4) (aClass31_Sub3_Sub3_Sub4_Sub2_885)).anIntArray1634[0] + i1, aByte1109, l == 1);
        }
        class31_sub3_sub2.method434(true);
    }

    public void method149(int i, byte byte0, boolean flag)
    {
        if(byte0 != -75)
            anInt903 = aClass24_993.method288();
        signlink.midivol = i;
        if(flag)
            signlink.midi = "voladjust";
    }

    public void method150(int i, int j)
    {
        if(i < 3 || i > 3)
        {
            for(int k = 1; k > 0; k++);
        }
        Class30.method337(3, j);
    }

    public String method151(int i, byte byte0)
    {
        if(byte0 != -1)
            aClass31_Sub3_Sub2_853.method412(245);
        if(i < 0x3b9ac9ff)
            return String.valueOf(i);
        else
            return "*";
    }

    public void method152(boolean flag, byte abyte0[], int i)
    {
        if(!aBoolean1214)
            return;
        signlink.midifade = flag ? 1 : 0;
        signlink.midisave(abyte0, abyte0.length);
        if(i != 47025)
        {
            for(int j = 1; j > 0; j++);
        }
    }

    public client()
    {
		server = "127.0.0.1";
        anInt817 = 3;
        aByte818 = 1;
        anInt819 = 128;
        aString824 = "";
        aStringArray826 = new String[100];
        anIntArray827 = new int[100];
        aBoolean829 = false;
        anInt833 = 0x4d4233;
        aBoolean835 = false;
        aClass28_836 = new Class28(0);
        anInt839 = 231;
        anIntArray840 = new int[Class38.anInt571];
        aBoolean850 = true;
        aClass31_Sub3_Sub1_Sub2Array851 = new Class31_Sub3_Sub1_Sub2[32];
        aByteArray852 = new byte[16384];
        aClass31_Sub3_Sub2_853 = Class31_Sub3_Sub2.method410(-512, 1);
        aString854 = "";
        aString855 = "";
        aBoolean861 = true;
        anInt862 = 128;
        aClass30_863 = new Class30();
        anInt865 = 50;
        anIntArray866 = new int[anInt865];
        anIntArray867 = new int[anInt865];
        anIntArray868 = new int[anInt865];
        anIntArray869 = new int[anInt865];
        anIntArray870 = new int[anInt865];
        anIntArray871 = new int[anInt865];
        anIntArray872 = new int[anInt865];
        aStringArray873 = new String[anInt865];
        anInt875 = 2;
        aByte876 = 4;
        anInt883 = 7;
        anIntArrayArray884 = new int[104][104];
        anIntArray886 = new int[151];
        anInt889 = -1;
        aBoolean890 = false;
        aBoolean898 = false;
        anInt899 = -1;
        anInt900 = -1;
        aBoolean901 = false;
        aBoolean902 = false;
        anInt903 = 38046;
        anInt908 = 2;
        aBoolean909 = false;
        aBoolean910 = true;
        anIntArray913 = new int[33];
        anIntArray915 = new int[200];
        aClass31_Sub3_Sub1_Sub2Array916 = new Class31_Sub3_Sub1_Sub2[100];
        anInt918 = -1;
        anIntArray921 = new int[100];
        aBoolean928 = false;
        aBoolean933 = false;
        aBoolean934 = false;
        anInt938 = 964;
        anIntArray939 = new int[Class38.anInt571];
        anInt941 = -1;
        anInt942 = -1;
        anIntArray955 = new int[5];
        aByte956 = 41;
        aBoolean958 = false;
        anIntArrayArray959 = new int[104][104];
        anInt966 = 2048;
        anInt967 = 2047;
        aClass31_Sub3_Sub3_Sub4_Sub2Array968 = new Class31_Sub3_Sub3_Sub4_Sub2[anInt966];
        anIntArray970 = new int[anInt966];
        anIntArray972 = new int[anInt966];
        aClass31_Sub3_Sub2Array973 = new Class31_Sub3_Sub2[anInt966];
        anInt980 = 0x23201b;
        anInt990 = -659;
        aString992 = "";
        aClass28ArrayArrayArray996 = new Class28[4][104][104];
        aByte997 = 7;
        aStringArray1000 = new String[200];
        aClass31_Sub3_Sub1_Sub2Array1001 = new Class31_Sub3_Sub1_Sub2[32];
        aBoolean1013 = false;
        anInt1014 = 3;
        anIntArray1015 = new int[500];
        anIntArray1016 = new int[500];
        anIntArray1017 = new int[500];
        anIntArray1018 = new int[500];
        anInt1020 = 1;
        anInt1021 = -1;
        anInt1031 = 2;
        aByte1043 = 1;
        anIntArray1044 = new int[5];
        anInt1049 = -1;
        aBoolean1052 = false;
        aBoolean1058 = false;
        anInt1063 = -1;
        anInt1064 = -462;
        aString1065 = "";
        aBoolean1067 = false;
        aBoolean1068 = false;
        aString1069 = "";
        aClass31_Sub3_Sub1_Sub2Array1070 = new Class31_Sub3_Sub1_Sub2[8];
        anInt1072 = -1;
        anIntArray1074 = new int[50];
        aCRC32_1076 = new CRC32();
        aBoolean1079 = false;
        aClass28_1080 = new Class28(0);
        anIntArray1085 = new int[Class38.anInt571];
        anIntArray1086 = new int[4000];
        anIntArray1087 = new int[4000];
        anIntArray1089 = new int[5];
        aBoolean1093 = false;
        anInt1094 = 493;
        anInt1095 = 0x332d25;
        aBoolean1097 = false;
        aClass23Array1098 = new Class23[5];
        aClass31_Sub3_Sub2_1100 = new Class31_Sub3_Sub2((byte)114, new byte[5000]);
        aClass31_Sub3_Sub3_Sub4_Sub1Array1101 = new Class31_Sub3_Sub3_Sub4_Sub1[16384];
        anIntArray1103 = new int[16384];
        aByte1104 = 6;
        anIntArray1105 = new int[100];
        aStringArray1106 = new String[100];
        aStringArray1107 = new String[100];
        anInt1108 = -1;
        aByte1109 = 0;
        anIntArray1111 = new int[2000];
        aByte1113 = 9;
        anIntArray1114 = new int[2000];
        aClass31_Sub3_Sub1_Sub3Array1115 = new Class31_Sub3_Sub1_Sub3[2];
        anInt1116 = -644;
        aClass31_Sub3_Sub1_Sub2Array1118 = new Class31_Sub3_Sub1_Sub2[32];
        anInt1120 = -39349;
        anInt1121 = 78;
        aClass28_1124 = new Class28(0);
        aBoolean1127 = false;
        anInt1129 = -1;
        aByte1130 = -119;
        aLongArray1131 = new long[100];
        anIntArray1132 = new int[256];
        anIntArrayArray1133 = new int[104][104];
        anIntArray1135 = new int[33];
        aBoolean1136 = true;
        aByte1137 = -119;
        aClass31_Sub3_Sub1_Sub3Array1140 = new Class31_Sub3_Sub1_Sub3[100];
        aClass31_Sub3_Sub1_Sub3Array1141 = new Class31_Sub3_Sub1_Sub3[13];
        aStringArray1150 = new String[5];
        aBooleanArray1151 = new boolean[5];
        aBoolean1152 = false;
        aBoolean1154 = true;
        aBoolean1155 = true;
        anIntArray1157 = new int[9];
        anIntArray1159 = new int[50];
        anInt1160 = -1;
        anIntArray1166 = new int[7];
        aString1168 = "";
        aBoolean1171 = false;
        aBooleanArray1175 = new boolean[5];
        aBoolean1181 = false;
        aBoolean1185 = false;
        aBoolean1186 = false;
        aByte1187 = 5;
        aByte1188 = 8;
        anIntArray1198 = new int[50];
        aString1199 = "";
        anInt1206 = -1;
        aStringArray1208 = new String[500];
        aBoolean1210 = false;
        aString1211 = "";
        aString1212 = "";
        aBoolean1214 = true;
        anInt1215 = -1;
        aLongArray1218 = new long[200];
        anIntArray1221 = new int[5];
        aClass31_Sub3_Sub2_1222 = Class31_Sub3_Sub2.method410(-512, 1);
        aByte1223 = 7;
        aClass31_Sub3_Sub1_Sub2Array1228 = new Class31_Sub3_Sub1_Sub2[1000];
        anInt1232 = 2;
        anInt1233 = 105;
        anIntArray1238 = new int[5];
        anInt1239 = 3169;
        aBoolean1249 = true;
        aBoolean1253 = false;
        anIntArrayArrayArray1258 = new int[4][13][13];
        anInt1259 = 7;
        anInt1260 = 0x766654;
        aBoolean1267 = false;
        aBoolean1268 = false;
        aByte1274 = 3;
        aClass4Array1281 = new Class4[4];
        anIntArray1288 = new int[151];
        aBoolean1289 = false;
        anInt1291 = 1;
        aBoolean1293 = true;
        anIntArray1295 = new int[1000];
        aBoolean1297 = false;
        anIntArray1299 = new int[1000];
        anIntArray1300 = new int[1000];
        anInt1302 = -347;
        anInt1303 = -1;
        aByte1304 = 1;
        aClass31_Sub3_Sub1_Sub2Array1306 = new Class31_Sub3_Sub1_Sub2[20];
        aClass31_Sub3_Sub2_1307 = Class31_Sub3_Sub2.method410(-512, 1);
        aBoolean1315 = false;
    }

	public String server;
    public int anInt817;
    public byte aByte818;
    public int anInt819;
    public int anInt820;
    public int anInt821;
    public int anInt822;
    public int anInt823;
    public String aString824;
    public int anInt825;
    public String aStringArray826[];
    public int anIntArray827[];
    public int anInt828;
    public boolean aBoolean829;
    public static int anInt830;
    public static int anInt831;
    public static int anInt832;
    public int anInt833;
    public int anInt834;
    public boolean aBoolean835;
    public Class28 aClass28_836;
    public int anInt837;
    public int anInt838;
    public int anInt839;
    public int anIntArray840[];
    public int anInt841;
    public int anInt842;
    public Class27_Sub1 aClass27_Sub1_843;
    public int anInt844;
    public int anInt845;
    public int anInt846;
    public int anInt847;
    public int anIntArrayArrayArray848[][][];
    public int anInt849;
    public boolean aBoolean850;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2Array851[];
    public byte aByteArray852[];
    public Class31_Sub3_Sub2 aClass31_Sub3_Sub2_853;
    public String aString854;
    public String aString855;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_856;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_857;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_858;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_859;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_860;
    public boolean aBoolean861;
    public int anInt862;
    public Class30 aClass30_863;
    public int anInt864;
    public int anInt865;
    public int anIntArray866[];
    public int anIntArray867[];
    public int anIntArray868[];
    public int anIntArray869[];
    public int anIntArray870[];
    public int anIntArray871[];
    public int anIntArray872[];
    public String aStringArray873[];
    public int anInt874;
    public int anInt875;
    public byte aByte876;
    public int anInt877;
    public int anInt878;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_879;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_880;
    public int anInt881;
    public static int anInt882;
    public int anInt883;
    public int anIntArrayArray884[][];
    public static Class31_Sub3_Sub3_Sub4_Sub2 aClass31_Sub3_Sub3_Sub4_Sub2_885;
    public int anIntArray886[];
    public int anInt887;
    public long aLong888;
    public int anInt889;
    public boolean aBoolean890;
    public static byte aByte891 = 3;
    public String aString892;
    public int anInt893;
    public int anIntArray894[];
    public int anIntArray895[];
    public int anIntArray896[];
    public int anIntArray897[];
    public boolean aBoolean898;
    public int anInt899;
    public int anInt900;
    public boolean aBoolean901;
    public boolean aBoolean902;
    public int anInt903;
    public int anInt904;
    public int anInt905;
    public int anInt906;
    public int anInt907;
    public int anInt908;
    public boolean aBoolean909;
    public boolean aBoolean910;
    public long aLong911;
    public static final int anIntArrayArray912[][] = {
        {
            6798, 107, 10283, 16, 4797, 7744, 5799, 4634, 33697, 22433, 
            2983, 54193
        }, {
            8741, 12, 64030, 43162, 7735, 8404, 1701, 38430, 24094, 10153, 
            56621, 4783, 1341, 16578, 35003, 25239
        }, {
            25238, 8742, 12, 64030, 43162, 7735, 8404, 1701, 38430, 24094, 
            10153, 56621, 4783, 1341, 16578, 35003
        }, {
            4626, 11146, 6439, 12, 4758, 10270
        }, {
            4550, 4537, 5681, 5673, 5790, 6806, 8076, 4574
        }
    };
    public int anIntArray913[];
    public static int anInt914 = 38046;
    public int anIntArray915[];
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2Array916[];
    public byte aByteArrayArrayArray917[][][];
    public int anInt918;
    public int anInt919;
    public final int anInt920 = 100;
    public int anIntArray921[];
    public static int anInt922 = -597;
    public int anInt923;
    public int anInt924;
    public int anInt925;
    public int anInt926;
    public int anInt927;
    public boolean aBoolean928;
    public int anInt929;
    public int anInt930;
    public int anInt931;
    public int anInt932;
    public boolean aBoolean933;
    public boolean aBoolean934;
    public static int anInt935;
    public static int anInt936;
    public Class34 aClass34_937;
    public int anInt938;
    public int anIntArray939[];
    public int anInt940;
    public int anInt941;
    public int anInt942;
    public int anInt943;
    public int anInt944;
    public int anInt945;
    public int anInt946;
    public String aString947;
    public int anInt948;
    public int anInt949;
    public int anInt950;
    public String aString951;
    public int anInt952;
    public static int anInt953;
    public int anInt954;
    public int anIntArray955[];
    public byte aByte956;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_957;
    public boolean aBoolean958;
    public int anIntArrayArray959[][];
    public int anInt960;
    public int anInt961;
    public int anInt962;
    public int anInt963;
    public int anInt964;
    public int anInt965;
    public int anInt966;
    public int anInt967;
    public Class31_Sub3_Sub3_Sub4_Sub2 aClass31_Sub3_Sub3_Sub4_Sub2Array968[];
    public int anInt969;
    public int anIntArray970[];
    public int anInt971;
    public int anIntArray972[];
    public Class31_Sub3_Sub2 aClass31_Sub3_Sub2Array973[];
    public int anInt974;
    public int anInt975;
    public static int anInt976 = 10;
    public static int anInt977;
    public static boolean aBoolean978 = true;
    public static boolean aBoolean979;
    public int anInt980;
    public int anInt981;
    public int anInt982;
    public int anInt983;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_984;
    public int anInt985;
    public static int anInt986;
    public int anInt987;
    public Socket aSocket988;
    public int anInt989;
    public int anInt990;
    public static byte aByte991 = 91;
    public String aString992;
    public Class24 aClass24_993;
    public int anInt994;
    public int anInt995;
    public Class28 aClass28ArrayArrayArray996[][][];
    public byte aByte997;
    public int anInt998;
    public int anInt999;
    public String aStringArray1000[];
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2Array1001[];
    public Class15 aClass15_1002;
    public Class15 aClass15_1003;
    public Class15 aClass15_1004;
    public Class15 aClass15_1005;
    public Class15 aClass15_1006;
    public Class15 aClass15_1007;
    public Class15 aClass15_1008;
    public Class15 aClass15_1009;
    public Class15 aClass15_1010;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1011;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1012;
    public volatile boolean aBoolean1013;
    public int anInt1014;
    public int anIntArray1015[];
    public int anIntArray1016[];
    public int anIntArray1017[];
    public int anIntArray1018[];
    public int anInt1019;
    public int anInt1020;
    public int anInt1021;
    public static int anInt1022;
    public int anInt1023;
    public int anInt1024;
    public static int anInt1025;
    public int anInt1026;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1027;
    public int anIntArray1028[];
    public int anIntArray1029[];
    public int anInt1030;
    public int anInt1031;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1032;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1033;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1034;
    public int anInt1035;
    public int anInt1036;
    public int anInt1037;
    public int anInt1038;
    public int anInt1039;
    public int anInt1040;
    public int anInt1041;
    public static int anInt1042;
    public byte aByte1043;
    public int anIntArray1044[];
    public int anInt1045;
    public int anInt1046;
    public int anInt1047;
    public int anInt1048;
    public int anInt1049;
    public static byte aByte1050 = 4;
    public int anInt1051;
    public boolean aBoolean1052;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1053;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1054;
    public static int anInt1055;
    public int anInt1056;
    public static boolean aBoolean1057;
    public boolean aBoolean1058;
    public static BigInteger aBigInteger1059 = new BigInteger("58778699976184461502525193738213253649000149147835990136706041084440742975821");
    public static final int anIntArray1060[] = {
        9104, 10275, 7595, 3610, 7975, 8526, 918, 38802, 24466, 10145, 
        58654, 5027, 1457, 16565, 34991, 25486
    };
    public String aString1061;
    public static int anIntArray1062[];
    public int anInt1063;
    public int anInt1064;
    public String aString1065;
    public int anInt1066;
    public volatile boolean aBoolean1067;
    public boolean aBoolean1068;
    public String aString1069;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2Array1070[];
    public long aLong1071;
    public int anInt1072;
    public int anInt1073;
    public int anIntArray1074[];
    public Class12 aClass12_1075;
    public CRC32 aCRC32_1076;
    public int anIntArray1077[];
    public int anIntArray1078[];
    public boolean aBoolean1079;
    public Class28 aClass28_1080;
    public int anInt1081;
    public final int anIntArray1082[] = {
        0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 
        2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 
        2, 2, 3
    };
    public static int anInt1083;
    public int anInt1084;
    public int anIntArray1085[];
    public int anIntArray1086[];
    public int anIntArray1087[];
    public int anInt1088;
    public int anIntArray1089[];
    public int anInt1090;
    public int anInt1091;
    public int anInt1092;
    public boolean aBoolean1093;
    public int anInt1094;
    public int anInt1095;
    public int anInt1096;
    public boolean aBoolean1097;
    public Class23 aClass23Array1098[];
    public static int anInt1099;
    public Class31_Sub3_Sub2 aClass31_Sub3_Sub2_1100;
    public Class31_Sub3_Sub3_Sub4_Sub1 aClass31_Sub3_Sub3_Sub4_Sub1Array1101[];
    public int anInt1102;
    public int anIntArray1103[];
    public byte aByte1104;
    public int anIntArray1105[];
    public String aStringArray1106[];
    public String aStringArray1107[];
    public int anInt1108;
    public byte aByte1109;
    public int anIntArray1110[] = {
        -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 
        -1, -1, -1, -1, -1
    };
    public int anIntArray1111[];
    public static byte aByte1112 = 91;
    public byte aByte1113;
    public int anIntArray1114[];
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3Array1115[];
    public int anInt1116;
    public int anInt1117;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2Array1118[];
    public int anInt1119;
    public int anInt1120;
    public int anInt1121;
    public int anInt1122;
    public int anInt1123;
    public Class28 aClass28_1124;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1125;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1126;
    public boolean aBoolean1127;
    public int anInt1128;
    public int anInt1129;
    public byte aByte1130;
    public long aLongArray1131[];
    public int anIntArray1132[];
    public int anIntArrayArray1133[][];
    public int anInt1134;
    public int anIntArray1135[];
    public boolean aBoolean1136;
    public byte aByte1137;
    public int anInt1138;
    public int anInt1139;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3Array1140[];
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3Array1141[];
    public byte aByteArrayArray1142[][];
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1143;
    public static int anInt1144;
    public int anInt1145;
    public int anInt1146;
    public int anInt1147;
    public int anInt1148;
    public int anInt1149;
    public String aStringArray1150[];
    public boolean aBooleanArray1151[];
    public boolean aBoolean1152;
    public int anInt1153;
    public boolean aBoolean1154;
    public boolean aBoolean1155;
    public int anInt1156;
    public int anIntArray1157[];
    public int anInt1158;
    public int anIntArray1159[];
    public int anInt1160;
    public int anInt1161;
    public int anInt1162;
    public int anInt1163;
    public int anInt1164;
    public int anIntArray1165[] = {
        0xffff00, 0xff0000, 65280, 65535, 0xff00ff, 0xffffff
    };
    public int anIntArray1166[];
    public int anInt1167;
    public String aString1168;
    public int anInt1169;
    public int anInt1170;
    public boolean aBoolean1171;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1172;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1173;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1174;
    public boolean aBooleanArray1175[];
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1176;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1177;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1178;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1179;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1180;
    public boolean aBoolean1181;
    public int anInt1182;
    public int anInt1183;
    public int anInt1184;
    public volatile boolean aBoolean1185;
    public boolean aBoolean1186;
    public byte aByte1187;
    public byte aByte1188;
    public Class15 aClass15_1189;
    public Class15 aClass15_1190;
    public Class15 aClass15_1191;
    public Class15 aClass15_1192;
    public Class15 aClass15_1193;
    public Class15 aClass15_1194;
    public Class15 aClass15_1195;
    public Class15 aClass15_1196;
    public Class15 aClass15_1197;
    public int anIntArray1198[];
    public String aString1199;
    public Class10 aClass10_1200;
    public int anInt1201;
    public int anInt1202;
    public int anInt1203;
    public int anInt1204;
    public int anInt1205;
    public int anInt1206;
    public static int anInt1207;
    public String aStringArray1208[];
    public static boolean aBoolean1209;
    public boolean aBoolean1210;
    public String aString1211;
    public String aString1212;
    public static int anInt1213;
    public boolean aBoolean1214;
    public int anInt1215;
    public int anInt1216;
    public int anInt1217;
    public long aLongArray1218[];
    public static int anInt1219;
    public int anInt1220;
    public int anIntArray1221[];
    public Class31_Sub3_Sub2 aClass31_Sub3_Sub2_1222;
    public byte aByte1223;
    public Class15 aClass15_1224;
    public Class15 aClass15_1225;
    public Class15 aClass15_1226;
    public Class15 aClass15_1227;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2Array1228[];
    public static boolean aBoolean1229 = true;
    public int anInt1230;
    public int anInt1231;
    public int anInt1232;
    public int anInt1233;
    public Class31_Sub3_Sub1_Sub4 aClass31_Sub3_Sub1_Sub4_1234;
    public Class31_Sub3_Sub1_Sub4 aClass31_Sub3_Sub1_Sub4_1235;
    public Class31_Sub3_Sub1_Sub4 aClass31_Sub3_Sub1_Sub4_1236;
    public Class31_Sub3_Sub1_Sub4 aClass31_Sub3_Sub1_Sub4_1237;
    public int anIntArray1238[];
    public int anInt1239;
    public int anIntArray1240[] = {
        17, 24, 34, 40
    };
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1241;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1242;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1243;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1244;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3_1245;
    public int anInt1246;
    public int anInt1247;
    public byte aByteArrayArray1248[][];
    public boolean aBoolean1249;
    public static int anInt1250;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1251;
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2_1252;
    public boolean aBoolean1253;
    public static int anInt1254;
    public long aLong1255;
    public static boolean aBoolean1256;
    public int anInt1257;
    public int anIntArrayArrayArray1258[][][];
    public int anInt1259;
    public int anInt1260;
    public Class11 aClass11_1261;
    public int anInt1262;
    public static int anInt1263 = 5;
    public Class15 aClass15_1264;
    public Class15 aClass15_1265;
    public Class15 aClass15_1266;
    public boolean aBoolean1267;
    public boolean aBoolean1268;
    public int anInt1269;
    public long aLong1270;
    public static int anInt1271;
    public int anInt1272;
    public Class31_Sub3_Sub1_Sub3 aClass31_Sub3_Sub1_Sub3Array1273[];
    public byte aByte1274;
    public int anInt1275;
    public int anInt1276;
    public int anIntArray1277[];
    public int anIntArray1278[];
    public int anIntArray1279[];
    public int anIntArray1280[];
    public Class4 aClass4Array1281[];
    public int anIntArray1282[];
    public int anIntArray1283[];
    public int anIntArray1284[];
    public int anInt1285;
    public static BigInteger aBigInteger1286 = new BigInteger("7162900525229798032761816791230527296329313291232324290237849263501208207972894053929065636522363163621000728841182238772712427862772219676577293600221789");
    public static int anInt1287;
    public int anIntArray1288[];
    public boolean aBoolean1289;
    public int anInt1290;
    public int anInt1291;
    public int anInt1292;
    public boolean aBoolean1293;
    public int anInt1294;
    public int anIntArray1295[];
    public static String aString1296 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\243$%^&*()-_=+[{]};:'@#~,<.>/?\\| ";
    public boolean aBoolean1297;
    public int anInt1298;
    public int anIntArray1299[];
    public int anIntArray1300[];
    public int anInt1301;
    public int anInt1302;
    public int anInt1303;
    public byte aByte1304;
    public static int anIntArray1305[];
    public Class31_Sub3_Sub1_Sub2 aClass31_Sub3_Sub1_Sub2Array1306[];
    public Class31_Sub3_Sub2 aClass31_Sub3_Sub2_1307;
    public int anInt1308;
    public int anInt1309;
    public int anInt1310;
    public int anInt1311;
    public int anInt1312;
    public int anInt1313;
    public static int anInt1314;
    public boolean aBoolean1315;
    public int anInt1316;
    public int anInt1317;
    public int anInt1318;
    public int anInt1319;
    public int anInt1320;
    public static int anInt1321;

    static 
    {
        anIntArray1062 = new int[99];
        int i = 0;
        for(int j = 0; j < 99; j++)
        {
            int l = j + 1;
            int i1 = (int)((double)l + 300D * Math.pow(2D, (double)l / 7D));
            i += i1;
            anIntArray1062[j] = i / 4;
        }

        anIntArray1305 = new int[32];
        i = 2;
        for(int k = 0; k < 32; k++)
        {
            anIntArray1305[k] = i - 1;
            i += i;
        }

    }
}
