home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / AnfyJava14 / data1.cab / Program_Files / Applet / wheelmenu / wheelmenu.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-19  |  34.5 KB  |  3,140 lines

  1. import java.applet.Applet;
  2. import java.awt.Color;
  3. import java.awt.Component;
  4. import java.awt.Container;
  5. import java.awt.Event;
  6. import java.awt.Frame;
  7. import java.awt.Graphics;
  8. import java.awt.Image;
  9. import java.awt.Insets;
  10. import java.awt.Label;
  11. import java.awt.LayoutManager;
  12. import java.awt.MediaTracker;
  13. import java.awt.Panel;
  14. import java.awt.Toolkit;
  15. import java.awt.image.DirectColorModel;
  16. import java.awt.image.ImageObserver;
  17. import java.awt.image.MemoryImageSource;
  18. import java.awt.image.PixelGrabber;
  19. import java.io.ByteArrayOutputStream;
  20. import java.io.DataInputStream;
  21. import java.io.IOException;
  22. import java.io.InputStream;
  23. import java.io.OutputStream;
  24. import java.net.MalformedURLException;
  25. import java.net.URL;
  26.  
  27. public class wheelmenu extends Applet implements Runnable, ImageObserver {
  28.    // $FF: renamed from: a int
  29.    int field_0;
  30.    // $FF: renamed from: b int
  31.    int field_1;
  32.    // $FF: renamed from: c int
  33.    int field_2;
  34.    // $FF: renamed from: d int
  35.    int field_3;
  36.    // $FF: renamed from: e int[]
  37.    int[] field_4;
  38.    // $FF: renamed from: f float
  39.    float field_5 = 2.0F;
  40.    // $FF: renamed from: g float
  41.    float field_6;
  42.    // $FF: renamed from: h float
  43.    float field_7 = 0.5F;
  44.    // $FF: renamed from: i int
  45.    int field_8;
  46.    // $FF: renamed from: j float
  47.    float field_9;
  48.    // $FF: renamed from: k java.awt.Frame
  49.    Frame field_10;
  50.    // $FF: renamed from: l boolean
  51.    boolean field_11 = false;
  52.    // $FF: renamed from: m java.lang.String
  53.    final String field_12 = method_59("m7\u001dg\u0019Xg\u000fr\\m)\u000br\\x\"\ff\\\u00040\u001a|RM)\u000br\u0016M1\f%\u001fC*D");
  54.    // $FF: renamed from: n float
  55.    float field_13;
  56.    // $FF: renamed from: o float
  57.    float field_14;
  58.    // $FF: renamed from: p float
  59.    float field_15;
  60.    // $FF: renamed from: q float
  61.    float field_16;
  62.    // $FF: renamed from: r float
  63.    float field_17;
  64.    // $FF: renamed from: s int
  65.    int field_18;
  66.    // $FF: renamed from: t boolean
  67.    boolean field_19 = false;
  68.    // $FF: renamed from: u float[]
  69.    float[] field_20 = new float[24];
  70.    // $FF: renamed from: v int
  71.    int field_21;
  72.    // $FF: renamed from: w float[]
  73.    float[] field_22 = new float[12];
  74.    // $FF: renamed from: x float[][]
  75.    float[][] field_23;
  76.    // $FF: renamed from: y int[][]
  77.    int[][] field_24;
  78.    // $FF: renamed from: z int[][]
  79.    int[][] field_25;
  80.    // $FF: renamed from: A int[][]
  81.    int[][] field_26;
  82.    // $FF: renamed from: B float[]
  83.    float[] field_27 = new float[12];
  84.    // $FF: renamed from: C int[]
  85.    int[] field_28;
  86.    // $FF: renamed from: D float
  87.    float field_29 = 32.05F;
  88.    // $FF: renamed from: E float
  89.    float field_30 = 75.0F;
  90.    // $FF: renamed from: F float
  91.    float field_31;
  92.    // $FF: renamed from: G float
  93.    float field_32;
  94.    // $FF: renamed from: H int[]
  95.    int[] field_33;
  96.    // $FF: renamed from: I int[]
  97.    int[] field_34 = new int[]{26, 41, 32, 35, 33, 31, 28, 37, 38, 12, 30, 39, 30, 41, 35, 36, 31, 36, 36, 34, 35, 36, 40, 51, 40, 40, 35, 27};
  98.    // $FF: renamed from: J int[]
  99.    int[] field_35 = new int[]{30, 25, 28, 27, 24, 22, 30, 26, 30, 18, 27, 20, 31, 26, 31, 25, 32, 29, 26, 26, 26, 26, 30, 42, 30, 30, 26};
  100.    // $FF: renamed from: K int[]
  101.    int[] field_36;
  102.    // $FF: renamed from: L int
  103.    int field_37;
  104.    // $FF: renamed from: M int
  105.    int field_38;
  106.    // $FF: renamed from: N int
  107.    int field_39;
  108.    // $FF: renamed from: O long
  109.    long field_40;
  110.    // $FF: renamed from: P int
  111.    int field_41;
  112.    // $FF: renamed from: Q int
  113.    int field_42;
  114.    // $FF: renamed from: R int
  115.    int field_43;
  116.    // $FF: renamed from: S int
  117.    int field_44;
  118.    // $FF: renamed from: T int
  119.    int field_45;
  120.    // $FF: renamed from: U int
  121.    int field_46;
  122.    // $FF: renamed from: V int
  123.    int field_47;
  124.    // $FF: renamed from: W int
  125.    int field_48;
  126.    // $FF: renamed from: X int
  127.    int field_49;
  128.    // $FF: renamed from: Y int
  129.    int field_50;
  130.    // $FF: renamed from: Z boolean
  131.    boolean field_51 = false;
  132.    // $FF: renamed from: ba boolean
  133.    boolean field_52 = false;
  134.    // $FF: renamed from: bb int
  135.    int field_53;
  136.    // $FF: renamed from: bc long
  137.    long field_54;
  138.    // $FF: renamed from: bd java.awt.Color
  139.    Color field_55;
  140.    // $FF: renamed from: be java.awt.Frame
  141.    Frame field_56;
  142.    // $FF: renamed from: bf int
  143.    int field_57;
  144.    // $FF: renamed from: bg java.awt.Graphics
  145.    private Graphics field_58;
  146.    // $FF: renamed from: bh java.awt.Image
  147.    private Image field_59;
  148.    // $FF: renamed from: bi java.awt.Graphics
  149.    private Graphics field_60;
  150.    // $FF: renamed from: bj java.lang.String
  151.    String field_61;
  152.    // $FF: renamed from: bk boolean
  153.    boolean field_62 = false;
  154.    // $FF: renamed from: bl int
  155.    int field_63;
  156.    // $FF: renamed from: bm int
  157.    int field_64;
  158.    // $FF: renamed from: bn int
  159.    int field_65;
  160.    // $FF: renamed from: bo boolean
  161.    boolean field_66 = false;
  162.    // $FF: renamed from: bp int
  163.    int field_67 = 1478;
  164.    // $FF: renamed from: bq int
  165.    int field_68 = 1476;
  166.    // $FF: renamed from: br float[][]
  167.    float[][] field_69;
  168.    // $FF: renamed from: bs float[]
  169.    float[] field_70;
  170.    // $FF: renamed from: bt float[][]
  171.    float[][] field_71;
  172.    // $FF: renamed from: bu float[][]
  173.    float[][] field_72;
  174.    // $FF: renamed from: bv float[][]
  175.    float[][] field_73;
  176.    // $FF: renamed from: bw java.net.URL
  177.    URL field_74;
  178.    // $FF: renamed from: bx int
  179.    int field_75;
  180.    // $FF: renamed from: by int
  181.    int field_76;
  182.    // $FF: renamed from: bz int
  183.    int field_77;
  184.    // $FF: renamed from: bA int
  185.    int field_78;
  186.    // $FF: renamed from: bB float[]
  187.    float[] field_79;
  188.    // $FF: renamed from: bC int[][]
  189.    int[][] field_80;
  190.    // $FF: renamed from: bD java.lang.String[][]
  191.    String[][] field_81;
  192.    // $FF: renamed from: bE int[]
  193.    int[] field_82;
  194.    // $FF: renamed from: bF int
  195.    int field_83;
  196.    // $FF: renamed from: bG float
  197.    float field_84;
  198.    // $FF: renamed from: bH boolean
  199.    boolean field_85 = false;
  200.    // $FF: renamed from: bI int
  201.    int field_86 = 8;
  202.    // $FF: renamed from: bJ int
  203.    int field_87 = 8;
  204.    // $FF: renamed from: bK int[][]
  205.    int[][] field_88;
  206.    // $FF: renamed from: bL int
  207.    int field_89;
  208.    // $FF: renamed from: bM int
  209.    int field_90;
  210.    // $FF: renamed from: bN int
  211.    int field_91;
  212.    // $FF: renamed from: bO int
  213.    int field_92;
  214.    // $FF: renamed from: bP int[]
  215.    int[] field_93;
  216.    // $FF: renamed from: bQ float[][]
  217.    float[][] field_94;
  218.    // $FF: renamed from: bR byte[]
  219.    byte[] field_95;
  220.    // $FF: renamed from: bS byte[][]
  221.    byte[][] field_96;
  222.    // $FF: renamed from: bT int[][]
  223.    int[][] field_97;
  224.    // $FF: renamed from: bU int[][]
  225.    int[][] field_98;
  226.    // $FF: renamed from: bV int[][]
  227.    int[][] field_99;
  228.    // $FF: renamed from: bW float[][]
  229.    float[][] field_100;
  230.    // $FF: renamed from: bX float[][]
  231.    float[][] field_101;
  232.    // $FF: renamed from: bY int[]
  233.    int[] field_102;
  234.    // $FF: renamed from: bZ int[]
  235.    int[] field_103;
  236.    // $FF: renamed from: ca int[]
  237.    int[] field_104;
  238.    // $FF: renamed from: cb float[][]
  239.    float[][] field_105;
  240.    // $FF: renamed from: cc float[][]
  241.    float[][] field_106;
  242.    // $FF: renamed from: cd float[][]
  243.    float[][] field_107;
  244.    // $FF: renamed from: ce int[][]
  245.    int[][] field_108;
  246.    // $FF: renamed from: cf int[][][]
  247.    int[][][] field_109;
  248.    // $FF: renamed from: cg float[][][]
  249.    float[][][] field_110;
  250.    // $FF: renamed from: ch java.awt.Graphics
  251.    private Graphics field_111;
  252.    // $FF: renamed from: ci java.awt.Image
  253.    private Image field_112;
  254.    // $FF: renamed from: cj int
  255.    int field_113;
  256.    // $FF: renamed from: ck int
  257.    int field_114 = 15;
  258.    // $FF: renamed from: cl boolean
  259.    boolean field_115 = false;
  260.    // $FF: renamed from: cm int
  261.    int field_116;
  262.    // $FF: renamed from: cn java.awt.Image
  263.    private Image field_117;
  264.    // $FF: renamed from: co int
  265.    int field_118;
  266.    // $FF: renamed from: cp int
  267.    int field_119;
  268.    // $FF: renamed from: cq int[][]
  269.    int[][] field_120;
  270.    // $FF: renamed from: cr float
  271.    float field_121 = ((float)Math.PI / 180F);
  272.    // $FF: renamed from: cs int[]
  273.    int[] field_122;
  274.    // $FF: renamed from: ct float[]
  275.    float[] field_123;
  276.    // $FF: renamed from: cu float
  277.    float field_124 = 12.5F;
  278.    // $FF: renamed from: cv float
  279.    float field_125;
  280.    // $FF: renamed from: cw float
  281.    float field_126;
  282.    // $FF: renamed from: cx float
  283.    float field_127 = 75.0F;
  284.    // $FF: renamed from: cy int
  285.    int field_128;
  286.    // $FF: renamed from: cz anfy
  287.    anfy field_129;
  288.    // $FF: renamed from: cA java.awt.image.MemoryImageSource
  289.    MemoryImageSource field_130;
  290.    // $FF: renamed from: cB int
  291.    int field_131;
  292.    // $FF: renamed from: cC int
  293.    int field_132;
  294.    // $FF: renamed from: cD boolean
  295.    boolean field_133 = false;
  296.    // $FF: renamed from: cE int[]
  297.    int[] field_134 = new int[6];
  298.    // $FF: renamed from: cF int[]
  299.    int[] field_135 = new int[6];
  300.    // $FF: renamed from: cG int[]
  301.    int[] field_136 = new int[6];
  302.    // $FF: renamed from: cH float[]
  303.    float[] field_137 = new float[12];
  304.    // $FF: renamed from: cI float[]
  305.    float[] field_138 = new float[12];
  306.    // $FF: renamed from: cJ java.lang.String
  307.    String field_139;
  308.    // $FF: renamed from: cK java.lang.String
  309.    String field_140;
  310.    // $FF: renamed from: cL int[]
  311.    int[] field_141;
  312.    // $FF: renamed from: cM int
  313.    int field_142 = 25;
  314.    // $FF: renamed from: cN java.lang.String
  315.    String field_143 = method_59("[/\bn\u0010\f.\u0003b\bE&\u0001b\u0006I#");
  316.    // $FF: renamed from: cO int
  317.    int field_144;
  318.    // $FF: renamed from: cP int
  319.    int field_145;
  320.    // $FF: renamed from: cQ long
  321.    long field_146;
  322.    // $FF: renamed from: cR int[]
  323.    int[] field_147;
  324.    // $FF: renamed from: cS int
  325.    int field_148;
  326.    // $FF: renamed from: cT int[]
  327.    int[] field_149 = new int[65536];
  328.    // $FF: renamed from: cU int[]
  329.    int[] field_150 = new int[65536];
  330.    // $FF: renamed from: cV int[]
  331.    int[] field_151 = new int[65536];
  332.    // $FF: renamed from: cW int
  333.    int field_152;
  334.    // $FF: renamed from: cX java.awt.Toolkit
  335.    Toolkit field_153;
  336.    // $FF: renamed from: cY java.lang.Thread
  337.    Thread field_154;
  338.    // $FF: renamed from: cZ boolean
  339.    boolean field_155 = false;
  340.    // $FF: renamed from: da int
  341.    int field_156;
  342.    // $FF: renamed from: db java.net.URL[][]
  343.    URL[][] field_157;
  344.    // $FF: renamed from: dc int[]
  345.    int[] field_158;
  346.    // $FF: renamed from: dd int[]
  347.    int[] field_159;
  348.    // $FF: renamed from: de int[]
  349.    int[] field_160;
  350.    // $FF: renamed from: df int
  351.    int field_161;
  352.    // $FF: renamed from: dg Lware
  353.    Lware field_162;
  354.    // $FF: renamed from: dh int
  355.    int field_163;
  356.    // $FF: renamed from: di int
  357.    int field_164;
  358.    // $FF: renamed from: dj int
  359.    int field_165;
  360.    // $FF: renamed from: dk int
  361.    int field_166;
  362.    // $FF: renamed from: dl int
  363.    int field_167;
  364.    // $FF: renamed from: dm int
  365.    int field_168;
  366.    // $FF: renamed from: dn int
  367.    int field_169;
  368.    // $FF: renamed from: do int
  369.    int field_170;
  370.    // $FF: renamed from: dp int
  371.    int field_171;
  372.    // $FF: renamed from: dq int
  373.    int field_172;
  374.    // $FF: renamed from: dr int
  375.    int field_173;
  376.    // $FF: renamed from: ds int
  377.    int field_174;
  378.    // $FF: renamed from: dt int
  379.    int field_175;
  380.    // $FF: renamed from: du int
  381.    int field_176;
  382.    // $FF: renamed from: dv float
  383.    float field_177;
  384.    // $FF: renamed from: dw int
  385.    int field_178;
  386.    // $FF: renamed from: dx int
  387.    int field_179;
  388.  
  389.    // $FF: renamed from: a (float, float, float, float, float, float, float, float) int
  390.    public int method_0(float var1, float var2, float var3, float var4, float var5, float var6, float var7, float var8) {
  391.       this.field_73 = new float[1][];
  392.       this.field_69 = new float[1][];
  393.       this.field_70 = new float[1];
  394.       this.field_71 = new float[1][];
  395.       this.field_72 = new float[1][];
  396.       ++this.field_90;
  397.       this.field_73[0] = new float[3];
  398.       this.field_69[0] = new float[3];
  399.       this.field_71[0] = new float[12];
  400.       this.field_72[0] = new float[12];
  401.       this.field_73[0][0] = var1;
  402.       this.field_73[0][1] = var2;
  403.       this.field_73[0][2] = var3;
  404.       this.field_69[0][0] = var4;
  405.       this.field_69[0][1] = var5;
  406.       this.field_69[0][2] = var6;
  407.       this.field_70[0] = var7;
  408.       return this.field_90 - 1;
  409.    }
  410.  
  411.    // $FF: renamed from: a (int[], int, int) int
  412.    public int method_1(int[] var1, int var2, int var3) {
  413.       this.field_23 = new float[1][];
  414.       this.field_25 = new int[1][];
  415.       this.field_26 = new int[1][];
  416.       this.field_24 = new int[1][];
  417.       ++this.field_89;
  418.       this.field_23[0] = new float[6];
  419.       this.field_25[0] = new int[2];
  420.       this.field_24[0] = new int[2];
  421.       this.field_25[0][0] = -1;
  422.       this.field_25[0][1] = -1;
  423.       this.field_24[0][0] = var2;
  424.       this.field_24[0][1] = var3;
  425.       this.field_26[0] = var1;
  426.       this.field_0 = 0;
  427.       return this.field_89 - 1;
  428.    }
  429.  
  430.    // $FF: renamed from: a (int) int
  431.    public int method_2(int var1) {
  432.       int var2 = this.field_103[var1];
  433.       int var3 = this.field_102[var1];
  434.       int var4 = this.method_3(var2, var3);
  435.       System.arraycopy(this.field_107[var1], 0, this.field_107[var4], 0, var2 * 4);
  436.       System.arraycopy(this.field_105[var1], 0, this.field_105[var4], 0, var2 * 4);
  437.       System.arraycopy(this.field_97[var1], 0, this.field_97[var4], 0, var3 * 4);
  438.       this.method_7(var4);
  439.       return var4;
  440.    }
  441.  
  442.    // $FF: renamed from: a (int, int) int
  443.    public int method_3(int var1, int var2) {
  444.       if (this.field_91 == 0) {
  445.          this.field_107 = new float[1][];
  446.          this.field_105 = new float[1][];
  447.          this.field_97 = new int[1][];
  448.          this.field_103 = new int[1];
  449.          this.field_102 = new int[1];
  450.          this.field_106 = new float[1][];
  451.          this.field_98 = new int[1][];
  452.          this.field_108 = new int[1][];
  453.          this.field_99 = new int[1][];
  454.          this.field_100 = new float[1][];
  455.          this.field_101 = new float[1][];
  456.          this.field_94 = new float[1][];
  457.          this.field_96 = new byte[1][];
  458.          this.field_95 = new byte[1];
  459.          this.field_104 = new int[1];
  460.          this.field_93 = new int[1];
  461.          ++this.field_91;
  462.       } else {
  463.          float[][] var3 = this.field_107;
  464.          this.field_107 = new float[this.field_91 + 1][];
  465.          System.arraycopy(var3, 0, this.field_107, 0, this.field_91);
  466.          var3 = this.field_105;
  467.          this.field_105 = new float[this.field_91 + 1][];
  468.          System.arraycopy(var3, 0, this.field_105, 0, this.field_91);
  469.          var3 = this.field_106;
  470.          this.field_106 = new float[this.field_91 + 1][];
  471.          System.arraycopy(var3, 0, this.field_106, 0, this.field_91);
  472.          int[][] var4 = this.field_97;
  473.          this.field_97 = new int[this.field_91 + 1][];
  474.          System.arraycopy(var4, 0, this.field_97, 0, this.field_91);
  475.          int[] var5 = this.field_103;
  476.          this.field_103 = new int[this.field_91 + 1];
  477.          System.arraycopy(var5, 0, this.field_103, 0, this.field_91);
  478.          var5 = this.field_102;
  479.          this.field_102 = new int[this.field_91 + 1];
  480.          System.arraycopy(var5, 0, this.field_102, 0, this.field_91);
  481.          var4 = this.field_98;
  482.          this.field_98 = new int[this.field_91 + 1][];
  483.          System.arraycopy(var4, 0, this.field_98, 0, this.field_91);
  484.          var4 = this.field_99;
  485.          this.field_99 = new int[this.field_91 + 1][];
  486.          System.arraycopy(var4, 0, this.field_99, 0, this.field_91);
  487.          var4 = this.field_108;
  488.          this.field_108 = new int[this.field_91 + 1][];
  489.          System.arraycopy(var4, 0, this.field_108, 0, this.field_91);
  490.          var3 = this.field_100;
  491.          this.field_100 = new float[this.field_91 + 1][];
  492.          System.arraycopy(var3, 0, this.field_100, 0, this.field_91);
  493.          var3 = this.field_101;
  494.          this.field_101 = new float[this.field_91 + 1][];
  495.          System.arraycopy(var3, 0, this.field_101, 0, this.field_91);
  496.          var3 = this.field_94;
  497.          this.field_94 = new float[this.field_91 + 1][];
  498.          System.arraycopy(var3, 0, this.field_94, 0, this.field_91);
  499.          byte[][] var6 = this.field_96;
  500.          this.field_96 = new byte[this.field_91 + 1][];
  501.          System.arraycopy(var6, 0, this.field_96, 0, this.field_91);
  502.          byte[] var7 = this.field_95;
  503.          this.field_95 = new byte[this.field_91 + 1];
  504.          System.arraycopy(var7, 0, this.field_95, 0, this.field_91);
  505.          var5 = this.field_104;
  506.          this.field_104 = new int[this.field_91 + 1];
  507.          System.arraycopy(var5, 0, this.field_104, 0, this.field_91);
  508.          var5 = this.field_93;
  509.          this.field_93 = new int[this.field_91 + 1];
  510.          System.arraycopy(var5, 0, this.field_93, 0, this.field_91);
  511.          ++this.field_91;
  512.       }
  513.  
  514.       this.field_107[this.field_91 - 1] = new float[var1 * 4];
  515.       this.field_108[this.field_91 - 1] = new int[var1 * 4];
  516.       this.field_105[this.field_91 - 1] = new float[var1 * 4];
  517.       this.field_106[this.field_91 - 1] = new float[var1 * 4];
  518.       this.field_98[this.field_91 - 1] = new int[var1];
  519.       this.field_99[this.field_91 - 1] = new int[var1 * 2];
  520.       this.field_97[this.field_91 - 1] = new int[var2 * 4];
  521.       this.field_103[this.field_91 - 1] = var1;
  522.       this.field_102[this.field_91 - 1] = var2;
  523.       this.field_100[this.field_91 - 1] = new float[12];
  524.       this.field_101[this.field_91 - 1] = new float[12];
  525.       this.field_94[this.field_91 - 1] = new float[6];
  526.       this.field_96[this.field_91 - 1] = new byte[var1];
  527.       this.field_95[this.field_91 - 1] = 1;
  528.       this.field_104[this.field_91 - 1] = -1;
  529.       this.field_93[this.field_91 - 1] = 1;
  530.       return this.field_91 - 1;
  531.    }
  532.  
  533.    // $FF: renamed from: a () void
  534.    public void method_4() {
  535.       if (this.field_166 > 0 & this.field_166 < this.field_131 / 10) {
  536.          if (this.field_3 > 0) {
  537.             this.field_10.setCursor(13);
  538.             this.field_143 = method_59("N&\u000e`\\A\"\u0003~");
  539.             ((Applet)this).showStatus(this.field_143);
  540.          }
  541.       } else if (this.field_80[this.field_4[this.field_3]][this.field_1] != -1) {
  542.          this.field_10.setCursor(12);
  543.          this.field_143 = method_59("_2\u000f+\u0011I)\u0018");
  544.          ((Applet)this).showStatus(this.field_143);
  545.       } else if (this.field_157[this.field_4[this.field_3]][this.field_1] != null) {
  546.          this.field_10.setCursor(12);
  547.          this.field_143 = this.field_157[this.field_4[this.field_3]][this.field_1].toString();
  548.          ((Applet)this).showStatus(this.field_143);
  549.       } else {
  550.          this.field_10.setCursor(0);
  551.          this.field_143 = method_59("B(\u0019c\u0015B Mx\u0019@\"\u000e\u007f\u0019H");
  552.          ((Applet)this).showStatus(this.field_143);
  553.       }
  554.  
  555.       for(int var1 = 0; var1 < 8; ++var1) {
  556.          this.method_28(var1);
  557.       }
  558.  
  559.       int var2 = 0;
  560.       this.field_82[this.field_3] = 0;
  561.  
  562.       for(int var3 = this.field_3; var3 > -1; --var3) {
  563.          var2 = (int)((float)var2 - this.field_79[this.field_4[var3]] / 2.0F);
  564.          if (var3 != 0) {
  565.             var2 = (int)((float)var2 - this.field_79[this.field_4[var3 - 1]] / 2.0F);
  566.             this.field_82[var3 - 1] = var2;
  567.          }
  568.       }
  569.  
  570.       if (this.field_116 != this.field_3) {
  571.          if (this.field_116 < this.field_3) {
  572.             this.field_113 = (int)(this.field_79[this.field_4[this.field_3]] / 2.0F + this.field_79[this.field_4[this.field_3 - 1]] / 2.0F);
  573.          } else {
  574.             this.field_113 = (int)(-(this.field_79[this.field_4[this.field_3]] / 2.0F + this.field_79[this.field_4[this.field_3 + 1]] / 2.0F));
  575.          }
  576.  
  577.          this.field_75 = this.field_113;
  578.          this.field_116 = this.field_3;
  579.       }
  580.  
  581.       if (this.field_113 != 0) {
  582.          if (this.field_6 < 0.0F) {
  583.             this.field_17 -= this.field_7;
  584.          } else {
  585.             this.field_17 += this.field_7;
  586.          }
  587.       }
  588.  
  589.       for(int var4 = 0; var4 <= this.field_3; ++var4) {
  590.          if (this.field_113 > 0 & var4 == this.field_3) {
  591.             this.method_54(this.field_4[var4], this.field_82[var4] + this.field_113, this.field_113 * 2);
  592.          } else {
  593.             if (this.field_113 < 0 & var4 == this.field_3) {
  594.                int var5 = (int)(this.field_79[this.field_4[this.field_3]] / 2.0F + this.field_79[this.field_4[this.field_3 + 1]] / 2.0F);
  595.                this.method_54(this.field_4[var4 + 1], this.field_82[var4] + var5 + this.field_113, -this.field_75 + this.field_113);
  596.             }
  597.  
  598.             this.method_54(this.field_4[var4], this.field_82[var4] + this.field_113, 0);
  599.          }
  600.       }
  601.  
  602.       if (this.field_113 < 0) {
  603.          this.field_113 += this.field_114;
  604.          if (this.field_113 > 0) {
  605.             this.field_113 = 0;
  606.          }
  607.       }
  608.  
  609.       if (this.field_113 > 0) {
  610.          this.field_113 -= this.field_114;
  611.          if (this.field_113 < 0) {
  612.             this.field_113 = 0;
  613.          }
  614.       }
  615.  
  616.       this.field_1 = this.method_26();
  617.       this.field_2 = this.field_4[this.field_3];
  618.       this.method_41(this.field_137, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F);
  619.       this.method_48(0, this.field_137);
  620.       this.field_17 += this.field_6;
  621.       this.field_14 = 90.0F * this.field_121 + this.field_5 * this.field_9;
  622.       if (this.field_14 < this.field_16) {
  623.          this.field_14 = this.field_16;
  624.       }
  625.  
  626.       if (this.field_14 > this.field_15) {
  627.          this.field_14 = this.field_15;
  628.       }
  629.  
  630.    }
  631.  
  632.    // $FF: renamed from: b () void
  633.    public void method_5() {
  634.       this.field_82 = new int[this.field_87];
  635.       this.field_14 = 0.0F;
  636.       this.field_17 = 0.0F;
  637.       this.field_177 = -185.0F;
  638.       this.field_14 = 90.0F * this.field_121;
  639.       this.field_15 = 120.0F * this.field_121;
  640.       this.field_16 = 60.0F * this.field_121;
  641.       this.field_4 = new int[8];
  642.       this.field_4[0] = 0;
  643.       this.field_3 = 0;
  644.       this.mouseMove((Event)null, 0, 0);
  645.    }
  646.  
  647.    // $FF: renamed from: c () void
  648.    private final void method_6() {
  649.       while(true) {
  650.          ((Applet)this).showStatus(method_59("h(\u0003,\b\f5\bf\u0013Z\"M|\u000b[i\fe\u001aU-\f}\u001d\u0002$\u0002f\\O5\bo\u0015X4Mg\u0015B\"Mb\u0012\f\u000f9F0\r"));
  651.  
  652.          try {
  653.             Thread.sleep(500L);
  654.          } catch (InterruptedException var1) {
  655.          }
  656.       }
  657.    }
  658.  
  659.    // $FF: renamed from: b (int) void
  660.    public void method_7(int var1) {
  661.       int var8 = this.field_103[var1];
  662.       float var2 = this.field_107[var1][0];
  663.       float var3 = this.field_107[var1][1];
  664.       float var4 = this.field_107[var1][2];
  665.       float var5 = var2;
  666.       float var6 = var3;
  667.       float var7 = var4;
  668.       int var9 = 4;
  669.  
  670.       for(int var10 = 1; var10 < var8; ++var10) {
  671.          float var11 = this.field_107[var1][var9++];
  672.          float var12 = this.field_107[var1][var9++];
  673.          float var13 = this.field_107[var1][var9++];
  674.          ++var9;
  675.          if (var11 < var2) {
  676.             var2 = var11;
  677.          }
  678.  
  679.          if (var11 > var5) {
  680.             var5 = var11;
  681.          }
  682.  
  683.          if (var12 < var3) {
  684.             var3 = var12;
  685.          }
  686.  
  687.          if (var12 > var6) {
  688.             var6 = var12;
  689.          }
  690.  
  691.          if (var13 < var4) {
  692.             var4 = var13;
  693.          }
  694.  
  695.          if (var13 > var7) {
  696.             var7 = var13;
  697.          }
  698.       }
  699.  
  700.       this.field_94[var1][0] = var2;
  701.       this.field_94[var1][1] = var3;
  702.       this.field_94[var1][2] = var4;
  703.       this.field_94[var1][3] = var5;
  704.       this.field_94[var1][4] = var6;
  705.       this.field_94[var1][5] = var7;
  706.       float var28 = (var2 + var5) / 2.0F;
  707.       float var29 = (var3 + var6) / 2.0F;
  708.       float var30 = (var4 + var7) / 2.0F;
  709.       this.field_94[var1][0] = var2 - var28;
  710.       this.field_94[var1][1] = var3 - var29;
  711.       this.field_94[var1][2] = var4 - var30;
  712.       this.field_94[var1][3] = var5 - var28;
  713.       this.field_94[var1][4] = var6 - var29;
  714.       this.field_94[var1][5] = var7 - var30;
  715.       var9 = 0;
  716.  
  717.       for(int var14 = 0; var14 < var8; ++var14) {
  718.          float[] var33 = this.field_107[var1];
  719.          var33[var9] -= var28;
  720.          var33 = this.field_107[var1];
  721.          var33[var9 + 1] -= var29;
  722.          var33 = this.field_107[var1];
  723.          var33[var9 + 2] -= var30;
  724.          var9 += 4;
  725.       }
  726.  
  727.       float var15 = (var5 - var2) / 2.0F;
  728.       float var16 = (var6 - var3) / 2.0F;
  729.       var9 = 0;
  730.       int var17 = 0;
  731.  
  732.       for(int var18 = 0; var18 < var8; ++var18) {
  733.          float var19 = this.field_107[var1][var9];
  734.          float var20 = this.field_107[var1][var9 + 1];
  735.          var9 += 4;
  736.          float var21 = var19 * 128.0F / var15 + 128.0F;
  737.          float var22 = var20 * 128.0F / var16 + 128.0F;
  738.          this.field_99[var1][var17] = (int)(var21 * 65536.0F);
  739.          this.field_99[var1][var17 + 1] = (int)(var22 * 65536.0F);
  740.          var17 += 2;
  741.       }
  742.  
  743.    }
  744.  
  745.    // $FF: renamed from: c (int) void
  746.    public void method_8(int var1) {
  747.       float[] var6 = this.field_106[var1];
  748.       int[] var7 = this.field_98[var1];
  749.       int var8 = this.field_103[var1];
  750.       float[] var9 = this.field_70;
  751.       int var10 = this.field_90;
  752.       boolean var3 = false;
  753.  
  754.       for(int var2 = 0; var2 < var8; ++var2) {
  755.          var7[var2] = 131072;
  756.       }
  757.  
  758.       for(int var25 = 0; var25 < var10; ++var25) {
  759.          double var11 = (double)var9[var25];
  760.          if (var11 != (double)0.0F) {
  761.             float[] var4 = this.field_73[var25];
  762.             float[] var5 = this.field_69[var25];
  763.             double var13 = (double)(var4[0] - var5[0]);
  764.             double var15 = (double)(var4[1] - var5[1]);
  765.             double var17 = (double)(var4[2] - var5[2]);
  766.             double var19 = Math.sqrt(var13 * var13 + var15 * var15 + var17 * var17);
  767.             var13 /= var19;
  768.             var15 /= var19;
  769.             var17 /= var19;
  770.  
  771.             for(int var23 = 0; var23 < var8; ++var23) {
  772.                double var21 = (double)var6[var23 << 2] * var13 + (double)var6[(var23 << 2) + 1] * var15 + (double)var6[(var23 << 2) + 2] * var17;
  773.                if (var21 > (double)0.0F) {
  774.                   var7[var23] += (int)(var11 * var21 * (double)256.0F * (double)65536.0F);
  775.                }
  776.             }
  777.          }
  778.       }
  779.  
  780.       for(int var24 = 0; var24 < var8; ++var24) {
  781.          if (var7[var24] > 16580607) {
  782.             var7[var24] = 16580607;
  783.          }
  784.       }
  785.  
  786.    }
  787.  
  788.    // $FF: renamed from: d (int) void
  789.    public void method_9(int var1) {
  790.       float[] var2 = this.field_107[var1];
  791.       int[] var3 = this.field_97[var1];
  792.       float[] var4 = this.field_105[var1];
  793.       int var5 = this.field_103[var1];
  794.       int var6 = this.field_102[var1];
  795.       int[] var7 = new int[var5];
  796.       int var8 = 0;
  797.  
  798.       for(int var9 = 0; var9 < var5; ++var9) {
  799.          var4[var8++] = 0.0F;
  800.          var4[var8++] = 0.0F;
  801.          var4[var8++] = 0.0F;
  802.          var4[var8++] = 0.0F;
  803.          var7[var9] = 0;
  804.       }
  805.  
  806.       for(int var10 = 0; var10 < var6; ++var10) {
  807.          int var11 = var3[var10 << 2];
  808.          int var12 = var3[(var10 << 2) + 1];
  809.          int var13 = var3[(var10 << 2) + 2];
  810.          float var14 = var2[var12 << 2] - var2[var11 << 2];
  811.          float var15 = var2[(var12 << 2) + 1] - var2[(var11 << 2) + 1];
  812.          float var16 = var2[(var12 << 2) + 2] - var2[(var11 << 2) + 2];
  813.          float var17 = var2[var13 << 2] - var2[var12 << 2];
  814.          float var18 = var2[(var13 << 2) + 1] - var2[(var12 << 2) + 1];
  815.          float var19 = var2[(var13 << 2) + 2] - var2[(var12 << 2) + 2];
  816.          float var20 = var15 * var19 - var16 * var18;
  817.          float var21 = var16 * var17 - var14 * var19;
  818.          float var22 = var14 * var18 - var15 * var17;
  819.          float var23 = (float)Math.sqrt((double)(var20 * var20 + var21 * var21 + var22 * var22));
  820.          var20 /= var23;
  821.          var21 /= var23;
  822.          var22 /= var23;
  823.          var4[var11 << 2] += var20;
  824.          var4[(var11 << 2) + 1] += var21;
  825.          var4[(var11 << 2) + 2] += var22;
  826.          int var10002 = var7[var11]++;
  827.          var4[var12 << 2] += var20;
  828.          var4[(var12 << 2) + 1] += var21;
  829.          var4[(var12 << 2) + 2] += var22;
  830.          var10002 = var7[var12]++;
  831.          var4[var13 << 2] += var20;
  832.          var4[(var13 << 2) + 1] += var21;
  833.          var4[(var13 << 2) + 2] += var22;
  834.          var10002 = var7[var13]++;
  835.       }
  836.  
  837.       for(int var27 = 0; var27 < var5; ++var27) {
  838.          float var28 = var4[var27 << 2];
  839.          float var31 = var4[(var27 << 2) + 1];
  840.          float var34 = var4[(var27 << 2) + 2];
  841.          int var37 = var7[var27];
  842.          var28 /= (float)var37;
  843.          var31 /= (float)var37;
  844.          var34 /= (float)var37;
  845.          float var38 = (float)Math.sqrt((double)(var28 * var28 + var31 * var31 + var34 * var34));
  846.          var28 /= var38;
  847.          var31 /= var38;
  848.          var34 /= var38;
  849.          var4[var27 << 2] = var28;
  850.          var4[(var27 << 2) + 1] = var31;
  851.          var4[(var27 << 2) + 2] = var34;
  852.       }
  853.  
  854.    }
  855.  
  856.    // $FF: renamed from: d () boolean
  857.    public synchronized boolean method_10() {
  858.       ((Component)this).prepareImage(this.field_117, this);
  859.       if (!this.field_66) {
  860.          return false;
  861.       } else {
  862.          for(int var1 = 0; var1 < 3; ++var1) {
  863.             this.notifyAll();
  864.             Thread.yield();
  865.  
  866.             try {
  867.                Thread.sleep(100L);
  868.             } catch (InterruptedException var2) {
  869.             }
  870.          }
  871.  
  872.          return this.field_115;
  873.       }
  874.    }
  875.  
  876.    // $FF: renamed from: e () void
  877.    public void method_11() {
  878.       for(int var1 = 0; var1 < this.field_91; ++var1) {
  879.          this.method_13(this.field_101[var1], this.field_27);
  880.       }
  881.  
  882.       for(int var2 = 0; var2 < this.field_90; ++var2) {
  883.          this.method_13(this.field_72[var2], this.field_27);
  884.       }
  885.  
  886.    }
  887.  
  888.    // $FF: renamed from: f () void
  889.    public void method_12() {
  890.       for(int var1 = 0; var1 < this.field_90; ++var1) {
  891.          System.arraycopy(this.field_71[var1], 0, this.field_72[var1], 0, 12);
  892.       }
  893.  
  894.    }
  895.  
  896.    // $FF: renamed from: a (float[], float[]) void
  897.    public void method_13(float[] var1, float[] var2) {
  898.       float var3 = var1[0] * var2[0] + var1[1] * var2[3] + var1[2] * var2[6];
  899.       float var4 = var1[0] * var2[1] + var1[1] * var2[4] + var1[2] * var2[7];
  900.       float var5 = var1[0] * var2[2] + var1[1] * var2[5] + var1[2] * var2[8];
  901.       float var6 = var1[3] * var2[0] + var1[4] * var2[3] + var1[5] * var2[6];
  902.       float var7 = var1[3] * var2[1] + var1[4] * var2[4] + var1[5] * var2[7];
  903.       float var8 = var1[3] * var2[2] + var1[4] * var2[5] + var1[5] * var2[8];
  904.       float var9 = var1[6] * var2[0] + var1[7] * var2[3] + var1[8] * var2[6];
  905.       float var10 = var1[6] * var2[1] + var1[7] * var2[4] + var1[8] * var2[7];
  906.       float var11 = var1[6] * var2[2] + var1[7] * var2[5] + var1[8] * var2[8];
  907.       float var12 = var1[9] * var2[0] + var1[10] * var2[3] + var1[11] * var2[6] + var2[9];
  908.       float var13 = var1[9] * var2[1] + var1[10] * var2[4] + var1[11] * var2[7] + var2[10];
  909.       float var14 = var1[9] * var2[2] + var1[10] * var2[5] + var1[11] * var2[8] + var2[11];
  910.       var1[0] = var3;
  911.       var1[1] = var4;
  912.       var1[2] = var5;
  913.       var1[3] = var6;
  914.       var1[4] = var7;
  915.       var1[5] = var8;
  916.       var1[6] = var9;
  917.       var1[7] = var10;
  918.       var1[8] = var11;
  919.       var1[9] = var12;
  920.       var1[10] = var13;
  921.       var1[11] = var14;
  922.    }
  923.  
  924.    // $FF: renamed from: g () void
  925.    public void method_14() {
  926.       for(int var1 = 0; var1 < this.field_91; ++var1) {
  927.          int var2 = var1;
  928.          System.arraycopy(this.field_100[var1], 0, this.field_101[var1], 0, 12);
  929.  
  930.          while(this.field_104[var2] != -1) {
  931.             this.method_13(this.field_101[var1], this.field_100[this.field_104[var2]]);
  932.             var2 = this.field_104[var2];
  933.          }
  934.       }
  935.  
  936.    }
  937.  
  938.    // $FF: renamed from: a (java.lang.String, int) int
  939.    public int method_15(String var1, int var2) {
  940.       if (var1 == null) {
  941.          return var2;
  942.       } else if (var1.length() < 1) {
  943.          return var2;
  944.       } else {
  945.          int var3;
  946.          try {
  947.             var3 = Integer.parseInt(var1);
  948.          } catch (Exception var4) {
  949.             var3 = var2;
  950.          }
  951.  
  952.          return var3;
  953.       }
  954.    }
  955.  
  956.    // $FF: renamed from: h () void
  957.    public void method_16() {
  958.       for(int var1 = 0; var1 < 8; ++var1) {
  959.          for(int var2 = 0; var2 < 8; ++var2) {
  960.             String var3 = ((Applet)this).getParameter(method_59("a\"\u0003~(I?\u0019") + var1 + var2);
  961.             if (var3 != null) {
  962.                this.field_88[var1][var2] = var3.length();
  963.                this.field_110[var1][var2] = new float[this.field_88[var1][var2] * 4];
  964.                this.field_109[var1][var2] = new int[this.field_88[var1][var2]];
  965.                this.method_38(var1, var2, var3.toUpperCase());
  966.                String var5 = ((Applet)this).getParameter(method_59("a\"\u0003~0E)\u0006") + var1 + var2);
  967.                if (var5 != null) {
  968.                   this.field_80[var1][var2] = Integer.valueOf(var5);
  969.                }
  970.  
  971.                String var4 = ((Applet)this).getParameter(method_59("a\"\u0003~)^+") + var1 + var2);
  972.                if (var4 != null) {
  973.                   try {
  974.                      this.field_157[var1][var2] = new URL(((Applet)this).getCodeBase(), var4);
  975.                   } catch (Exception var7) {
  976.                   }
  977.                }
  978.  
  979.                String var6 = ((Applet)this).getParameter(method_59("a\"\u0003~(M5\nn\b") + var1 + var2);
  980.                if (var6 != null) {
  981.                   this.field_81[var1][var2] = new String(var6);
  982.                }
  983.             }
  984.          }
  985.       }
  986.  
  987.       for(int var8 = 0; var8 < this.field_87; ++var8) {
  988.          this.field_123[var8] = (float)((double)this.field_79[var8] / (double)this.field_127);
  989.          this.field_122[var8] = this.method_2(27);
  990.          this.field_28[var8] = this.method_2(0);
  991.       }
  992.  
  993.    }
  994.  
  995.    // $FF: renamed from: i () void
  996.    public void method_17() {
  997.       this.field_31 = this.field_30 / 2.0F;
  998.       this.field_32 = (float)Math.sqrt((double)(this.field_31 * this.field_31 / 2.0F));
  999.       this.field_125 = this.field_124 / 2.0F;
  1000.       this.field_126 = (float)Math.sqrt((double)(this.field_125 * this.field_125 / 2.0F));
  1001.       this.field_110 = new float[this.field_87][][];
  1002.       this.field_109 = new int[this.field_87][][];
  1003.       this.field_88 = new int[this.field_87][];
  1004.       this.field_157 = new URL[this.field_87][];
  1005.       this.field_80 = new int[this.field_87][];
  1006.       this.field_81 = new String[this.field_87][];
  1007.       this.field_79 = new float[this.field_87];
  1008.       this.field_123 = new float[this.field_87];
  1009.       this.field_122 = new int[this.field_87];
  1010.       this.field_28 = new int[this.field_87];
  1011.  
  1012.       for(int var1 = 0; var1 < this.field_87; ++var1) {
  1013.          this.field_110[var1] = new float[this.field_86][];
  1014.          this.field_109[var1] = new int[this.field_86][];
  1015.          this.field_88[var1] = new int[this.field_86];
  1016.          this.field_157[var1] = new URL[this.field_86];
  1017.          this.field_80[var1] = new int[this.field_86];
  1018.          this.field_81[var1] = new String[this.field_86];
  1019.  
  1020.          for(int var2 = 0; var2 < this.field_86; ++var2) {
  1021.             this.field_80[var1][var2] = -1;
  1022.          }
  1023.       }
  1024.  
  1025.       this.method_16();
  1026.    }
  1027.  
  1028.    // $FF: renamed from: j () void
  1029.    void method_18() {
  1030.       int var1 = this.field_1;
  1031.       int var2 = this.field_2;
  1032.       if (this.field_110[var2][var1] != null) {
  1033.          for(int var3 = 0; var3 < this.field_88[var2][var1]; ++var3) {
  1034.             int var4 = this.field_109[var2][var1][var3];
  1035.             if (var4 != -1) {
  1036.                int var5 = 3;
  1037.                int[] var6 = this.field_97[var4];
  1038.  
  1039.                for(int var7 = 0; var7 < this.field_102[var4]; ++var7) {
  1040.                   if (var6[var5] == 2) {
  1041.                      var6[var5] = 1;
  1042.                   }
  1043.  
  1044.                   var5 += 4;
  1045.                }
  1046.             }
  1047.          }
  1048.       }
  1049.  
  1050.    }
  1051.  
  1052.    public void destroy() {
  1053.       if (this.field_117 != null) {
  1054.          this.field_117.flush();
  1055.       }
  1056.  
  1057.       this.field_117 = null;
  1058.       if (this.field_112 != null) {
  1059.          this.field_112.flush();
  1060.       }
  1061.  
  1062.       this.field_112 = null;
  1063.       if (this.field_111 != null) {
  1064.          this.field_111.dispose();
  1065.       }
  1066.  
  1067.       this.field_111 = null;
  1068.       System.gc();
  1069.    }
  1070.  
  1071.    // $FF: renamed from: a (java.awt.Graphics) void
  1072.    public final void method_19(Graphics var1) {
  1073.       this.field_111.drawImage(this.field_59, 0, 0, this);
  1074.       this.field_111.setColor(this.field_55);
  1075.       this.field_111.drawString(this.field_143, 0, this.field_144);
  1076.       if (this.field_117 != null) {
  1077.          this.method_35();
  1078.       }
  1079.  
  1080.       var1.drawImage(this.field_112, 0, 0, this);
  1081.    }
  1082.  
  1083.    // $FF: renamed from: a (int, int, int[], int[]) int
  1084.    public int method_20(int var1, int var2, int[] var3, int[] var4) {
  1085.       int var18 = 0;
  1086.       int[] var19 = this.field_97[var1];
  1087.       int[] var20 = this.field_108[var1];
  1088.       int var21 = this.field_102[var1];
  1089.       byte[] var22 = this.field_96[var1];
  1090.       int var23 = this.field_178;
  1091.  
  1092.       for(int var24 = 0; var24 < var21; ++var24) {
  1093.          int var14 = var19[var24 << 2];
  1094.          int var15 = var19[(var24 << 2) + 1];
  1095.          int var16 = var19[(var24 << 2) + 2];
  1096.          int var17 = var19[(var24 << 2) + 3];
  1097.          int var5 = var20[var14 << 2];
  1098.          int var6 = var20[(var14 << 2) + 1];
  1099.          int var7 = var20[var15 << 2];
  1100.          int var8 = var20[(var15 << 2) + 1];
  1101.          int var9 = var20[var16 << 2];
  1102.          int var10 = var20[(var16 << 2) + 1];
  1103.          float var25 = (float)var5 / 65536.0F;
  1104.          float var26 = (float)var6 / 65536.0F;
  1105.          float var27 = (float)var7 / 65536.0F;
  1106.          float var28 = (float)var8 / 65536.0F;
  1107.          float var29 = (float)var9 / 65536.0F;
  1108.          float var30 = (float)var10 / 65536.0F;
  1109.          float var31 = (var27 - var25) * (var30 - var26) - (var29 - var25) * (var28 - var26);
  1110.          if (var31 > 0.0F && (var22[var14] & var22[var15] & var22[var16] & var22[var17]) == 0) {
  1111.             int var32 = var22[var14] | var22[var15] | var22[var16] | var22[var17];
  1112.             if ((var32 & 48) == 0) {
  1113.                int var11 = var20[(var14 << 2) + 2];
  1114.                int var12 = var20[(var15 << 2) + 2];
  1115.                int var13 = var20[(var16 << 2) + 2];
  1116.                float var33 = (float)(var11 + var12 + var13) / 4.0F;
  1117.                int var34 = (int)Math.sqrt((double)(0.0F + var33 * var33));
  1118.                if (var34 < 512) {
  1119.                   var3[var2 + var18] = var24 | var1 << 16;
  1120.                }
  1121.  
  1122.                var4[var2 + var18] = var23 - var34;
  1123.                ++var18;
  1124.             }
  1125.          }
  1126.       }
  1127.  
  1128.       return var18;
  1129.    }
  1130.  
  1131.    // $FF: renamed from: a (java.lang.String) java.awt.Image
  1132.    Image method_21(String var1) {
  1133.       try {
  1134.          return this.method_22(var1);
  1135.       } catch (NoSuchMethodError var2) {
  1136.          return this.method_22(var1);
  1137.       }
  1138.    }
  1139.  
  1140.    // $FF: renamed from: b (java.lang.String) java.awt.Image
  1141.    synchronized Image method_22(String var1) {
  1142.       URL var2 = null;
  1143.       Image var3 = null;
  1144.  
  1145.       try {
  1146.          var2 = new URL(((Applet)this).getDocumentBase(), var1);
  1147.       } catch (MalformedURLException var14) {
  1148.       }
  1149.  
  1150.       try {
  1151.          try {
  1152.             InputStream var4 = this.getClass().getResourceAsStream(var2.toString());
  1153.             if (var4 != null) {
  1154.                ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
  1155.                byte[] var6 = new byte[512];
  1156.                boolean var8 = false;
  1157.                Object var9 = null;
  1158.  
  1159.                try {
  1160.                   while(!var8) {
  1161.                      int var7 = var4.read(var6, 0, 512);
  1162.                      if (var7 != -1) {
  1163.                         var5.write(var6, 0, var7);
  1164.                         ((OutputStream)var5).flush();
  1165.                      } else {
  1166.                         var8 = true;
  1167.                      }
  1168.                   }
  1169.  
  1170.                   var21 = var5.toByteArray();
  1171.                   ((OutputStream)var5).close();
  1172.                   var4.close();
  1173.                } catch (IOException var15) {
  1174.                   var21 = null;
  1175.                }
  1176.  
  1177.                System.gc();
  1178.                if (var21 != null) {
  1179.                   var3 = ((Component)this).getToolkit().createImage(var21);
  1180.                   ((Component)this).prepareImage(var3, this);
  1181.                }
  1182.             }
  1183.          } catch (NoSuchMethodError var16) {
  1184.          }
  1185.       } catch (SecurityException var17) {
  1186.       }
  1187.  
  1188.       if (var3 == null) {
  1189.          int var18 = 0;
  1190.  
  1191.          while(var18 < 5) {
  1192.             try {
  1193.                if (var18 % 2 == 0) {
  1194.                   var3 = Toolkit.getDefaultToolkit().getImage(var2);
  1195.                } else {
  1196.                   var3 = ((Applet)this).getImage(var2);
  1197.                }
  1198.  
  1199.                ++var18;
  1200.                MediaTracker var20 = new MediaTracker(this);
  1201.                this.notifyAll();
  1202.                Thread.currentThread();
  1203.                Thread.yield();
  1204.  
  1205.                try {
  1206.                   var20.addImage(var3, 0);
  1207.                   var20.waitForID(0);
  1208.                } catch (InterruptedException var12) {
  1209.                   var3 = null;
  1210.                }
  1211.  
  1212.                if (var20.isErrorID(0)) {
  1213.                   var3 = null;
  1214.                } else {
  1215.                   var18 = 6;
  1216.                }
  1217.             } catch (NullPointerException var13) {
  1218.                System.gc();
  1219.             }
  1220.          }
  1221.       }
  1222.  
  1223.       if (var3 == null) {
  1224.          for(int var19 = 0; var19 < 25; ++var19) {
  1225.             ((Applet)this).showStatus(method_59("e*\fl\u0019\f") + var1 + method_59("\f)\u0002\u007f\\J(\u0018e\u0018\r"));
  1226.  
  1227.             try {
  1228.                Thread.currentThread();
  1229.                Thread.sleep(250L);
  1230.             } catch (InterruptedException var11) {
  1231.             }
  1232.          }
  1233.       } else {
  1234.          while(var3.getWidth(this) < 0) {
  1235.             this.notifyAll();
  1236.             Thread.currentThread();
  1237.             Thread.yield();
  1238.  
  1239.             try {
  1240.                Thread.currentThread();
  1241.                Thread.sleep(100L);
  1242.             } catch (InterruptedException var10) {
  1243.             }
  1244.          }
  1245.       }
  1246.  
  1247.       return var3;
  1248.    }
  1249.  
  1250.    // $FF: renamed from: k () void
  1251.    public void method_23() {
  1252.       for(int var1 = 1; var1 < 27; ++var1) {
  1253.          for(int var2 = 0; var2 < this.field_102[var1]; ++var2) {
  1254.             float var3 = this.field_107[var1][(this.field_97[var1][var2 << 2] << 2) + 2];
  1255.             float var4 = this.field_107[var1][(this.field_97[var1][(var2 << 2) + 1] << 2) + 2];
  1256.             float var5 = this.field_107[var1][(this.field_97[var1][(var2 << 2) + 2] << 2) + 2];
  1257.             if (var3 < 0.0F & var4 < 0.0F & var5 < 0.0F) {
  1258.                this.field_97[var1][var2 * 4 + 3] = 1;
  1259.             }
  1260.          }
  1261.       }
  1262.  
  1263.       if (((Applet)this).getParameter(method_59("J+\f\u007f")).equalsIgnoreCase(method_59("U\"\u001e"))) {
  1264.          for(int var6 = 1; var6 < 27; ++var6) {
  1265.             for(int var7 = 0; var7 < this.field_103[var6]; ++var7) {
  1266.                this.field_107[var6][(var7 << 2) + 2] = 0.0F;
  1267.             }
  1268.          }
  1269.       }
  1270.  
  1271.    }
  1272.  
  1273.    // $FF: renamed from: l () void
  1274.    void method_24() {
  1275.       Insets var1 = this.field_56.insets();
  1276.       this.field_56.setResizable(true);
  1277.       this.field_56.resize(this.field_53 + var1.left + var1.right, this.field_50 + var1.bottom + var1.top);
  1278.       this.field_56.repaint();
  1279.       this.field_56.validate();
  1280.       this.field_56.setResizable(false);
  1281.       this.field_56.move(Integer.valueOf(((Applet)this).getParameter(method_59("J+\u0002j\bT"))), Integer.valueOf(((Applet)this).getParameter(method_59("J+\u0002j\bU"))));
  1282.    }
  1283.  
  1284.    // $FF: renamed from: e (int) void
  1285.    public void method_25(int var1) {
  1286.       float[] var2 = this.field_94[var1];
  1287.       float[] var3 = this.field_20;
  1288.       int var4 = this.field_24[this.field_0][0];
  1289.       int var5 = this.field_24[this.field_0][1];
  1290.       float var6 = (float)var4 / 320.0F;
  1291.       float var7 = (float)(-var5) / 200.0F;
  1292.       float var8 = (float)(var4 / 2);
  1293.       float var9 = (float)(var5 / 2);
  1294.       float var10 = (float)(this.field_179 + 1);
  1295.       float var11 = (float)(this.field_178 - 1);
  1296.       float var12 = this.field_101[var1][0];
  1297.       float var13 = this.field_101[var1][1];
  1298.       float var14 = this.field_101[var1][2];
  1299.       float var15 = this.field_101[var1][3];
  1300.       float var16 = this.field_101[var1][4];
  1301.       float var17 = this.field_101[var1][5];
  1302.       float var18 = this.field_101[var1][6];
  1303.       float var19 = this.field_101[var1][7];
  1304.       float var20 = this.field_101[var1][8];
  1305.       float var21 = this.field_101[var1][9];
  1306.       float var22 = this.field_101[var1][10];
  1307.       float var23 = this.field_101[var1][11];
  1308.       float var24 = var2[0];
  1309.       float var25 = var2[1];
  1310.       float var26 = var2[2];
  1311.       float var27 = var2[3];
  1312.       float var28 = var2[4];
  1313.       float var29 = var2[5];
  1314.       var3[0] = var24;
  1315.       var3[1] = var25;
  1316.       var3[2] = var26;
  1317.       var3[3] = -var24;
  1318.       var3[4] = var25;
  1319.       var3[5] = var26;
  1320.       var3[6] = -var24;
  1321.       var3[7] = -var25;
  1322.       var3[8] = var26;
  1323.       var3[9] = var24;
  1324.       var3[10] = -var25;
  1325.       var3[11] = var26;
  1326.       var3[12] = var27;
  1327.       var3[13] = var28;
  1328.       var3[14] = var29;
  1329.       var3[15] = -var27;
  1330.       var3[16] = var28;
  1331.       var3[17] = var29;
  1332.       var3[18] = -var27;
  1333.       var3[19] = -var28;
  1334.       var3[20] = var29;
  1335.       var3[21] = var27;
  1336.       var3[22] = -var28;
  1337.       var3[23] = var29;
  1338.       int var30 = 0;
  1339.       int var31 = -1;
  1340.       int var32 = 0;
  1341.  
  1342.       for(int var33 = 0; var33 < 8; ++var33) {
  1343.          float var34 = var3[var30++];
  1344.          float var35 = var3[var30++];
  1345.          float var36 = var3[var30++];
  1346.          float var37 = var34 * var12 + var35 * var15 + var36 * var18 + var21;
  1347.          float var38 = var34 * var13 + var35 * var16 + var36 * var19 + var22;
  1348.          float var39 = var34 * var14 + var35 * var17 + var36 * var20 + var23;
  1349.          float var40 = 256.0F / var39;
  1350.          float var41 = var37 * var40 * var6;
  1351.          float var42 = var38 * var40 * var7;
  1352.          int var43 = 0;
  1353.          if (var41 < -var8) {
  1354.             var43 |= 1;
  1355.          }
  1356.  
  1357.          if (var41 > var8) {
  1358.             var43 |= 2;
  1359.          }
  1360.  
  1361.          if (var42 < -var9) {
  1362.             var43 |= 4;
  1363.          }
  1364.  
  1365.          if (var42 > var9) {
  1366.             var43 |= 8;
  1367.          }
  1368.  
  1369.          if (var39 < var10) {
  1370.             var43 |= 16;
  1371.          }
  1372.  
  1373.          if (var39 > var11) {
  1374.             var43 |= 32;
  1375.          }
  1376.  
  1377.          var31 &= var43;
  1378.          var32 |= var43;
  1379.       }
  1380.  
  1381.       if (var31 != 0) {
  1382.          this.field_95[var1] = 2;
  1383.       } else if (var32 == 0) {
  1384.          this.field_95[var1] = 0;
  1385.       } else {
  1386.          this.field_95[var1] = 1;
  1387.       }
  1388.    }
  1389.  
  1390.    // $FF: renamed from: m () int
  1391.    public int method_26() {
  1392.       byte var1 = -1;
  1393.       int var3 = (int)(this.field_17 / (360.0F * this.field_121));
  1394.       float var2 = (this.field_17 - (float)(var3 * 360) * this.field_121) / this.field_121;
  1395.       if (var2 < 0.0F) {
  1396.          var2 += 360.0F;
  1397.       }
  1398.  
  1399.       if (var2 >= 337.5F | var2 <= 22.5F) {
  1400.          var1 = 0;
  1401.       }
  1402.  
  1403.       if (var2 >= 22.5F & var2 <= 67.5F) {
  1404.          var1 = 7;
  1405.       }
  1406.  
  1407.       if (var2 >= 67.5F & var2 <= 112.5F) {
  1408.          var1 = 6;
  1409.       }
  1410.  
  1411.       if (var2 >= 112.5F & var2 <= 157.5F) {
  1412.          var1 = 5;
  1413.       }
  1414.  
  1415.       if (var2 >= 157.5F & var2 <= 202.5F) {
  1416.          var1 = 4;
  1417.       }
  1418.  
  1419.       if (var2 >= 202.5F & var2 <= 247.5F) {
  1420.          var1 = 3;
  1421.       }
  1422.  
  1423.       if (var2 >= 247.5F & var2 <= 292.5F) {
  1424.          var1 = 2;
  1425.       }
  1426.  
  1427.       if (var2 >= 292.5F & var2 <= 337.5F) {
  1428.          var1 = 1;
  1429.       }
  1430.  
  1431.       return var1;
  1432.    }
  1433.  
  1434.    // $FF: renamed from: n () void
  1435.    public void method_27() {
  1436.       this.method_14();
  1437.       this.method_12();
  1438.       this.method_53();
  1439.       this.method_11();
  1440.       this.field_92 = 0;
  1441.  
  1442.       for(int var1 = 0; var1 < this.field_91; ++var1) {
  1443.          if (this.field_93[var1] != 0) {
  1444.             this.method_25(var1);
  1445.             if (this.field_95[var1] != 2) {
  1446.                this.method_37(var1);
  1447.                this.field_92 += this.method_20(var1, this.field_92, this.field_159, this.field_158);
  1448.                this.method_8(var1);
  1449.             }
  1450.          }
  1451.       }
  1452.  
  1453.    }
  1454.  
  1455.    // $FF: renamed from: f (int) void
  1456.    public void method_28(int var1) {
  1457.       int var2 = this.field_28[var1];
  1458.       this.method_45(var2, 0);
  1459.       this.method_45(this.field_122[var1], 0);
  1460.  
  1461.       for(int var3 = 0; var3 < this.field_86; ++var3) {
  1462.          if (this.field_110[var1][var3] != null) {
  1463.             for(int var4 = 0; var4 < this.field_88[var1][var3]; ++var4) {
  1464.                if (this.field_109[var1][var3][var4] != -1) {
  1465.                   this.method_45(this.field_109[var1][var3][var4], 0);
  1466.                }
  1467.             }
  1468.          }
  1469.       }
  1470.  
  1471.    }
  1472.  
  1473.    // $FF: renamed from: o () void
  1474.    void method_29() {
  1475.       int var1 = this.field_1;
  1476.       int var2 = this.field_2;
  1477.       if (this.field_110[var2][var1] != null) {
  1478.          for(int var3 = 0; var3 < this.field_88[var2][var1]; ++var3) {
  1479.             int var4 = this.field_109[var2][var1][var3];
  1480.             if (var4 != -1) {
  1481.                int var5 = 3;
  1482.                int[] var6 = this.field_97[var4];
  1483.  
  1484.                for(int var7 = 0; var7 < this.field_102[var4]; ++var7) {
  1485.                   if (var6[var5] == 1) {
  1486.                      var6[var5] = 2;
  1487.                   }
  1488.  
  1489.                   var5 += 4;
  1490.                }
  1491.             }
  1492.          }
  1493.       }
  1494.  
  1495.    }
  1496.  
  1497.    public boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
  1498.       if (var1 == this.field_117) {
  1499.          if (var2 == 16) {
  1500.             this.field_115 = true;
  1501.          }
  1502.  
  1503.          return true;
  1504.       } else {
  1505.          return true;
  1506.       }
  1507.    }
  1508.  
  1509.    public void init() {
  1510.       ((Container)this).setLayout((LayoutManager)null);
  1511.       ((Panel)this).addNotify();
  1512.       this.field_153 = ((Component)this).getToolkit();
  1513.       Object var1 = null;
  1514.       String var37 = ((Applet)this).getParameter(method_59("O5\bo\u0015X4"));
  1515.       if (var37 != null) {
  1516.          if (!var37.equals(method_59("m7\u001dg\u0019Xg\u000fr\\m)\u000br\\x\"\ff\\\u00040\u001a|RM)\u000br\u0016M1\f%\u001fC*D"))) {
  1517.             this.method_6();
  1518.          }
  1519.       } else {
  1520.          this.method_6();
  1521.       }
  1522.  
  1523.       Object var2 = null;
  1524.       Object var3 = null;
  1525.  
  1526.       try {
  1527.          var38 = ((Applet)this).getDocumentBase().getProtocol();
  1528.       } catch (SecurityException var34) {
  1529.          var38 = method_59("J.\u0001n");
  1530.       }
  1531.  
  1532.       try {
  1533.          var39 = ((Applet)this).getDocumentBase().getHost();
  1534.       } catch (SecurityException var33) {
  1535.          var39 = "";
  1536.       }
  1537.  
  1538.       if (!var38.equalsIgnoreCase(method_59("J.\u0001n")) && var39.length() != 0 && !var39.equalsIgnoreCase(method_59("@(\u000ej\u0010D(\u001e\u007f")) && !var39.equals(method_59("\u001duZ%L\u0002wC:"))) {
  1539.          if (var39.startsWith(method_59("[0\u001a%"))) {
  1540.             var39 = var39.substring(4);
  1541.          }
  1542.  
  1543.          Object var4 = null;
  1544.          String var40 = ((Applet)this).getParameter(method_59("^\"\nh\u0013H\""));
  1545.          if (var40 != null && !var40.equals("NO") && var40.length() > 10) {
  1546.             int var5 = 1;
  1547.  
  1548.             try {
  1549.                for(int var6 = 0; var6 < var40.length(); ++var6) {
  1550.                   if (var40.charAt(var6) == '+') {
  1551.                      ++var5;
  1552.                   }
  1553.                }
  1554.             } catch (StringIndexOutOfBoundsException var36) {
  1555.             }
  1556.  
  1557.             int[] var44 = new int[var5];
  1558.             if (var5 == 1) {
  1559.                var44[0] = var40.length();
  1560.             } else {
  1561.                int var7 = 0;
  1562.  
  1563.                try {
  1564.                   for(int var8 = 0; var8 < var40.length(); ++var8) {
  1565.                      if (var40.charAt(var8) == '+') {
  1566.                         var44[var7] = var8;
  1567.                         ++var7;
  1568.                      }
  1569.                   }
  1570.                } catch (StringIndexOutOfBoundsException var35) {
  1571.                }
  1572.  
  1573.                var44[var7] = var40.length();
  1574.             }
  1575.  
  1576.             String[] var46 = new String[var5];
  1577.             int var49 = 0;
  1578.  
  1579.             for(int var9 = 0; var9 < var5; ++var9) {
  1580.                try {
  1581.                   var46[var9] = var40.substring(var49, var44[var9]);
  1582.                } catch (StringIndexOutOfBoundsException var32) {
  1583.                }
  1584.  
  1585.                var49 = var44[var9] + 1;
  1586.             }
  1587.  
  1588.             for(int var10 = 0; var10 < var5; ++var10) {
  1589.                int var11 = var46[var10].length() - 8;
  1590.                byte[] var15 = new byte[var11];
  1591.                byte[] var16 = new byte[8];
  1592.                var46[var10].getBytes(0, var11, var15, 0);
  1593.                var46[var10].getBytes(var11, var11 + 8, var16, 0);
  1594.                int var13 = var11 % 7;
  1595.                int var14 = var11 % 3;
  1596.  
  1597.                for(int var17 = 0; var17 < var11; ++var17) {
  1598.                   byte var12 = var15[var17];
  1599.                   if (var12 >= 48 && var12 <= 57) {
  1600.                      var15[var17] = this.method_44(var12, var13, 48, 57);
  1601.                   } else if (var12 >= 65 && var12 <= 90) {
  1602.                      var15[var17] = this.method_44(var12, var13, 65, 90);
  1603.                   } else if (var12 >= 97 && var12 <= 122) {
  1604.                      var15[var17] = this.method_44(var12, var13, 97, 122);
  1605.                   } else if (var12 == 45) {
  1606.                      var15[var17] = 46;
  1607.                   } else if (var12 == 46) {
  1608.                      var15[var17] = 45;
  1609.                   }
  1610.  
  1611.                   if ((var13 += var14) > 7) {
  1612.                      var13 = 1;
  1613.                   }
  1614.                }
  1615.  
  1616.                int var18 = 0;
  1617.                int var19 = 0;
  1618.  
  1619.                for(int var20 = 0; var20 < 4; ++var20) {
  1620.                   var16[var20] = (byte)(var16[var20] - 52);
  1621.                }
  1622.  
  1623.                for(int var21 = 4; var21 < 8; ++var21) {
  1624.                   var16[var21] = (byte)(var16[var21] - 55);
  1625.                }
  1626.  
  1627.                for(int var22 = 0; var22 < var11; var22 += 2) {
  1628.                   var18 += var15[var22];
  1629.                }
  1630.  
  1631.                for(int var23 = 1; var23 < var11; var23 += 2) {
  1632.                   var19 += var15[var23];
  1633.                }
  1634.  
  1635.                String var24 = String.valueOf(var18);
  1636.  
  1637.                String var25;
  1638.                for(var25 = String.valueOf(var19); var24.length() < 4; var24 = "0" + var24) {
  1639.                }
  1640.  
  1641.                while(var25.length() < 4) {
  1642.                   var25 = "0" + var25;
  1643.                }
  1644.  
  1645.                byte[] var26 = new byte[8];
  1646.                var24.getBytes(0, 4, var26, 0);
  1647.                var25.getBytes(0, 4, var26, 4);
  1648.                String var27 = new String(var26, 0);
  1649.                if (var27.equals(new String(var16, 0))) {
  1650.                   String var28 = new String(var15, 0);
  1651.                   Object var29 = null;
  1652.                   String var94;
  1653.                   if (var28.startsWith(method_59("[0\u001a%"))) {
  1654.                      var94 = var28.substring(4);
  1655.                   } else {
  1656.                      var94 = var28;
  1657.                   }
  1658.  
  1659.                   if (var39.equalsIgnoreCase(var94)) {
  1660.                      this.field_133 = true;
  1661.                   }
  1662.                }
  1663.             }
  1664.          }
  1665.       } else {
  1666.          this.field_133 = true;
  1667.       }
  1668.  
  1669.       String var41 = ((Applet)this).getParameter(method_59("^\"\ne\u0019[!\u001fj\u0011I"));
  1670.       if (var41.equalsIgnoreCase(method_59("u\u0002>"))) {
  1671.          this.field_85 = true;
  1672.       }
  1673.  
  1674.       String var42 = ((Applet)this).getParameter(method_59("J+\u0002j\bA(\tn"));
  1675.       if (var42 == null) {
  1676.          var42 = "NO";
  1677.       }
  1678.  
  1679.       if (var42.equalsIgnoreCase(method_59("u\u0002>"))) {
  1680.          this.field_52 = true;
  1681.          this.field_53 = Integer.valueOf(((Applet)this).getParameter(method_59("J+\u0002j\b[")));
  1682.          this.field_50 = Integer.valueOf(((Applet)this).getParameter(method_59("J+\u0002j\bD")));
  1683.          var42 = ((Applet)this).getParameter(method_59("J+\u0002j\bE)\u000by\u0013B3"));
  1684.          if (var42 == null) {
  1685.             var42 = "NO";
  1686.          }
  1687.  
  1688.          if (var42.equalsIgnoreCase(method_59("u\u0002>"))) {
  1689.             this.field_51 = true;
  1690.          }
  1691.       } else {
  1692.          this.field_52 = false;
  1693.       }
  1694.  
  1695.       if (this.field_52) {
  1696.          this.field_132 = this.field_53;
  1697.          this.field_131 = this.field_50;
  1698.       } else {
  1699.          this.field_132 = ((Component)this).size().width;
  1700.          this.field_131 = ((Component)this).size().height;
  1701.       }
  1702.  
  1703.       this.field_77 = this.field_132;
  1704.       this.field_76 = this.field_131;
  1705.       String var45 = ((Applet)this).getParameter(method_59("C1\by\u0015A "));
  1706.       if (var45 != null && !var45.equalsIgnoreCase("NO")) {
  1707.          this.field_117 = this.method_21(var45);
  1708.          if (this.field_117 != null) {
  1709.             String var47 = ((Applet)this).getParameter(method_59("C1\by\u0015A 5"));
  1710.             if (var47 == null) {
  1711.                var47 = "0";
  1712.             }
  1713.  
  1714.             this.field_118 = Integer.valueOf(var47);
  1715.             String var50 = ((Applet)this).getParameter(method_59("C1\by\u0015A 4"));
  1716.             if (var50 == null) {
  1717.                var50 = "0";
  1718.             }
  1719.  
  1720.             this.field_119 = Integer.valueOf(var50);
  1721.          }
  1722.       }
  1723.  
  1724.       this.field_156 = this.field_77 * this.field_76;
  1725.       this.field_141 = new int[this.field_156];
  1726.  
  1727.       for(int var48 = 0; var48 < this.field_156; ++var48) {
  1728.          this.field_141[var48] = 0;
  1729.       }
  1730.  
  1731.       try {
  1732.          this.method_31();
  1733.       } catch (NoSuchMethodError var31) {
  1734.          this.method_31();
  1735.       }
  1736.  
  1737.       this.field_112 = ((Component)this).createImage(this.field_132, this.field_131);
  1738.       this.field_111 = this.field_112.getGraphics();
  1739.       String var51 = ((Applet)this).getParameter(method_59("a.\u0003X%b\u0004"));
  1740.       if (var51 == null) {
  1741.          var51 = "10";
  1742.       }
  1743.  
  1744.       this.field_83 = Integer.valueOf(var51);
  1745.       this.field_78 = Integer.valueOf(((Applet)this).getParameter(method_59("A\"\u0000o\u0019@&\u0014")));
  1746.       this.field_128 = Integer.valueOf(((Applet)this).getParameter(method_59("\\5\u0004d\u000eE3\u0014")));
  1747.       if (this.field_78 < 0) {
  1748.          this.field_78 = 0;
  1749.       }
  1750.  
  1751.       if (this.field_128 > 10) {
  1752.          this.field_128 = 10;
  1753.       } else if (this.field_128 < 1) {
  1754.          this.field_128 = 1;
  1755.       }
  1756.  
  1757.       this.field_49 = Integer.valueOf(((Applet)this).getParameter(method_59("J.\u0001\u007f\u0019^")));
  1758.       this.field_144 = Integer.valueOf(((Applet)this).getParameter(method_59("_3\f\u007f\t_%\fy#U")));
  1759.  
  1760.       Container var52;
  1761.       for(var52 = ((Component)this).getParent(); !(var52 instanceof Frame); var52 = ((Component)var52).getParent()) {
  1762.       }
  1763.  
  1764.       this.field_10 = (Frame)var52;
  1765.       this.field_10.setCursor(3);
  1766.       int var53 = Integer.valueOf(((Applet)this).getParameter(method_59("_\"\u0001n\u001fX$\u0002g\u0013^")), 16);
  1767.       int var57 = var53 >> 16 & 255;
  1768.       int var61 = var53 >> 8 & 255;
  1769.       int var65 = var53 & 255;
  1770.       this.field_55 = new Color(var57, var61, var65);
  1771.       this.field_155 = ((Applet)this).getParameter(method_59("A(\tn")).equals(method_59("X\"\u0015\u007f\t^\""));
  1772.       String var69 = ((Applet)this).getParameter(method_59("N&\u000e`\u001b^(\u0018e\u0018"));
  1773.       if (var69.equals(method_59("O(\u0001d\u000e"))) {
  1774.          this.field_18 = Integer.valueOf(((Applet)this).getParameter(method_59("N \u000ed\u0010C5")), 16);
  1775.       } else if (var69.equals(method_59("N+\u0018y"))) {
  1776.          this.field_19 = true;
  1777.       } else if (var69.equals(method_59("E*\fl\u0019"))) {
  1778.          this.field_61 = ((Applet)this).getParameter(method_59("N&\u000e`\u0015A&\nn"));
  1779.          this.field_62 = true;
  1780.       }
  1781.  
  1782.       this.field_36 = new int[this.field_156];
  1783.       if (!this.field_62) {
  1784.          for(int var70 = 0; var70 < this.field_156; ++var70) {
  1785.             this.field_36[var70] = this.field_18;
  1786.          }
  1787.       } else {
  1788.          Image var71 = this.method_21(this.field_61);
  1789.          if (var71 != null) {
  1790.             this.method_34(var71, 0, 0, this.field_132, this.field_131, this.field_36, 0, this.field_132);
  1791.          }
  1792.       }
  1793.  
  1794.       if (this.field_155) {
  1795.          Image var72 = this.method_21(((Applet)this).getParameter(method_59("X\"\u0015\u007f\t^\"")));
  1796.          int var75 = Integer.valueOf(((Applet)this).getParameter(method_59("I?\u0019y\tH\"\tb\u001aJ")));
  1797.          int var78 = Integer.valueOf(((Applet)this).getParameter(method_59("X\"\u0015\u007f\u0018E!\u000b")));
  1798.          if (var75 > 7) {
  1799.             var75 = 7;
  1800.          }
  1801.  
  1802.          int var82 = 255 >>> var75 << var75;
  1803.          int var87 = var82 << 16 | var82 << 8 | var82;
  1804.          if (var78 > 7) {
  1805.             var78 = 7;
  1806.          }
  1807.  
  1808.          var82 = 255 >>> var78 << var78;
  1809.          int var90 = var82 << 16 | var82 << 8 | var82;
  1810.          if (var72 != null) {
  1811.             this.method_34(var72, 0, 0, 256, 256, this.field_149, 0, 256);
  1812.  
  1813.             for(int var92 = 0; var92 < 65536; ++var92) {
  1814.                this.field_150[var92] = (this.field_149[var92] & var87) >>> var75;
  1815.             }
  1816.  
  1817.             for(int var93 = 0; var93 < 65536; ++var93) {
  1818.                this.field_151[var93] = (this.field_149[var93] & var90) >>> var78;
  1819.             }
  1820.          }
  1821.       }
  1822.  
  1823.       this.field_91 = 0;
  1824.       this.field_90 = 0;
  1825.       this.field_89 = 0;
  1826.       this.field_120 = new int[3][];
  1827.       this.field_120[0] = new int[256];
  1828.       this.field_120[1] = new int[256];
  1829.       this.field_120[2] = new int[256];
  1830.  
  1831.       try {
  1832.          this.method_33();
  1833.       } catch (IOException var30) {
  1834.          System.out.println(method_59("e\bMN\u000e^(\u001f+]\rfL"));
  1835.          this.stop();
  1836.       }
  1837.  
  1838.       this.method_30(0, 512);
  1839.       this.method_5();
  1840.       if (!this.field_155) {
  1841.          var53 = Integer.valueOf(((Applet)this).getParameter(method_59("[/\bn\u0010O(\u0001d\u000e")), 16);
  1842.          var57 = var53 >> 16 & 255;
  1843.          var61 = var53 >> 8 & 255;
  1844.          var65 = var53 & 255;
  1845.  
  1846.          for(int var73 = 0; var73 < 256; ++var73) {
  1847.             int var76 = var57 * var73 / 255;
  1848.             int var79 = var61 * var73 / 255;
  1849.             int var84 = var65 * var73 / 255;
  1850.             this.field_120[0][var73] = var76 << 16 | var79 << 8 | var84;
  1851.          }
  1852.  
  1853.          var53 = Integer.valueOf(((Applet)this).getParameter(method_59("X\"\u0015\u007f\u001fC+\u0002y")), 16);
  1854.          var57 = var53 >> 16 & 255;
  1855.          var61 = var53 >> 8 & 255;
  1856.          var65 = var53 & 255;
  1857.  
  1858.          for(int var77 = 0; var77 < 256; ++var77) {
  1859.             int var80 = var57 * var77 / 255;
  1860.             int var85 = var61 * var77 / 255;
  1861.             int var88 = var65 * var77 / 255;
  1862.             this.field_120[1][var77] = var80 << 16 | var85 << 8 | var88;
  1863.          }
  1864.  
  1865.          var53 = Integer.valueOf(((Applet)this).getParameter(method_59("_\"\u0001n\u001fX$\u0002g\u0013^")), 16);
  1866.          var57 = var53 >> 16 & 255;
  1867.          var61 = var53 >> 8 & 255;
  1868.          var65 = var53 & 255;
  1869.  
  1870.          for(int var81 = 0; var81 < 256; ++var81) {
  1871.             int var86 = var57 * var81 / 255;
  1872.             int var89 = var61 * var81 / 255;
  1873.             int var91 = var65 * var81 / 255;
  1874.             this.field_120[2][var81] = var86 << 16 | var89 << 8 | var91;
  1875.          }
  1876.       }
  1877.  
  1878.       if (this.field_52) {
  1879.          this.field_56 = new Frame(((Applet)this).getParameter(method_59("J+\u0002j\bE3\u0001n")));
  1880.          this.field_56.add(method_59("o\"\u0003\u007f\u0019^"), this);
  1881.       }
  1882.  
  1883.       if (!this.field_133) {
  1884.          Label var74 = new Label(method_59("{/\bn\u0010\f\n\be\t\f&\u001d{\u0010I3Mi\u0005\f\u0006\u0003m\u0005\f\u0013\bj\u0011\fvT2D\u0002"));
  1885.          this.field_162 = new Lware(((Applet)this).getAppletContext(), var74);
  1886.          this.field_162.setTitle(method_59("{/\bn\u0010\f\n\be\t\f\u0006\u001d{\u0010I3Mi\u0005\f\u0006\u0003m\u0005\f\u0013\bj\u0011"));
  1887.          this.field_162.hide();
  1888.       }
  1889.  
  1890.       System.gc();
  1891.    }
  1892.  
  1893.    // $FF: renamed from: b (int, int) void
  1894.    public void method_30(int var1, int var2) {
  1895.       int var3 = 0;
  1896.  
  1897.       for(int var4 = 0; var4 < this.field_91; ++var4) {
  1898.          var3 += this.field_102[var4];
  1899.       }
  1900.  
  1901.       var3 += this.field_90 * 2;
  1902.       this.field_160 = new int[var3];
  1903.       this.field_158 = new int[var3];
  1904.       this.field_159 = new int[var3];
  1905.       this.field_147 = new int[512];
  1906.       this.field_179 = var1;
  1907.       this.field_178 = var2;
  1908.    }
  1909.  
  1910.    // $FF: renamed from: p () void
  1911.    final void method_31() {
  1912.       this.field_130 = new MemoryImageSource(this.field_77, this.field_76, new DirectColorModel(24, 16711680, 65280, 255), this.field_141, 0, this.field_77);
  1913.  
  1914.       String var1;
  1915.       try {
  1916.          var1 = System.getProperty(method_59("F&\u001bjRZ\"\u001fx\u0015C)"));
  1917.       } catch (SecurityException var3) {
  1918.          var1 = method_59("Y)\u0006");
  1919.       }
  1920.  
  1921.       if (!var1.startsWith(method_59("\u001di]"))) {
  1922.          try {
  1923.             this.field_130.setAnimated(true);
  1924.             this.field_130.setFullBufferUpdates(true);
  1925.             this.field_59 = ((Component)this).createImage(this.field_130);
  1926.             this.field_130.newPixels();
  1927.             this.field_66 = true;
  1928.          } catch (NoSuchMethodError var2) {
  1929.             this.field_66 = false;
  1930.          }
  1931.       }
  1932.  
  1933.       if (!this.field_66) {
  1934.          this.field_130 = null;
  1935.          this.field_129 = new anfy(this.field_77, this.field_76, new DirectColorModel(24, 16711680, 65280, 255), this.field_141, 0, this.field_77);
  1936.          this.field_59 = ((Component)this).createImage(this.field_129);
  1937.       }
  1938.  
  1939.    }
  1940.  
  1941.    // $FF: renamed from: b (java.lang.String, int) int
  1942.    public int method_32(String var1, int var2) throws IOException {
  1943.       int var9 = 0;
  1944.       URL var3 = new URL(((Applet)this).getCodeBase(), var1);
  1945.       InputStream var4 = var3.openStream();
  1946.       DataInputStream var5 = new DataInputStream(var4);
  1947.       int var8 = var5.readInt();
  1948.       if (var8 != 1163412803 && var8 != 1163412805) {
  1949.          var4.close();
  1950.          return -1;
  1951.       } else {
  1952.          int var15 = var5.readInt();
  1953.  
  1954.          for(int var16 = 0; var16 < var15; ++var16) {
  1955.             int var13 = var5.readInt();
  1956.             int var14 = var5.readInt();
  1957.             var13 ^= this.field_67;
  1958.             var14 ^= this.field_68;
  1959.             int var10 = var5.readInt() - var13;
  1960.             int var11 = var5.readInt() - var14;
  1961.             var9 = this.method_3(var10, var11);
  1962.             int var7 = 0;
  1963.             int var6 = 0;
  1964.             int var17 = 0;
  1965.             boolean var18 = false;
  1966.  
  1967.             while(var6 < var10) {
  1968.                if (var9 != 0 && var9 != 27) {
  1969.                   if (!var18) {
  1970.                      var17 = var6;
  1971.                   }
  1972.  
  1973.                   short var19 = var5.readShort();
  1974.                   byte var20 = var5.readByte();
  1975.                   if (var19 == 0 && var20 == 0) {
  1976.                      var18 = false;
  1977.                      int var21 = var6;
  1978.  
  1979.                      for(int var22 = var17; var22 < var21; ++var22) {
  1980.                         this.field_107[var9][var7++] = this.field_107[var9][var22 * 4];
  1981.                         this.field_107[var9][var7++] = this.field_107[var9][var22 * 4 + 1];
  1982.                         this.field_107[var9][var7++] = 73.0F;
  1983.                         this.field_107[var9][var7++] = 0.0F;
  1984.                         ++var6;
  1985.                      }
  1986.                   } else {
  1987.                      this.field_107[var9][var7++] = (float)var19;
  1988.                      this.field_107[var9][var7++] = (float)var20;
  1989.                      this.field_107[var9][var7++] = 0.0F;
  1990.                      this.field_107[var9][var7++] = 0.0F;
  1991.                      var18 = true;
  1992.                      ++var6;
  1993.                   }
  1994.                } else {
  1995.                   short var12 = var5.readShort();
  1996.                   this.field_107[var9][var7++] = (float)var12;
  1997.                   var12 = var5.readShort();
  1998.                   this.field_107[var9][var7++] = (float)var12;
  1999.                   var12 = var5.readShort();
  2000.                   this.field_107[var9][var7++] = (float)var12;
  2001.                   this.field_107[var9][var7++] = 0.0F;
  2002.                   ++var6;
  2003.                }
  2004.             }
  2005.  
  2006.             var7 = 0;
  2007.  
  2008.             for(int var23 = 0; var23 < var11; ++var23) {
  2009.                short var39 = (short)var5.readUnsignedByte();
  2010.                this.field_97[var9][var7++] = var39;
  2011.                var39 = (short)var5.readUnsignedByte();
  2012.                this.field_97[var9][var7++] = var39;
  2013.                var39 = (short)var5.readUnsignedByte();
  2014.                this.field_97[var9][var7++] = var39;
  2015.                this.field_97[var9][var7++] = 0;
  2016.             }
  2017.  
  2018.             this.method_7(var9);
  2019.             this.method_9(var9);
  2020.          }
  2021.  
  2022.          var4.close();
  2023.          return var9;
  2024.       }
  2025.    }
  2026.  
  2027.    public final boolean mouseDown(Event var1, int var2, int var3) {
  2028.       if (!this.field_133) {
  2029.          this.field_162.show();
  2030.          this.field_162.toFront();
  2031.          this.field_162.requestFocus();
  2032.       } else {
  2033.          int var4 = this.field_1;
  2034.          if (var2 > 0 & var2 < this.field_131 / 10) {
  2035.             if (this.field_3 > 0) {
  2036.                --this.field_3;
  2037.             }
  2038.  
  2039.             return true;
  2040.          }
  2041.  
  2042.          if (this.field_80[this.field_4[this.field_3]][var4] != -1) {
  2043.             if (this.field_80[this.field_4[this.field_3]][var4] == this.field_3 - 1) {
  2044.                --this.field_3;
  2045.             } else {
  2046.                this.field_4[this.field_3 + 1] = this.field_80[this.field_4[this.field_3]][var4];
  2047.                ++this.field_3;
  2048.             }
  2049.          } else if (this.field_157[this.field_4[this.field_3]][var4] != null) {
  2050.             if (this.field_81[this.field_4[this.field_3]][var4] != null) {
  2051.                ((Applet)this).getAppletContext().showDocument(this.field_157[this.field_4[this.field_3]][var4], this.field_81[this.field_4[this.field_3]][var4]);
  2052.             } else if (this.field_85) {
  2053.                ((Applet)this).getAppletContext().showDocument(this.field_157[this.field_4[this.field_3]][var4], ((Applet)this).getParameter(method_59("^\"\nm\u000eM*\be\u001dA\"")));
  2054.             } else {
  2055.                ((Applet)this).getAppletContext().showDocument(this.field_157[this.field_4[this.field_3]][var4]);
  2056.             }
  2057.          }
  2058.       }
  2059.  
  2060.       return true;
  2061.    }
  2062.  
  2063.    public final boolean mouseMove(Event var1, int var2, int var3) {
  2064.       this.field_166 = var2;
  2065.       this.field_6 = -((float)(this.field_131 / 2 - var3) * this.field_84 / (float)this.field_131) * 2.0F;
  2066.       this.field_9 = -((float)(this.field_132 / 2 - var2) * this.field_84 / (float)this.field_132) * 2.0F;
  2067.       return true;
  2068.    }
  2069.  
  2070.    // $FF: renamed from: q () void
  2071.    public void method_33() throws IOException {
  2072.       this.field_84 = (float)this.method_15(((Applet)this).getParameter(method_59("A(\u0018x\u0019_\"\u0003x")), 500) / 1000.0F;
  2073.       this.field_114 = this.method_15(((Applet)this).getParameter(method_59("C!\u000bx\u0019X\u0014\u0019n\f")), 5);
  2074.       this.field_7 = 0.0F;
  2075.       this.field_5 = (float)this.method_15(((Applet)this).getParameter(method_59("u5\u0002\u007f\u001dX.\u0002e")), 2);
  2076.       if (Integer.valueOf(((Applet)this).getParameter(method_59("J(\u0003\u007f"))) == 0) {
  2077.          this.method_32(method_59("J(\u0003\u007fL\u0002$\u0001j\u000f_"), 0);
  2078.          this.field_33 = this.field_34;
  2079.       } else {
  2080.          this.method_32(method_59("J(\u0003\u007fM\u0002$\u0001j\u000f_"), 0);
  2081.          this.field_33 = this.field_35;
  2082.       }
  2083.  
  2084.       this.method_23();
  2085.       this.method_17();
  2086.       this.method_0(0.0F, 0.0F, -40.0F, 0.0F, 0.0F, 0.0F, 1.0F, 0.02F);
  2087.       this.method_1(this.field_141, this.field_77, this.field_76);
  2088.       this.method_46(0, 0.0F, 0.0F, -140.0F);
  2089.       this.method_51(0, 0.0F, 0.0F, 160.0F);
  2090.    }
  2091.  
  2092.    public final void paint(Graphics var1) {
  2093.       if (this.field_59 != null) {
  2094.          this.method_19(var1);
  2095.       }
  2096.  
  2097.    }
  2098.  
  2099.    // $FF: renamed from: a (java.awt.Image, int, int, int, int, int[], int, int) void
  2100.    void method_34(Image var1, int var2, int var3, int var4, int var5, int[] var6, int var7, int var8) {
  2101.       PixelGrabber var9 = new PixelGrabber(var1, var2, var3, var4, var5, var6, var7, var8);
  2102.  
  2103.       try {
  2104.          var9.grabPixels();
  2105.       } catch (InterruptedException var10) {
  2106.       }
  2107.    }
  2108.  
  2109.    // $FF: renamed from: r () void
  2110.    public synchronized void method_35() {
  2111.       if (this.field_11) {
  2112.          this.notifyAll();
  2113.  
  2114.          while(!this.field_115) {
  2115.             Thread.yield();
  2116.  
  2117.             try {
  2118.                Thread.sleep(8L);
  2119.             } catch (InterruptedException var1) {
  2120.             }
  2121.          }
  2122.  
  2123.          this.field_115 = false;
  2124.       }
  2125.  
  2126.       this.field_111.drawImage(this.field_117, this.field_118, this.field_119, this);
  2127.    }
  2128.  
  2129.    // $FF: renamed from: s () void
  2130.    public final void method_36() {
  2131.       try {
  2132.          if (this.field_66) {
  2133.             this.field_130.newPixels();
  2134.          } else {
  2135.             this.field_129.startProduction(this.field_129.getConsumer());
  2136.          }
  2137.       } catch (NoSuchMethodError var1) {
  2138.       }
  2139.    }
  2140.  
  2141.    // $FF: renamed from: g (int) void
  2142.    public void method_37(int var1) {
  2143.       float[] var2 = this.field_107[var1];
  2144.       int[] var3 = this.field_108[var1];
  2145.       byte[] var4 = this.field_96[var1];
  2146.       float[] var5 = this.field_105[var1];
  2147.       float[] var6 = this.field_106[var1];
  2148.       int var7 = this.field_103[var1];
  2149.       float[] var8 = this.field_101[var1];
  2150.       int var9 = this.field_24[this.field_0][0];
  2151.       int var10 = this.field_24[this.field_0][1];
  2152.       float var11 = (float)var9 / 320.0F;
  2153.       float var12 = (float)(-var10) / 200.0F;
  2154.       float var13 = (float)(var9 / 2);
  2155.       float var14 = (float)(var10 / 2);
  2156.       float var15 = (float)(this.field_179 + 1);
  2157.       float var16 = (float)(this.field_178 - 1);
  2158.       float var17 = var8[0];
  2159.       float var18 = var8[1];
  2160.       float var19 = var8[2];
  2161.       float var20 = var8[3];
  2162.       float var21 = var8[4];
  2163.       float var22 = var8[5];
  2164.       float var23 = var8[6];
  2165.       float var24 = var8[7];
  2166.       float var25 = var8[8];
  2167.       float var26 = var8[9];
  2168.       float var27 = var8[10];
  2169.       float var28 = var8[11];
  2170.       int var29 = 0;
  2171.  
  2172.       for(int var30 = 0; var30 < var7; ++var30) {
  2173.          float var31 = var2[var29];
  2174.          float var32 = var2[var29 + 1];
  2175.          float var33 = var2[var29 + 2];
  2176.          float var34 = var31 * var17 + var32 * var20 + var33 * var23 + var26;
  2177.          float var35 = var31 * var18 + var32 * var21 + var33 * var24 + var27;
  2178.          float var36 = var31 * var19 + var32 * var22 + var33 * var25 + var28;
  2179.          float var37 = 256.0F / var36;
  2180.          float var38 = var34 * var37 * var11;
  2181.          float var39 = var35 * var37 * var12;
  2182.          var3[var29] = (int)((var38 + var13) * 65536.0F);
  2183.          var3[var29 + 1] = (int)((var39 + var14) * 65536.0F);
  2184.          var3[var29 + 2] = (int)var36;
  2185.          var31 = var5[var29];
  2186.          var32 = var5[var29 + 1];
  2187.          var33 = var5[var29 + 2];
  2188.          var6[var29] = var31 * var17 + var32 * var20 + var33 * var23;
  2189.          var6[var29 + 1] = var31 * var18 + var32 * var21 + var33 * var24;
  2190.          var6[var29 + 2] = var31 * var19 + var32 * var22 + var33 * var25;
  2191.          var29 += 4;
  2192.          byte var40 = 0;
  2193.          if (var38 < -var13) {
  2194.             var40 = (byte)(var40 | 1);
  2195.          }
  2196.  
  2197.          if (var38 > var13) {
  2198.             var40 = (byte)(var40 | 2);
  2199.          }
  2200.  
  2201.          if (var39 < -var14) {
  2202.             var40 = (byte)(var40 | 4);
  2203.          }
  2204.  
  2205.          if (var39 > var14) {
  2206.             var40 = (byte)(var40 | 8);
  2207.          }
  2208.  
  2209.          if (var36 < var15) {
  2210.             var40 = (byte)(var40 | 16);
  2211.          }
  2212.  
  2213.          if (var36 > var16) {
  2214.             var40 = (byte)(var40 | 32);
  2215.          }
  2216.  
  2217.          var4[var30] = var40;
  2218.       }
  2219.  
  2220.    }
  2221.  
  2222.    // $FF: renamed from: a (int, int, java.lang.String) void
  2223.    public void method_38(int var1, int var2, String var3) {
  2224.       float var4 = 0.0F;
  2225.       float var5 = 0.0F;
  2226.       float var6 = 0.0F;
  2227.       switch (var2) {
  2228.          case 0:
  2229.             var4 = 0.0F;
  2230.             var5 = this.field_31 + this.field_125;
  2231.             break;
  2232.          case 1:
  2233.             var4 = 45.0F * this.field_121;
  2234.             var5 = this.field_32 + this.field_125;
  2235.             var6 = this.field_32 + this.field_126;
  2236.             break;
  2237.          case 2:
  2238.             var4 = 90.0F * this.field_121;
  2239.             var6 = this.field_31 + this.field_125;
  2240.             break;
  2241.          case 3:
  2242.             var4 = 135.0F * this.field_121;
  2243.             var5 = -this.field_32 - this.field_125;
  2244.             var6 = this.field_32 + this.field_126;
  2245.             break;
  2246.          case 4:
  2247.             var4 = 180.0F * this.field_121;
  2248.             var5 = -this.field_31 - this.field_125;
  2249.             break;
  2250.          case 5:
  2251.             var4 = 225.0F * this.field_121;
  2252.             var5 = -this.field_32 - this.field_125;
  2253.             var6 = -this.field_32 - this.field_126;
  2254.             break;
  2255.          case 6:
  2256.             var4 = 270.0F * this.field_121;
  2257.             var6 = -this.field_31 - this.field_125;
  2258.             break;
  2259.          case 7:
  2260.             var4 = 315.0F * this.field_121;
  2261.             var5 = this.field_32 + this.field_125;
  2262.             var6 = -this.field_32 - this.field_126;
  2263.       }
  2264.  
  2265.       float var9 = 0.0F;
  2266.       int[] var10 = new int[var3.length()];
  2267.  
  2268.       for(int var7 = 0; var7 < var3.length(); ++var7) {
  2269.          char var8 = var3.charAt(var7);
  2270.          int var11 = var8 - 64;
  2271.          if (var11 > 0 & var11 < 27) {
  2272.             var10[var7] = var11;
  2273.             var9 += (float)this.field_33[var11];
  2274.          } else {
  2275.             var10[var7] = var11;
  2276.             var9 += (float)this.field_142;
  2277.          }
  2278.       }
  2279.  
  2280.       if (this.field_79[var1] < var9) {
  2281.          this.field_79[var1] = var9;
  2282.       }
  2283.  
  2284.       float var15 = var9 / 2.0F;
  2285.       float var12 = -var15;
  2286.  
  2287.       for(int var14 = 0; var14 < var3.length(); ++var14) {
  2288.          int var13 = var10[var14];
  2289.          if (var13 > 0) {
  2290.             this.field_109[var1][var2][var14] = this.method_2(var13);
  2291.             this.field_110[var1][var2][var14 * 4] = var5;
  2292.             this.field_110[var1][var2][var14 * 4 + 1] = var6;
  2293.             this.field_110[var1][var2][var14 * 4 + 2] = var4;
  2294.             this.field_110[var1][var2][var14 * 4 + 3] = var12 + (float)(this.field_33[var13] / 2);
  2295.             var12 += (float)this.field_33[var13];
  2296.          } else {
  2297.             this.field_109[var1][var2][var14] = -1;
  2298.             var12 += (float)this.field_142;
  2299.          }
  2300.       }
  2301.  
  2302.    }
  2303.  
  2304.    // $FF: renamed from: a (int[], int, int[]) void
  2305.    public void method_39(int[] var1, int var2, int[] var3) {
  2306.       int var10 = this.field_24[this.field_0][0];
  2307.       int var11 = this.field_24[this.field_0][1];
  2308.       int[] var16 = this.field_134;
  2309.       int[] var17 = this.field_135;
  2310.       int[] var18 = this.field_136;
  2311.  
  2312.       for(int var19 = 0; var19 < var2; ++var19) {
  2313.          int var9 = var1[var19];
  2314.          int var8 = var9 >> 16;
  2315.          int var7 = var9 & '\uffff';
  2316.          if (var8 != 32767) {
  2317.             int[] var12 = this.field_97[var8];
  2318.             int[] var13 = this.field_108[var8];
  2319.             int[] var14 = this.field_98[var8];
  2320.             int[] var15 = this.field_99[var8];
  2321.             int var4 = var12[var7 << 2];
  2322.             int var5 = var12[(var7 << 2) + 1];
  2323.             int var6 = var12[(var7 << 2) + 2];
  2324.             int var20 = var12[(var7 << 2) + 3];
  2325.             var16[0] = var13[var4 << 2];
  2326.             var16[1] = var13[(var4 << 2) + 1];
  2327.             var17[0] = var13[var5 << 2];
  2328.             var17[1] = var13[(var5 << 2) + 1];
  2329.             var18[0] = var13[var6 << 2];
  2330.             var18[1] = var13[(var6 << 2) + 1];
  2331.             var16[0] = var16[0] + '\uffff' & -65536;
  2332.             var16[1] = var16[1] + '\uffff' & -65536;
  2333.             var17[0] = var17[0] + '\uffff' & -65536;
  2334.             var17[1] = var17[1] + '\uffff' & -65536;
  2335.             var18[0] = var18[0] + '\uffff' & -65536;
  2336.             var18[1] = var18[1] + '\uffff' & -65536;
  2337.             var16[4] = var14[var4];
  2338.             var17[4] = var14[var5];
  2339.             var18[4] = var14[var6];
  2340.             if (this.field_155) {
  2341.                var16[2] = var15[var4 << 1];
  2342.                var16[3] = var15[(var4 << 1) + 1];
  2343.                var17[2] = var15[var5 << 1];
  2344.                var17[3] = var15[(var5 << 1) + 1];
  2345.                var18[2] = var15[var6 << 1];
  2346.                var18[3] = var15[(var6 << 1) + 1];
  2347.                if (var20 == 0) {
  2348.                   this.method_56(var16, var17, var18, this.field_150, var3, var10, var11);
  2349.                } else if (var20 == 1) {
  2350.                   this.method_56(var16, var17, var18, this.field_151, var3, var10, var11);
  2351.                } else {
  2352.                   this.method_56(var16, var17, var18, this.field_149, var3, var10, var11);
  2353.                }
  2354.             } else {
  2355.                this.method_57(var16, var17, var18, this.field_120[var20], var3, var10, var11);
  2356.             }
  2357.          }
  2358.       }
  2359.  
  2360.    }
  2361.  
  2362.    // $FF: renamed from: t () void
  2363.    public void method_40() {
  2364.       this.method_55(this.field_159, this.field_158, this.field_92, this.field_160, this.field_147);
  2365.       this.method_29();
  2366.       this.method_39(this.field_160, this.field_92, this.field_26[this.field_0]);
  2367.       this.method_18();
  2368.    }
  2369.  
  2370.    // $FF: renamed from: a (float[], float, float, float, float, float, float) void
  2371.    public void method_41(float[] var1, float var2, float var3, float var4, float var5, float var6, float var7) {
  2372.       float var8 = (float)Math.sin((double)var2);
  2373.       float var9 = (float)Math.cos((double)var2);
  2374.       float var10 = (float)Math.sin((double)var3);
  2375.       float var11 = (float)Math.cos((double)var3);
  2376.       float var12 = (float)Math.sin((double)var4);
  2377.       float var13 = (float)Math.cos((double)var4);
  2378.       float var14 = var8 * var12;
  2379.       float var15 = var8 * var13;
  2380.       var1[0] = var11 * var13 + var14 * var10;
  2381.       var1[3] = var15 * var10 - var12 * var11;
  2382.       var1[6] = var10 * var9;
  2383.       var1[1] = var12 * var9;
  2384.       var1[4] = var9 * var13;
  2385.       var1[7] = -var8;
  2386.       var1[2] = var14 * var11 - var10 * var13;
  2387.       var1[5] = var10 * var12 + var15 * var11;
  2388.       var1[8] = var9 * var11;
  2389.       var1[9] = var5;
  2390.       var1[10] = var6;
  2391.       var1[11] = var7;
  2392.    }
  2393.  
  2394.    public void run() {
  2395.       if (this.field_52) {
  2396.          this.method_24();
  2397.       }
  2398.  
  2399.       Thread var1 = Thread.currentThread();
  2400.       var1.setPriority(this.field_128);
  2401.       this.field_152 = 0;
  2402.       Graphics var2 = ((Component)this).getGraphics();
  2403.       if (this.field_117 != null && !this.field_11) {
  2404.          this.field_11 = this.method_10();
  2405.       }
  2406.  
  2407.       System.gc();
  2408.  
  2409.       while(this.field_154 != null) {
  2410.          ++this.field_152;
  2411.          if (!this.field_19) {
  2412.             System.arraycopy(this.field_36, 0, this.field_141, 0, this.field_156);
  2413.          } else {
  2414.             for(int var3 = 0; var3 < this.field_156; ++var3) {
  2415.                this.field_141[var3] = (this.field_141[var3] & 16711422) >> 1;
  2416.             }
  2417.          }
  2418.  
  2419.          this.method_4();
  2420.          this.method_27();
  2421.          this.method_40();
  2422.          this.method_42();
  2423.          if (++this.field_21 == this.field_78) {
  2424.             System.gc();
  2425.             this.field_21 = 0;
  2426.          }
  2427.  
  2428.          try {
  2429.             this.method_36();
  2430.          } catch (NoSuchMethodError var4) {
  2431.          }
  2432.  
  2433.          this.method_19(var2);
  2434.          this.method_58();
  2435.       }
  2436.  
  2437.    }
  2438.  
  2439.    // $FF: renamed from: u () void
  2440.    public void method_42() {
  2441.       int[] var1 = this.field_141;
  2442.       int var2 = this.field_77 + 1;
  2443.       if (this.field_49 == 1) {
  2444.          for(int var10 = 1; var10 < this.field_76 - 1; ++var10) {
  2445.             for(int var11 = 1; var11 < this.field_77 - 1; ++var11) {
  2446.                var1[var2] = ((var1[var2] & 16711422) >> 1) + ((var1[var2 + 1] & 16316664) >> 3) + ((var1[var2 - 1] & 16316664) >> 3) + ((var1[var2 + this.field_77] & 16316664) >> 3) + ((var1[var2 - this.field_77] & 16316664) >> 3);
  2447.                ++var2;
  2448.             }
  2449.  
  2450.             var2 += 2;
  2451.          }
  2452.  
  2453.       } else {
  2454.          if (this.field_49 == 2) {
  2455.             for(int var3 = 1; var3 < this.field_76 - 1; ++var3) {
  2456.                for(int var4 = 1; var4 < this.field_77 - 1; ++var4) {
  2457.                   int var5 = (var1[var2] & 16711422) >> 1;
  2458.                   int var6 = ((var1[var2 + 1] & 16316664) >> 2) + ((var1[var2 - 1] & 16316664) >> 2) + ((var1[var2 + this.field_77] & 16316664) >> 2) + ((var1[var2 - this.field_77] & 16316664) >> 2);
  2459.                   int var7;
  2460.                   if ((var7 = (var5 & 16711680) + (var6 & 16711680)) > 16711680) {
  2461.                      var7 = 16711680;
  2462.                   }
  2463.  
  2464.                   int var8;
  2465.                   if ((var8 = (var5 & '\uff00') + (var6 & '\uff00')) > 65280) {
  2466.                      var8 = 65280;
  2467.                   }
  2468.  
  2469.                   int var9;
  2470.                   if ((var9 = (var5 & 255) + (var6 & 255)) > 255) {
  2471.                      var9 = 255;
  2472.                   }
  2473.  
  2474.                   var1[var2] = var7 | var8 | var9;
  2475.                   ++var2;
  2476.                }
  2477.  
  2478.                var2 += 2;
  2479.             }
  2480.          }
  2481.  
  2482.       }
  2483.    }
  2484.  
  2485.    // $FF: renamed from: a (float[], float, float, float) void
  2486.    public void method_43(float[] var1, float var2, float var3, float var4) {
  2487.       var1[0] = var2;
  2488.       var1[1] = 0.0F;
  2489.       var1[2] = 0.0F;
  2490.       var1[3] = 0.0F;
  2491.       var1[4] = var3;
  2492.       var1[5] = 0.0F;
  2493.       var1[6] = 0.0F;
  2494.       var1[7] = 0.0F;
  2495.       var1[8] = var4;
  2496.       var1[9] = 0.0F;
  2497.       var1[10] = 0.0F;
  2498.       var1[11] = 0.0F;
  2499.    }
  2500.  
  2501.    // $FF: renamed from: a (int, int, int, int) byte
  2502.    byte method_44(int var1, int var2, int var3, int var4) {
  2503.       int var5 = var1 - var2;
  2504.       if (var5 >= var3) {
  2505.          return (byte)var5;
  2506.       } else {
  2507.          int var6 = var3 - var5 - 1;
  2508.          return (byte)(var4 - var6);
  2509.       }
  2510.    }
  2511.  
  2512.    // $FF: renamed from: c (int, int) void
  2513.    public void method_45(int var1, int var2) {
  2514.       this.field_93[var1] = var2;
  2515.    }
  2516.  
  2517.    // $FF: renamed from: a (int, float, float, float) void
  2518.    public void method_46(int var1, float var2, float var3, float var4) {
  2519.       this.field_23[var1][0] = var2;
  2520.       this.field_23[var1][1] = var3;
  2521.       this.field_23[var1][2] = var4;
  2522.    }
  2523.  
  2524.    // $FF: renamed from: d (int, int) void
  2525.    public void method_47(int var1, int var2) {
  2526.       this.field_25[var1][0] = var2;
  2527.    }
  2528.  
  2529.    // $FF: renamed from: a (int, float[]) void
  2530.    public void method_48(int var1, float[] var2) {
  2531.       System.arraycopy(var2, 0, this.field_71[var1], 0, 12);
  2532.    }
  2533.  
  2534.    // $FF: renamed from: b (int, float[]) void
  2535.    public void method_49(int var1, float[] var2) {
  2536.       System.arraycopy(var2, 0, this.field_100[var1], 0, 12);
  2537.    }
  2538.  
  2539.    // $FF: renamed from: e (int, int) void
  2540.    public void method_50(int var1, int var2) {
  2541.       this.field_104[var1] = var2;
  2542.    }
  2543.  
  2544.    // $FF: renamed from: b (int, float, float, float) void
  2545.    public void method_51(int var1, float var2, float var3, float var4) {
  2546.       this.field_23[var1][3] = var2;
  2547.       this.field_23[var1][4] = var3;
  2548.       this.field_23[var1][5] = var4;
  2549.    }
  2550.  
  2551.    // $FF: renamed from: f (int, int) void
  2552.    public void method_52(int var1, int var2) {
  2553.       this.field_25[var1][1] = var2;
  2554.    }
  2555.  
  2556.    // $FF: renamed from: v () void
  2557.    public void method_53() {
  2558.       float[] var1 = this.field_27;
  2559.       float[] var2 = this.field_22;
  2560.       int var3 = this.field_0;
  2561.       float var4 = this.field_23[var3][0];
  2562.       float var5 = this.field_23[var3][1];
  2563.       float var6 = this.field_23[var3][2];
  2564.       float var7 = this.field_23[var3][3];
  2565.       float var8 = this.field_23[var3][4];
  2566.       float var9 = this.field_23[var3][5];
  2567.       if (this.field_25[var3][0] != -1) {
  2568.          int var10 = this.field_25[var3][0];
  2569.          float var11 = this.field_101[var10][0];
  2570.          float var12 = this.field_101[var10][1];
  2571.          float var13 = this.field_101[var10][2];
  2572.          float var14 = this.field_101[var10][3];
  2573.          float var15 = this.field_101[var10][4];
  2574.          float var16 = this.field_101[var10][5];
  2575.          float var17 = this.field_101[var10][6];
  2576.          float var18 = this.field_101[var10][7];
  2577.          float var19 = this.field_101[var10][8];
  2578.          float var20 = this.field_101[var10][9];
  2579.          float var21 = this.field_101[var10][10];
  2580.          float var22 = this.field_101[var10][11];
  2581.          float var23 = var4;
  2582.          float var24 = var5;
  2583.          var4 = var4 * var11 + var5 * var14 + var6 * var17 + var20;
  2584.          var5 = var23 * var12 + var5 * var15 + var6 * var18 + var21;
  2585.          var6 = var23 * var13 + var24 * var16 + var6 * var19 + var22;
  2586.       }
  2587.  
  2588.       if (this.field_25[var3][1] != -1) {
  2589.          int var26 = this.field_25[var3][1];
  2590.          float var29 = this.field_101[var26][0];
  2591.          float var30 = this.field_101[var26][1];
  2592.          float var33 = this.field_101[var26][2];
  2593.          float var34 = this.field_101[var26][3];
  2594.          float var37 = this.field_101[var26][4];
  2595.          float var38 = this.field_101[var26][5];
  2596.          float var40 = this.field_101[var26][6];
  2597.          float var41 = this.field_101[var26][7];
  2598.          float var43 = this.field_101[var26][8];
  2599.          float var44 = this.field_101[var26][9];
  2600.          float var46 = this.field_101[var26][10];
  2601.          float var47 = this.field_101[var26][11];
  2602.          float var48 = var7;
  2603.          float var49 = var8;
  2604.          var7 = var7 * var29 + var8 * var34 + var9 * var40 + var44;
  2605.          var8 = var48 * var30 + var8 * var37 + var9 * var41 + var46;
  2606.          var9 = var48 * var33 + var49 * var38 + var9 * var43 + var47;
  2607.       }
  2608.  
  2609.       double var27 = (double)(var4 - var7);
  2610.       double var31 = (double)(var5 - var8);
  2611.       double var35 = (double)(var6 - var9);
  2612.       double var39 = Math.sqrt(var35 * var35 + var31 * var31 + var27 * var27);
  2613.       var31 /= var39;
  2614.       double var42 = Math.sqrt((double)1.0F - var31 * var31);
  2615.       var1[0] = 1.0F;
  2616.       var1[1] = 0.0F;
  2617.       var1[2] = 0.0F;
  2618.       var1[3] = 0.0F;
  2619.       var1[4] = 1.0F;
  2620.       var1[5] = 0.0F;
  2621.       var1[6] = 0.0F;
  2622.       var1[7] = 0.0F;
  2623.       var1[8] = 1.0F;
  2624.       if (var35 != (double)0.0F & var27 != (double)0.0F) {
  2625.          double var45 = Math.sqrt(var27 * var27 + var35 * var35);
  2626.          var35 /= var45;
  2627.          var27 /= var45;
  2628.          var2[0] = (float)(-var35);
  2629.          var2[1] = 0.0F;
  2630.          var2[2] = (float)(-var27);
  2631.          var2[3] = 0.0F;
  2632.          var2[4] = 1.0F;
  2633.          var2[5] = 0.0F;
  2634.          var2[6] = (float)var27;
  2635.          var2[7] = 0.0F;
  2636.          var2[8] = (float)(-var35);
  2637.          this.method_13(var1, var2);
  2638.       }
  2639.  
  2640.       var2[0] = 1.0F;
  2641.       var2[1] = 0.0F;
  2642.       var2[2] = 0.0F;
  2643.       var2[3] = 0.0F;
  2644.       var2[4] = (float)var42;
  2645.       var2[5] = (float)(-var31);
  2646.       var2[6] = 0.0F;
  2647.       var2[7] = (float)var31;
  2648.       var2[8] = (float)var42;
  2649.       this.method_13(var1, var2);
  2650.       var1[9] = -var4 * var1[0] - var5 * var1[3] - var6 * var1[6];
  2651.       var1[10] = -var4 * var1[1] - var5 * var1[4] - var6 * var1[7];
  2652.       var1[11] = -var4 * var1[2] - var5 * var1[5] - var6 * var1[8];
  2653.    }
  2654.  
  2655.    // $FF: renamed from: a (int, int, int) void
  2656.    public void method_54(int var1, int var2, int var3) {
  2657.       int var4 = this.field_28[var1];
  2658.       this.method_41(this.field_137, this.field_13, this.field_14, this.field_17, (float)var2, 0.0F, (float)(160 + var3));
  2659.       this.method_49(var4, this.field_137);
  2660.       this.method_45(var4, 0);
  2661.       this.method_43(this.field_138, 1.0F, 1.0F, this.field_123[var1]);
  2662.       this.method_41(this.field_137, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0F);
  2663.       this.method_13(this.field_137, this.field_138);
  2664.       this.method_49(this.field_122[var1], this.field_137);
  2665.       this.method_45(this.field_122[var1], 1);
  2666.       this.method_50(this.field_122[var1], var4);
  2667.  
  2668.       for(int var5 = 0; var5 < this.field_86; ++var5) {
  2669.          if (this.field_110[var1][var5] != null) {
  2670.             for(int var6 = 0; var6 < this.field_88[var1][var5]; ++var6) {
  2671.                if (this.field_109[var1][var5][var6] != -1) {
  2672.                   this.method_41(this.field_137, this.field_110[var1][var5][var6 * 4 + 2], -90.0F * this.field_121, 0.0F, this.field_110[var1][var5][var6 * 4], this.field_110[var1][var5][var6 * 4 + 1], this.field_110[var1][var5][var6 * 4 + 3]);
  2673.                   this.method_49(this.field_109[var1][var5][var6], this.field_137);
  2674.                   this.method_45(this.field_109[var1][var5][var6], 1);
  2675.                   this.method_50(this.field_109[var1][var5][var6], var4);
  2676.                }
  2677.             }
  2678.          }
  2679.       }
  2680.  
  2681.    }
  2682.  
  2683.    // $FF: renamed from: a (int[], int[], int, int[], int[]) void
  2684.    public void method_55(int[] var1, int[] var2, int var3, int[] var4, int[] var5) {
  2685.       int var9 = 0;
  2686.  
  2687.       for(int var6 = 0; var6 < 512; ++var6) {
  2688.          var5[var6] = 0;
  2689.       }
  2690.  
  2691.       for(int var10 = 0; var10 < var3; ++var10) {
  2692.          ++var5[var2[var10]];
  2693.       }
  2694.  
  2695.       for(int var11 = 0; var11 < 512; ++var11) {
  2696.          int var7 = var5[var11];
  2697.          if (var7 != 0) {
  2698.             var5[var11] = var9;
  2699.             var9 += var7;
  2700.          }
  2701.       }
  2702.  
  2703.       for(int var12 = 0; var12 < var3; ++var12) {
  2704.          int var8 = var2[var12];
  2705.          int var13 = var5[var8];
  2706.          var4[var13] = var1[var12];
  2707.          int var10002 = var5[var8]++;
  2708.       }
  2709.  
  2710.    }
  2711.  
  2712.    public synchronized void start() {
  2713.       if (this.field_154 == null) {
  2714.          this.field_154 = new Thread(this);
  2715.          this.field_154.start();
  2716.          if (this.field_52) {
  2717.             this.method_24();
  2718.             this.field_56.show();
  2719.          }
  2720.       }
  2721.  
  2722.    }
  2723.  
  2724.    public synchronized void stop() {
  2725.       if (this.field_154 != null && this.field_154.isAlive()) {
  2726.          this.field_154.stop();
  2727.       }
  2728.  
  2729.       if (this.field_52) {
  2730.          this.field_56.hide();
  2731.       }
  2732.  
  2733.       this.field_154 = null;
  2734.    }
  2735.  
  2736.    // $FF: renamed from: a (int[], int[], int[], int[], int[], int, int) void
  2737.    public void method_56(int[] var1, int[] var2, int[] var3, int[] var4, int[] var5, int var6, int var7) {
  2738.       int var12 = 0;
  2739.       int var13 = 0;
  2740.       int var14 = 0;
  2741.       int var15 = 0;
  2742.       int var16 = 0;
  2743.       int var36 = var1[1] >> 16;
  2744.       int var37 = var2[1] >> 16;
  2745.       int var38 = var3[1] >> 16;
  2746.       if (var36 > var37) {
  2747.          int[] var8 = var1;
  2748.          var1 = var2;
  2749.          var2 = var8;
  2750.          int var39 = var36;
  2751.          var36 = var37;
  2752.          var37 = var39;
  2753.       }
  2754.  
  2755.       if (var36 > var38) {
  2756.          int[] var40 = var1;
  2757.          var1 = var3;
  2758.          var3 = var40;
  2759.          int var52 = var36;
  2760.          var36 = var38;
  2761.          var38 = var52;
  2762.       }
  2763.  
  2764.       if (var37 > var38) {
  2765.          int[] var41 = var2;
  2766.          var2 = var3;
  2767.          var3 = var41;
  2768.          int var53 = var37;
  2769.          var37 = var38;
  2770.          var38 = var53;
  2771.       }
  2772.  
  2773.       int var9 = var37 - var36;
  2774.       int var10 = var38 - var36;
  2775.       int var11 = var38 - var37;
  2776.       if (var10 != 0) {
  2777.          var13 = (var3[0] - var1[0]) / var10;
  2778.          var15 = (var3[2] - var1[2]) / var10;
  2779.          var16 = (var3[3] - var1[3]) / var10;
  2780.       }
  2781.  
  2782.       if (var9 != 0) {
  2783.          var12 = (var2[0] - var1[0]) / var9;
  2784.       }
  2785.  
  2786.       if (var11 != 0) {
  2787.          var14 = (var3[0] - var2[0]) / var11;
  2788.       }
  2789.  
  2790.       int var19 = var9 * var13 + var1[0];
  2791.       int var20 = var9 * var15 + var1[2];
  2792.       int var21 = var9 * var16 + var1[3];
  2793.       int var26 = var19 - var2[0] >> 16;
  2794.       if (var26 != 0) {
  2795.          int var33 = ((var20 - var2[2]) / var26 & 16776960) << 8 | ((var21 - var2[3]) / var26 & 16776960) >> 8;
  2796.          int var35 = var6 << 16;
  2797.          int var30 = var36;
  2798.          int var31 = var37;
  2799.          int var32 = var38;
  2800.          int var23 = var1[0];
  2801.          int var24 = var23;
  2802.          int var25 = (var1[2] & 16776960) << 8 | (var1[3] & 16776960) >> 8;
  2803.          if (var9 != 0) {
  2804.             int var17;
  2805.             int var18;
  2806.             int var22;
  2807.             if (var19 >= var2[0]) {
  2808.                var17 = var12;
  2809.                var18 = var13;
  2810.                var22 = ((var2[2] - var1[2]) / var9 & 16776960) << 8 | ((var2[3] - var1[3]) / var9 & 16776960) >> 8;
  2811.             } else {
  2812.                var17 = var13;
  2813.                var18 = var12;
  2814.                var22 = (var15 & 16776960) << 8 | (var16 & 16776960) >> 8;
  2815.             }
  2816.  
  2817.             for(int var29 = var36 * var6; var30 < var31; ++var30) {
  2818.                int var27 = (var23 >> 16) + var29;
  2819.                int var28 = (var24 >> 16) + var29;
  2820.                int var34 = var25;
  2821.                if (var30 >= 0 && var30 < var7) {
  2822.                   if (var24 >= var35) {
  2823.                      var28 = var29 + var6 - 1;
  2824.                   }
  2825.  
  2826.                   if (var23 < 0) {
  2827.                      var34 = var25 + var33 * (var29 - var27);
  2828.                      var27 = var29;
  2829.                   }
  2830.  
  2831.                   while(var27 < var28) {
  2832.                      var5[var27++] = var4[var34 >> 24 & 255 | var34 & '\uff00'];
  2833.                      var34 += var33;
  2834.                   }
  2835.                }
  2836.  
  2837.                var23 += var17;
  2838.                var24 += var18;
  2839.                var25 += var22;
  2840.                var29 += var6;
  2841.             }
  2842.          }
  2843.  
  2844.          if (var11 != 0) {
  2845.             int var42;
  2846.             int var43;
  2847.             int var44;
  2848.             if (var19 >= var2[0]) {
  2849.                var23 = var2[0];
  2850.                var24 = var19;
  2851.                var42 = var14;
  2852.                var43 = var13;
  2853.                var25 = (var2[2] & 16776960) << 8 | (var2[3] & 16776960) >> 8;
  2854.                var44 = ((var3[2] - var2[2]) / var11 & 16776960) << 8 | ((var3[3] - var2[3]) / var11 & 16776960) >> 8;
  2855.             } else {
  2856.                var23 = var19;
  2857.                var24 = var2[0];
  2858.                var42 = var13;
  2859.                var43 = var14;
  2860.                var25 = (var20 & 16776960) << 8 | (var21 & 16776960) >> 8;
  2861.                var44 = (var15 & 16776960) << 8 | (var16 & 16776960) >> 8;
  2862.             }
  2863.  
  2864.             for(int var50 = var31 * var6; var31 < var32; ++var31) {
  2865.                int var48 = (var23 >> 16) + var50;
  2866.                int var49 = (var24 >> 16) + var50;
  2867.                int var51 = var25;
  2868.                if (var31 >= 0 && var31 < var7) {
  2869.                   if (var24 >= var35) {
  2870.                      var49 = var50 + var6 - 1;
  2871.                   }
  2872.  
  2873.                   if (var23 < 0) {
  2874.                      var51 = var25 + var33 * (var50 - var48);
  2875.                      var48 = var50;
  2876.                   }
  2877.  
  2878.                   while(var48 < var49) {
  2879.                      var5[var48++] = var4[var51 >> 24 & 255 | var51 & '\uff00'];
  2880.                      var51 += var33;
  2881.                   }
  2882.                }
  2883.  
  2884.                var23 += var42;
  2885.                var24 += var43;
  2886.                var25 += var44;
  2887.                var50 += var6;
  2888.             }
  2889.          }
  2890.       }
  2891.  
  2892.    }
  2893.  
  2894.    // $FF: renamed from: b (int[], int[], int[], int[], int[], int, int) void
  2895.    public void method_57(int[] var1, int[] var2, int[] var3, int[] var4, int[] var5, int var6, int var7) {
  2896.       Object var8 = null;
  2897.       this.field_169 = var1[1] >> 16;
  2898.       this.field_172 = var2[1] >> 16;
  2899.       this.field_175 = var3[1] >> 16;
  2900.       if (this.field_169 > this.field_172) {
  2901.          int[] var11 = var1;
  2902.          var1 = var2;
  2903.          var2 = var11;
  2904.          this.field_148 = this.field_169;
  2905.          this.field_169 = this.field_172;
  2906.          this.field_172 = this.field_148;
  2907.       }
  2908.  
  2909.       if (this.field_169 > this.field_175) {
  2910.          int[] var12 = var1;
  2911.          var1 = var3;
  2912.          var3 = var12;
  2913.          this.field_148 = this.field_169;
  2914.          this.field_169 = this.field_175;
  2915.          this.field_175 = this.field_148;
  2916.       }
  2917.  
  2918.       if (this.field_172 > this.field_175) {
  2919.          int[] var13 = var2;
  2920.          var2 = var3;
  2921.          var3 = var13;
  2922.          this.field_148 = this.field_172;
  2923.          this.field_172 = this.field_175;
  2924.          this.field_175 = this.field_148;
  2925.       }
  2926.  
  2927.       this.field_45 = this.field_172 - this.field_169;
  2928.       this.field_46 = this.field_175 - this.field_169;
  2929.       this.field_47 = this.field_175 - this.field_172;
  2930.       if (this.field_46 != 0) {
  2931.          this.field_43 = (var3[0] - var1[0]) / this.field_46;
  2932.          this.field_41 = (var3[4] - var1[4]) / this.field_46;
  2933.       }
  2934.  
  2935.       if (this.field_45 != 0) {
  2936.          this.field_42 = (var2[0] - var1[0]) / this.field_45;
  2937.       }
  2938.  
  2939.       if (this.field_47 != 0) {
  2940.          this.field_44 = (var3[0] - var2[0]) / this.field_47;
  2941.       }
  2942.  
  2943.       this.field_65 = this.field_45 * this.field_43 + var1[0];
  2944.       this.field_64 = this.field_45 * this.field_41 + var1[4];
  2945.       this.field_48 = this.field_65 - var2[0] >> 16;
  2946.       if (this.field_48 != 0) {
  2947.          this.field_161 = var6 << 16;
  2948.          this.field_168 = this.field_169;
  2949.          this.field_171 = this.field_172;
  2950.          this.field_174 = this.field_175;
  2951.          this.field_164 = var1[0];
  2952.          this.field_163 = this.field_164;
  2953.          this.field_57 = var1[4];
  2954.          int var9 = ((this.field_64 & 16711680) - (var2[4] & 16711680)) / this.field_48;
  2955.          this.field_145 = var9;
  2956.          if (this.field_45 != 0) {
  2957.             if (this.field_65 >= var2[0]) {
  2958.                this.field_38 = this.field_42;
  2959.                this.field_39 = this.field_43;
  2960.                this.field_37 = (var2[4] - var1[4]) / this.field_45;
  2961.             } else {
  2962.                this.field_38 = this.field_43;
  2963.                this.field_39 = this.field_42;
  2964.                this.field_37 = this.field_41;
  2965.             }
  2966.  
  2967.             for(this.field_8 = this.field_168 * var6; this.field_168 <= this.field_171; ++this.field_168) {
  2968.                this.field_167 = (this.field_164 >> 16) + this.field_8;
  2969.                this.field_165 = (this.field_163 >> 16) + this.field_8;
  2970.                this.field_63 = this.field_57;
  2971.                if (this.field_168 >= 0 && this.field_168 < var7) {
  2972.                   if (this.field_163 >= this.field_161) {
  2973.                      this.field_165 = this.field_8 + var6 - 1;
  2974.                   }
  2975.  
  2976.                   if (this.field_164 < 0) {
  2977.                      int var10 = this.field_8 - this.field_167;
  2978.                      this.field_63 += this.field_145 * var10;
  2979.                      this.field_167 = this.field_8;
  2980.                   }
  2981.  
  2982.                   while(this.field_167 <= this.field_165) {
  2983.                      if (this.field_63 < 2) {
  2984.                         this.field_63 = 2;
  2985.                      } else if (this.field_63 > 16252928) {
  2986.                         this.field_63 = 16252928;
  2987.                      }
  2988.  
  2989.                      var5[this.field_167++] = var4[this.field_63 >> 16 & 255];
  2990.                      this.field_63 += this.field_145;
  2991.                   }
  2992.                }
  2993.  
  2994.                this.field_164 += this.field_38;
  2995.                this.field_163 += this.field_39;
  2996.                this.field_57 += this.field_37;
  2997.                this.field_8 += var6;
  2998.             }
  2999.          }
  3000.  
  3001.          if (this.field_47 != 0) {
  3002.             if (this.field_65 >= var2[0]) {
  3003.                this.field_164 = var2[0];
  3004.                this.field_163 = this.field_65;
  3005.                this.field_38 = this.field_44;
  3006.                this.field_39 = this.field_43;
  3007.                this.field_57 = var2[4];
  3008.                this.field_37 = (var3[4] - var2[4]) / this.field_47;
  3009.             } else {
  3010.                this.field_164 = this.field_65;
  3011.                this.field_163 = var2[0];
  3012.                this.field_38 = this.field_43;
  3013.                this.field_39 = this.field_44;
  3014.                this.field_57 = this.field_64;
  3015.                this.field_37 = this.field_41;
  3016.             }
  3017.  
  3018.             for(this.field_8 = this.field_171 * var6; this.field_171 <= this.field_174; ++this.field_171) {
  3019.                this.field_167 = (this.field_164 >> 16) + this.field_8;
  3020.                this.field_165 = (this.field_163 >> 16) + this.field_8;
  3021.                this.field_63 = this.field_57;
  3022.                if (this.field_171 >= 0 && this.field_171 < var7) {
  3023.                   if (this.field_163 >= this.field_161) {
  3024.                      this.field_165 = this.field_8 + var6 - 1;
  3025.                   }
  3026.  
  3027.                   if (this.field_164 < 0) {
  3028.                      int var14 = this.field_8 - this.field_167;
  3029.                      this.field_63 += this.field_145 * var14;
  3030.                      this.field_167 = this.field_8;
  3031.                   }
  3032.  
  3033.                   while(this.field_167 <= this.field_165) {
  3034.                      if (this.field_63 < 2) {
  3035.                         this.field_63 = 2;
  3036.                      } else if (this.field_63 > 16252928) {
  3037.                         this.field_63 = 16252928;
  3038.                      }
  3039.  
  3040.                      var5[this.field_167++] = var4[this.field_63 >> 16 & 255];
  3041.                      this.field_63 += this.field_145;
  3042.                   }
  3043.                }
  3044.  
  3045.                this.field_164 += this.field_38;
  3046.                this.field_163 += this.field_39;
  3047.                this.field_57 += this.field_37;
  3048.                this.field_8 += var6;
  3049.             }
  3050.          }
  3051.       }
  3052.  
  3053.    }
  3054.  
  3055.    public final void update(Graphics var1) {
  3056.       if (this.field_59 != null) {
  3057.          this.method_19(var1);
  3058.       }
  3059.  
  3060.    }
  3061.  
  3062.    // $FF: renamed from: w () void
  3063.    public synchronized void method_58() {
  3064.       Thread.yield();
  3065.       this.field_153.sync();
  3066.       long var1 = 10L - (System.currentTimeMillis() - this.field_40);
  3067.       if (var1 > 0L) {
  3068.          try {
  3069.             Thread.sleep(var1);
  3070.          } catch (InterruptedException var5) {
  3071.          }
  3072.       } else {
  3073.          try {
  3074.             Thread.sleep(1L);
  3075.          } catch (InterruptedException var4) {
  3076.          }
  3077.       }
  3078.  
  3079.       this.field_40 = System.currentTimeMillis();
  3080.  
  3081.       try {
  3082.          Thread.sleep((long)this.field_83);
  3083.       } catch (InterruptedException var3) {
  3084.       }
  3085.    }
  3086.  
  3087.    // $FF: renamed from: c (java.lang.String) java.lang.String
  3088.    private static String method_59(String var0) {
  3089.       char[] var1 = var0.toCharArray();
  3090.       int var2 = var1.length;
  3091.       int var3 = 0;
  3092.  
  3093.       label32:
  3094.       while(true) {
  3095.          int var4 = 0;
  3096.          byte var10000 = 44;
  3097.          char[] var10001 = var1;
  3098.          int var10002 = var3;
  3099.  
  3100.          label30:
  3101.          while(true) {
  3102.             var10001[var10002] ^= var10000;
  3103.  
  3104.             while(true) {
  3105.                ++var3;
  3106.                ++var4;
  3107.                if (var2 == var3) {
  3108.                   return new String(var1);
  3109.                }
  3110.  
  3111.                switch (var4) {
  3112.                   case 1:
  3113.                      var10000 = 71;
  3114.                      var10001 = var1;
  3115.                      var10002 = var3;
  3116.                      continue label30;
  3117.                   case 2:
  3118.                      var10000 = 109;
  3119.                      var10001 = var1;
  3120.                      var10002 = var3;
  3121.                      continue label30;
  3122.                   case 3:
  3123.                      var10000 = 11;
  3124.                      var10001 = var1;
  3125.                      var10002 = var3;
  3126.                      continue label30;
  3127.                   case 4:
  3128.                      var10000 = 124;
  3129.                      var10001 = var1;
  3130.                      var10002 = var3;
  3131.                      continue label30;
  3132.                   case 5:
  3133.                      continue label32;
  3134.                }
  3135.             }
  3136.          }
  3137.       }
  3138.    }
  3139. }
  3140.