home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / AnfyJava14 / data1.cab / Program_Files / Applet / ansnow / ansnow.class (.txt) next >
Encoding:
Java Class File  |  1999-04-19  |  19.5 KB  |  1,820 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.Dimension;
  6. import java.awt.Event;
  7. import java.awt.Font;
  8. import java.awt.FontMetrics;
  9. import java.awt.Frame;
  10. import java.awt.Graphics;
  11. import java.awt.Image;
  12. import java.awt.Label;
  13. import java.awt.LayoutManager;
  14. import java.awt.MediaTracker;
  15. import java.awt.Panel;
  16. import java.awt.Toolkit;
  17. import java.awt.image.ImageObserver;
  18. import java.io.ByteArrayOutputStream;
  19. import java.io.DataInputStream;
  20. import java.io.FilterInputStream;
  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. import java.util.Random;
  27.  
  28. public class ansnow extends Applet implements Runnable, ImageObserver {
  29.    // $FF: renamed from: a boolean
  30.    boolean field_0;
  31.    // $FF: renamed from: b boolean
  32.    boolean field_1 = false;
  33.    // $FF: renamed from: c int
  34.    private int field_2;
  35.    // $FF: renamed from: d java.awt.Frame
  36.    Frame field_3;
  37.    // $FF: renamed from: e boolean
  38.    boolean field_4 = false;
  39.    // $FF: renamed from: f java.lang.String
  40.    final String field_5 = method_15("c\u0015J\u000e/VEX\u001bjd\u0004X\u000b%\u0002&S\u0017)A\f\u001aJ=U\u0012\u0014\u0003$D\u001cP\u0003<CKY\r'");
  41.    // $FF: renamed from: g java.awt.Color
  42.    Color field_6;
  43.    // $FF: renamed from: h boolean
  44.    boolean field_7;
  45.    // $FF: renamed from: i int[]
  46.    int[] field_8;
  47.    // $FF: renamed from: j float[]
  48.    float[] field_9;
  49.    // $FF: renamed from: k int
  50.    int field_10;
  51.    // $FF: renamed from: l long
  52.    long field_11;
  53.    // $FF: renamed from: m int
  54.    int field_12;
  55.    // $FF: renamed from: n int
  56.    int field_13;
  57.    // $FF: renamed from: o int
  58.    int field_14;
  59.    // $FF: renamed from: p int
  60.    int field_15;
  61.    // $FF: renamed from: q int
  62.    int field_16;
  63.    // $FF: renamed from: r int
  64.    int field_17;
  65.    // $FF: renamed from: s int
  66.    int field_18;
  67.    // $FF: renamed from: t int
  68.    int field_19;
  69.    // $FF: renamed from: u java.awt.Font
  70.    Font field_20;
  71.    // $FF: renamed from: v int
  72.    int field_21 = 12;
  73.    // $FF: renamed from: w int
  74.    int field_22 = 8;
  75.    // $FF: renamed from: x int
  76.    int field_23 = 10;
  77.    // $FF: renamed from: y int
  78.    int field_24;
  79.    // $FF: renamed from: z int
  80.    int field_25;
  81.    // $FF: renamed from: A int
  82.    int field_26;
  83.    // $FF: renamed from: B int
  84.    int field_27;
  85.    // $FF: renamed from: C int
  86.    int field_28;
  87.    // $FF: renamed from: D int
  88.    int field_29;
  89.    // $FF: renamed from: E int[]
  90.    int[] field_30;
  91.    // $FF: renamed from: F float[]
  92.    float[] field_31;
  93.    // $FF: renamed from: G int
  94.    int field_32;
  95.    // $FF: renamed from: H float
  96.    float field_33;
  97.    // $FF: renamed from: I float
  98.    float field_34;
  99.    // $FF: renamed from: J float
  100.    float field_35;
  101.    // $FF: renamed from: K java.awt.Graphics
  102.    private Graphics field_36;
  103.    // $FF: renamed from: L int
  104.    int field_37;
  105.    // $FF: renamed from: M int
  106.    int field_38;
  107.    // $FF: renamed from: N int
  108.    int field_39;
  109.    // $FF: renamed from: O float
  110.    float field_40;
  111.    // $FF: renamed from: P float
  112.    float field_41;
  113.    // $FF: renamed from: Q java.awt.Image
  114.    private Image field_42;
  115.    // $FF: renamed from: R java.awt.Image
  116.    Image field_43;
  117.    // $FF: renamed from: S int
  118.    int field_44;
  119.    // $FF: renamed from: T int
  120.    int field_45;
  121.    // $FF: renamed from: U boolean
  122.    boolean field_46 = false;
  123.    // $FF: renamed from: V java.lang.String[]
  124.    String[] field_47;
  125.    // $FF: renamed from: W java.net.URL
  126.    URL field_48;
  127.    // $FF: renamed from: X int
  128.    int field_49;
  129.    // $FF: renamed from: Y int
  130.    int field_50;
  131.    // $FF: renamed from: Z java.lang.String
  132.    String field_51;
  133.    // $FF: renamed from: ba java.lang.String
  134.    String field_52;
  135.    // $FF: renamed from: bb int
  136.    int field_53;
  137.    // $FF: renamed from: bc boolean
  138.    boolean field_54 = false;
  139.    // $FF: renamed from: bd int[]
  140.    int[] field_55;
  141.    // $FF: renamed from: be float[]
  142.    float[] field_56;
  143.    // $FF: renamed from: bf int
  144.    int field_57;
  145.    // $FF: renamed from: bg java.awt.Graphics
  146.    private Graphics field_58;
  147.    // $FF: renamed from: bh java.awt.Image
  148.    private Image field_59;
  149.    // $FF: renamed from: bi boolean
  150.    boolean field_60 = false;
  151.    // $FF: renamed from: bj float
  152.    float field_61;
  153.    // $FF: renamed from: bk java.awt.Image
  154.    private Image field_62;
  155.    // $FF: renamed from: bl boolean
  156.    boolean field_63;
  157.    // $FF: renamed from: bm int
  158.    int field_64;
  159.    // $FF: renamed from: bn int
  160.    int field_65;
  161.    // $FF: renamed from: bo int
  162.    int field_66;
  163.    // $FF: renamed from: bp java.util.Random
  164.    Random field_67;
  165.    // $FF: renamed from: bq int
  166.    int field_68;
  167.    // $FF: renamed from: br int
  168.    int field_69;
  169.    // $FF: renamed from: bs boolean
  170.    boolean field_70 = false;
  171.    // $FF: renamed from: bt java.lang.String
  172.    String field_71;
  173.    // $FF: renamed from: bu int
  174.    int field_72;
  175.    // $FF: renamed from: bv int
  176.    int field_73;
  177.    // $FF: renamed from: bw int
  178.    int field_74;
  179.    // $FF: renamed from: bx java.awt.Color
  180.    Color field_75;
  181.    // $FF: renamed from: by int
  182.    int field_76;
  183.    // $FF: renamed from: bz int
  184.    int field_77;
  185.    // $FF: renamed from: bA int
  186.    int field_78;
  187.    // $FF: renamed from: bB int
  188.    int field_79;
  189.    // $FF: renamed from: bC int
  190.    int field_80;
  191.    // $FF: renamed from: bD int
  192.    int field_81;
  193.    // $FF: renamed from: bE int[]
  194.    int[] field_82;
  195.    // $FF: renamed from: bF int[]
  196.    int[] field_83;
  197.    // $FF: renamed from: bG int[]
  198.    int[] field_84;
  199.    // $FF: renamed from: bH float[]
  200.    float[] field_85;
  201.    // $FF: renamed from: bI float
  202.    float field_86;
  203.    // $FF: renamed from: bJ java.lang.String
  204.    String field_87;
  205.    // $FF: renamed from: bK int
  206.    int field_88;
  207.    // $FF: renamed from: bL long
  208.    long field_89;
  209.    // $FF: renamed from: bM java.awt.Color
  210.    Color field_90;
  211.    // $FF: renamed from: bN int
  212.    int field_91;
  213.    // $FF: renamed from: bO int
  214.    int field_92;
  215.    // $FF: renamed from: bP boolean
  216.    boolean field_93;
  217.    // $FF: renamed from: bQ boolean
  218.    boolean field_94;
  219.    // $FF: renamed from: bR java.awt.Toolkit
  220.    Toolkit field_95;
  221.    // $FF: renamed from: bS java.lang.Thread
  222.    Thread field_96;
  223.    // $FF: renamed from: bT int
  224.    int field_97;
  225.    // $FF: renamed from: bU int
  226.    int field_98;
  227.    // $FF: renamed from: bV int
  228.    int field_99;
  229.    // $FF: renamed from: bW int
  230.    int field_100;
  231.    // $FF: renamed from: bX int[]
  232.    int[] field_101;
  233.    // $FF: renamed from: bY int
  234.    int field_102;
  235.    // $FF: renamed from: bZ int
  236.    int field_103;
  237.    // $FF: renamed from: ca int
  238.    int field_104;
  239.    // $FF: renamed from: cb int
  240.    int field_105;
  241.    // $FF: renamed from: cc int
  242.    int field_106;
  243.    // $FF: renamed from: cd Lware
  244.    Lware field_107;
  245.    // $FF: renamed from: ce int
  246.    int field_108;
  247.    // $FF: renamed from: cf int
  248.    int field_109;
  249.    // $FF: renamed from: cg int
  250.    int field_110;
  251.    // $FF: renamed from: ch int
  252.    int field_111;
  253.    // $FF: renamed from: ci int
  254.    int field_112;
  255.    // $FF: renamed from: cj java.awt.Font[]
  256.    Font[] field_113;
  257.  
  258.    // $FF: renamed from: a () void
  259.    private final void method_0() {
  260.       while(true) {
  261.          ((Applet)this).showStatus(method_15("f\nTE>\u0002\u0017_\u000f%T\u0000\u001a\u0015=UK[\f,[\u000f[\u0014+\f\u0006U\u000fjA\u0017_\u0006#V\u0016\u001a\u000e#L\u0000\u001a\u000b$\u0002-n/\u0006\u0003"));
  262.  
  263.          try {
  264.             Thread.sleep(500L);
  265.          } catch (InterruptedException var1) {
  266.          }
  267.       }
  268.    }
  269.  
  270.    // $FF: renamed from: b () boolean
  271.    public synchronized boolean method_1() {
  272.       ((Component)this).prepareImage(this.field_62, this);
  273.  
  274.       for(int var1 = 0; var1 < 3; ++var1) {
  275.          this.notifyAll();
  276.          Thread.yield();
  277.  
  278.          try {
  279.             Thread.sleep(100L);
  280.          } catch (InterruptedException var2) {
  281.          }
  282.       }
  283.  
  284.       return this.field_60;
  285.    }
  286.  
  287.    public void destroy() {
  288.       if (this.field_62 != null) {
  289.          this.field_62.flush();
  290.       }
  291.  
  292.       this.field_62 = null;
  293.       if (this.field_59 != null) {
  294.          this.field_59.flush();
  295.       }
  296.  
  297.       this.field_59 = null;
  298.       if (this.field_58 != null) {
  299.          this.field_58.dispose();
  300.       }
  301.  
  302.       this.field_58 = null;
  303.       System.gc();
  304.    }
  305.  
  306.    // $FF: renamed from: c () void
  307.    public void method_2() {
  308.       Graphics var1 = this.field_58;
  309.       Random var2 = this.field_67;
  310.       var1.setColor(new Color(230, 230, 230));
  311.       if (this.field_13 > 0) {
  312.          int[] var4 = this.field_8;
  313.          float[] var5 = this.field_9;
  314.  
  315.          for(int var3 = 0; var3 < this.field_13; ++var3) {
  316.             int var6 = var4[var3];
  317.             int var7 = (int)var5[var3];
  318.             var1.drawLine(var6, var7, var6, var7);
  319.             var4[var3] += (int)((double)(var2.nextInt() % 2) + (double)this.field_33 * 0.7);
  320.             var5[var3] += (float)((var2.nextInt() % 4 + 2) / 8 + 1) * this.field_86;
  321.             if (var4[var3] >= this.field_103) {
  322.                var4[var3] = 0;
  323.             }
  324.  
  325.             if (var4[var3] < 0) {
  326.                var4[var3] = this.field_103 - 1;
  327.             }
  328.  
  329.             var7 = (int)var5[var3];
  330.             if (var7 >= this.field_38 || var7 < 0) {
  331.                int var8 = var2.nextInt() % this.field_103;
  332.                if (var8 < 0) {
  333.                   var4[var3] = -var8;
  334.                } else {
  335.                   var4[var3] = var8;
  336.                }
  337.  
  338.                var5[var3] = 0.0F;
  339.             }
  340.          }
  341.       }
  342.  
  343.       var1.setColor(new Color(245, 245, 245));
  344.       if (this.field_14 > 0) {
  345.          int[] var13 = this.field_84;
  346.          float[] var17 = this.field_85;
  347.          this.field_17 = this.field_24;
  348.  
  349.          for(int var10 = 0; var10 < this.field_14; ++var10) {
  350.             ++this.field_27;
  351.             if (this.field_27 > this.field_21) {
  352.                this.field_27 = 0;
  353.                ++this.field_17;
  354.                if (this.field_17 > 2) {
  355.                   this.field_17 = 0;
  356.                }
  357.             }
  358.  
  359.             int var20 = var13[var10];
  360.             int var24 = (int)var17[var10];
  361.             int var30 = var10 % 2;
  362.             if (var30 == 0) {
  363.                switch (this.field_17) {
  364.                   case 0:
  365.                      var1.drawLine(var20, var24, var20, var24);
  366.                      break;
  367.                   case 1:
  368.                      var1.drawLine(var20, var24, var20, var24 + 1);
  369.                      break;
  370.                   case 2:
  371.                      var1.drawLine(var20, var24, var20 + 1, var24);
  372.                }
  373.             } else {
  374.                switch (this.field_17) {
  375.                   case 0:
  376.                      var1.drawLine(var20, var24, var20, var24 + 1);
  377.                      break;
  378.                   case 1:
  379.                      var1.drawLine(var20, var24, var20 + 1, var24);
  380.                      break;
  381.                   case 2:
  382.                      var1.drawLine(var20, var24, var20, var24);
  383.                }
  384.             }
  385.  
  386.             var13[var10] += (int)((double)(var2.nextInt() % 2) + (double)this.field_33 * 0.8);
  387.             var17[var10] += (float)((var2.nextInt() % 6 + 5) / 5 + 1) * this.field_86;
  388.             if (var13[var10] >= this.field_103) {
  389.                var13[var10] = 0;
  390.             }
  391.  
  392.             if (var13[var10] < 0) {
  393.                var13[var10] = this.field_103 - 1;
  394.             }
  395.  
  396.             var24 = (int)var17[var10];
  397.             if (var24 >= this.field_38 || var24 < 0) {
  398.                int var9 = var2.nextInt() % this.field_103;
  399.                if (var9 < 0) {
  400.                   var13[var10] = -var9;
  401.                } else {
  402.                   var13[var10] = var9;
  403.                }
  404.  
  405.                var17[var10] = 0.0F;
  406.             }
  407.          }
  408.  
  409.          ++this.field_24;
  410.          if (this.field_24 > 2) {
  411.             this.field_24 = 0;
  412.          }
  413.       }
  414.  
  415.       var1.setColor(new Color(254, 254, 254));
  416.       if (this.field_15 > 0) {
  417.          int[] var14 = this.field_30;
  418.          float[] var18 = this.field_31;
  419.          this.field_18 = this.field_25;
  420.  
  421.          for(int var11 = 0; var11 < this.field_15; ++var11) {
  422.             ++this.field_28;
  423.             if (this.field_28 > this.field_22) {
  424.                this.field_28 = 0;
  425.                ++this.field_18;
  426.                if (this.field_18 > 4) {
  427.                   this.field_18 = 0;
  428.                }
  429.             }
  430.  
  431.             int var21 = var14[var11];
  432.             int var26 = (int)var18[var11];
  433.             int var31 = var11 % 2;
  434.             if (var31 == 0) {
  435.                switch (this.field_18) {
  436.                   case 0:
  437.                      var1.drawLine(var21 - 1, var26, var21, var26);
  438.                      break;
  439.                   case 1:
  440.                      var1.drawLine(var21 - 1, var26 - 1, var21, var26);
  441.                      break;
  442.                   case 2:
  443.                      var1.drawLine(var21 - 1, var26 - 1, var21 + 1, var26);
  444.                      break;
  445.                   case 3:
  446.                      var1.drawLine(var21 - 1, var26, var21 + 1, var26);
  447.                      break;
  448.                   case 4:
  449.                      var1.drawLine(var21 - 1, var26, var21, var26 + 1);
  450.                }
  451.             } else {
  452.                switch (this.field_18) {
  453.                   case 0:
  454.                      var1.drawLine(var21 - 1, var26 - 1, var21 + 1, var26);
  455.                      break;
  456.                   case 1:
  457.                      var1.drawLine(var21 - 1, var26 - 1, var21, var26);
  458.                      break;
  459.                   case 2:
  460.                      var1.drawLine(var21 - 1, var26, var21, var26);
  461.                      break;
  462.                   case 3:
  463.                      var1.drawLine(var21 - 1, var26, var21, var26 + 1);
  464.                      break;
  465.                   case 4:
  466.                      var1.drawLine(var21 - 1, var26, var21 + 1, var26);
  467.                }
  468.             }
  469.  
  470.             var14[var11] += (int)((double)(var2.nextInt() % 2) + (double)this.field_33 * 1.1);
  471.             var18[var11] += (float)((var2.nextInt() % 8 + 6) / 5 + 2) * this.field_86;
  472.             if (var14[var11] >= this.field_103) {
  473.                var14[var11] = 0;
  474.             }
  475.  
  476.             if (var14[var11] < 0) {
  477.                var14[var11] = this.field_103 - 1;
  478.             }
  479.  
  480.             var26 = (int)var18[var11];
  481.             if (var26 >= this.field_38 || var26 < 0) {
  482.                int var33 = var2.nextInt() % this.field_103;
  483.                if (var33 < 0) {
  484.                   var14[var11] = -var33;
  485.                } else {
  486.                   var14[var11] = var33;
  487.                }
  488.  
  489.                var18[var11] = 0.0F;
  490.             }
  491.          }
  492.  
  493.          ++this.field_25;
  494.          if (this.field_25 > 4) {
  495.             this.field_25 = 0;
  496.          }
  497.       }
  498.  
  499.       var1.setColor(new Color(255, 255, 255));
  500.       if (this.field_16 > 0) {
  501.          int[] var15 = this.field_55;
  502.          float[] var19 = this.field_56;
  503.          this.field_19 = this.field_26;
  504.  
  505.          for(int var12 = 0; var12 < this.field_16; ++var12) {
  506.             ++this.field_29;
  507.             if (this.field_29 > this.field_23) {
  508.                this.field_29 = 0;
  509.                ++this.field_19;
  510.                if (this.field_19 > 8) {
  511.                   this.field_19 = 0;
  512.                }
  513.             }
  514.  
  515.             int var22 = var15[var12];
  516.             int var28 = (int)var19[var12];
  517.             int var32 = var12 % 2;
  518.             if (var32 == 0) {
  519.                switch (this.field_19) {
  520.                   case 0:
  521.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28 + 1);
  522.                      break;
  523.                   case 1:
  524.                      var1.drawLine(var22 - 2, var28 - 1, var22 + 2, var28);
  525.                      break;
  526.                   case 2:
  527.                      var1.drawLine(var22 - 1, var28 - 1, var22 + 2, var28);
  528.                      break;
  529.                   case 3:
  530.                      var1.drawLine(var22 - 1, var28, var22 + 1, var28 - 1);
  531.                      break;
  532.                   case 4:
  533.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28 - 1);
  534.                      break;
  535.                   case 5:
  536.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28);
  537.                      break;
  538.                   case 6:
  539.                      var1.drawLine(var22 - 1, var28 + 1, var22 + 2, var28);
  540.                      break;
  541.                   case 7:
  542.                      var1.drawLine(var22 - 2, var28 + 1, var22 + 2, var28 + 1);
  543.                      break;
  544.                   case 8:
  545.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28 + 1);
  546.                }
  547.             } else {
  548.                switch (this.field_19) {
  549.                   case 0:
  550.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28 - 1);
  551.                      break;
  552.                   case 1:
  553.                      var1.drawLine(var22 - 1, var28, var22 + 1, var28 - 1);
  554.                      break;
  555.                   case 2:
  556.                      var1.drawLine(var22 - 1, var28 - 1, var22 + 2, var28);
  557.                      break;
  558.                   case 3:
  559.                      var1.drawLine(var22 - 2, var28 - 1, var22 + 2, var28);
  560.                      break;
  561.                   case 4:
  562.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28 + 1);
  563.                      break;
  564.                   case 5:
  565.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28 + 1);
  566.                      break;
  567.                   case 6:
  568.                      var1.drawLine(var22 - 2, var28 + 1, var22 + 2, var28 + 1);
  569.                      break;
  570.                   case 7:
  571.                      var1.drawLine(var22 - 1, var28 + 1, var22 + 2, var28);
  572.                      break;
  573.                   case 8:
  574.                      var1.drawLine(var22 - 2, var28, var22 + 1, var28);
  575.                }
  576.             }
  577.  
  578.             var15[var12] += (int)((double)(var2.nextInt() % 3) + (double)this.field_33 * (double)1.5F);
  579.             var19[var12] += (float)((var2.nextInt() % 8 + 6) / 5 + 3) * this.field_86;
  580.             if (var15[var12] >= this.field_103) {
  581.                var15[var12] = 0;
  582.             }
  583.  
  584.             if (var15[var12] < 0) {
  585.                var15[var12] = this.field_103 - 1;
  586.             }
  587.  
  588.             var28 = (int)var19[var12];
  589.             if (var28 >= this.field_38 || var28 < 0) {
  590.                int var34 = var2.nextInt() % this.field_103;
  591.                if (var34 < 0) {
  592.                   var15[var12] = -var34;
  593.                } else {
  594.                   var15[var12] = var34;
  595.                }
  596.  
  597.                var19[var12] = 0.0F;
  598.             }
  599.          }
  600.  
  601.          ++this.field_26;
  602.          if (this.field_26 > 8) {
  603.             this.field_26 = 0;
  604.          }
  605.       }
  606.  
  607.       if (this.field_105 > 0) {
  608.          if (!this.field_1) {
  609.             int var16 = var2.nextInt() % this.field_106;
  610.             if (this.field_105 == 3) {
  611.                switch (var16) {
  612.                   case -3:
  613.                      this.field_34 = -3.0F;
  614.                      break;
  615.                   case -2:
  616.                      this.field_34 = -2.0F;
  617.                      break;
  618.                   case -1:
  619.                      this.field_34 = -1.0F;
  620.                      break;
  621.                   case 0:
  622.                      this.field_34 = 0.0F;
  623.                      break;
  624.                   case 1:
  625.                      this.field_34 = 1.0F;
  626.                      break;
  627.                   case 2:
  628.                      this.field_34 = 2.0F;
  629.                      break;
  630.                   case 3:
  631.                      this.field_34 = 3.0F;
  632.                }
  633.             } else if (this.field_105 == 2) {
  634.                switch (var16) {
  635.                   case -2:
  636.                      this.field_34 = -2.0F;
  637.                      break;
  638.                   case -1:
  639.                      this.field_34 = -1.0F;
  640.                      break;
  641.                   case 0:
  642.                      this.field_34 = 0.0F;
  643.                      break;
  644.                   case 1:
  645.                      this.field_34 = 1.0F;
  646.                      break;
  647.                   case 2:
  648.                      this.field_34 = 2.0F;
  649.                }
  650.             } else if (this.field_105 == 1) {
  651.                switch (var16) {
  652.                   case -1:
  653.                      this.field_34 = -1.0F;
  654.                      break;
  655.                   case 0:
  656.                      this.field_34 = 0.0F;
  657.                      break;
  658.                   case 1:
  659.                      this.field_34 = 1.0F;
  660.                }
  661.             }
  662.  
  663.             if (this.field_61 == this.field_34) {
  664.                this.field_1 = false;
  665.                return;
  666.             }
  667.  
  668.             if (this.field_34 > this.field_61) {
  669.                this.field_0 = true;
  670.             } else {
  671.                this.field_0 = false;
  672.             }
  673.  
  674.             this.field_61 = this.field_34;
  675.             this.field_35 = (this.field_34 - this.field_33) / 80.0F;
  676.             this.field_1 = true;
  677.             return;
  678.          }
  679.  
  680.          this.field_33 += this.field_35;
  681.          if (this.field_0) {
  682.             if (this.field_33 >= this.field_34) {
  683.                this.field_1 = false;
  684.                return;
  685.             }
  686.          } else if (this.field_33 <= this.field_34) {
  687.             this.field_1 = false;
  688.          }
  689.       }
  690.  
  691.    }
  692.  
  693.    // $FF: renamed from: a (java.lang.String) java.awt.Image
  694.    Image method_3(String var1) {
  695.       try {
  696.          return this.method_4(var1);
  697.       } catch (NoSuchMethodError var2) {
  698.          return this.method_4(var1);
  699.       }
  700.    }
  701.  
  702.    // $FF: renamed from: b (java.lang.String) java.awt.Image
  703.    synchronized Image method_4(String var1) {
  704.       URL var2 = null;
  705.       Image var3 = null;
  706.  
  707.       try {
  708.          var2 = new URL(((Applet)this).getDocumentBase(), var1);
  709.       } catch (MalformedURLException var14) {
  710.       }
  711.  
  712.       try {
  713.          try {
  714.             InputStream var4 = this.getClass().getResourceAsStream(var2.toString());
  715.             if (var4 != null) {
  716.                ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
  717.                byte[] var6 = new byte[512];
  718.                boolean var8 = false;
  719.                Object var9 = null;
  720.  
  721.                try {
  722.                   while(!var8) {
  723.                      int var7 = var4.read(var6, 0, 512);
  724.                      if (var7 != -1) {
  725.                         var5.write(var6, 0, var7);
  726.                         ((OutputStream)var5).flush();
  727.                      } else {
  728.                         var8 = true;
  729.                      }
  730.                   }
  731.  
  732.                   var21 = var5.toByteArray();
  733.                   ((OutputStream)var5).close();
  734.                   var4.close();
  735.                } catch (IOException var15) {
  736.                   var21 = null;
  737.                }
  738.  
  739.                System.gc();
  740.                if (var21 != null) {
  741.                   var3 = ((Component)this).getToolkit().createImage(var21);
  742.                   ((Component)this).prepareImage(var3, this);
  743.                }
  744.             }
  745.          } catch (NoSuchMethodError var16) {
  746.          }
  747.       } catch (SecurityException var17) {
  748.       }
  749.  
  750.       if (var3 == null) {
  751.          int var18 = 0;
  752.  
  753.          while(var18 < 5) {
  754.             try {
  755.                if (var18 % 2 == 0) {
  756.                   var3 = Toolkit.getDefaultToolkit().getImage(var2);
  757.                } else {
  758.                   var3 = ((Applet)this).getImage(var2);
  759.                }
  760.  
  761.                ++var18;
  762.                MediaTracker var20 = new MediaTracker(this);
  763.                this.notifyAll();
  764.                Thread.currentThread();
  765.                Thread.yield();
  766.  
  767.                try {
  768.                   var20.addImage(var3, 0);
  769.                   var20.waitForID(0);
  770.                } catch (InterruptedException var12) {
  771.                   var3 = null;
  772.                }
  773.  
  774.                if (var20.isErrorID(0)) {
  775.                   var3 = null;
  776.                } else {
  777.                   var18 = 6;
  778.                }
  779.             } catch (NullPointerException var13) {
  780.                System.gc();
  781.             }
  782.          }
  783.       }
  784.  
  785.       if (var3 == null) {
  786.          for(int var19 = 0; var19 < 25; ++var19) {
  787.             ((Applet)this).showStatus(method_15("k\b[\u0005/\u0002") + var1 + method_15("\u0002\u000bU\u0016jD\nO\f.\u0003"));
  788.  
  789.             try {
  790.                Thread.currentThread();
  791.                Thread.sleep(250L);
  792.             } catch (InterruptedException var11) {
  793.             }
  794.          }
  795.       } else {
  796.          while(var3.getWidth(this) < 0) {
  797.             this.notifyAll();
  798.             Thread.currentThread();
  799.             Thread.yield();
  800.  
  801.             try {
  802.                Thread.currentThread();
  803.                Thread.sleep(100L);
  804.             } catch (InterruptedException var10) {
  805.             }
  806.          }
  807.       }
  808.  
  809.       return var3;
  810.    }
  811.  
  812.    // $FF: renamed from: a (java.lang.String, int) void
  813.    public void method_5(String var1, int var2) {
  814.       try {
  815.          this.method_6(var1, var2);
  816.       } catch (NoSuchMethodError var3) {
  817.          this.method_6(var1, var2);
  818.       }
  819.    }
  820.  
  821.    // $FF: renamed from: b (java.lang.String, int) void
  822.    public void method_6(String var1, int var2) {
  823.       try {
  824.          URL var3 = new URL(((Applet)this).getDocumentBase(), var1);
  825.  
  826.          try {
  827.             DataInputStream var4 = new DataInputStream(var3.openStream());
  828.             if (var4 != null) {
  829.                ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
  830.                byte[] var6 = new byte[512];
  831.                int var7 = 0;
  832.                int var8 = 0;
  833.                boolean var9 = false;
  834.  
  835.                try {
  836.                   while(!var9) {
  837.                      var7 = var4.read(var6, 0, 512);
  838.                      if (var7 == -1) {
  839.                         var9 = true;
  840.                      } else {
  841.                         var5.write(var6, 0, var7);
  842.                         ((OutputStream)var5).flush();
  843.                         var8 += var7;
  844.                      }
  845.                   }
  846.  
  847.                   byte[] var10 = var5.toByteArray();
  848.                   ((OutputStream)var5).close();
  849.                   Object var26 = null;
  850.                   ((FilterInputStream)var4).close();
  851.                   System.gc();
  852.                   if (var2 != 0) {
  853.                      int var29 = 1;
  854.  
  855.                      for(int var13 = 0; var13 < var8; ++var13) {
  856.                         if (var10[var13] == 10) {
  857.                            ++var29;
  858.                         }
  859.                      }
  860.  
  861.                      this.field_47 = new String[var29 - 1];
  862.                      int[] var14 = new int[var29 + 1];
  863.                      int[] var15 = new int[var29 + 1];
  864.                      var14[0] = 0;
  865.                      int var16 = 0;
  866.                      byte var17 = 0;
  867.  
  868.                      for(int var18 = 0; var18 < var8; ++var18) {
  869.                         byte var28 = var10[var18];
  870.                         if (var28 == 10) {
  871.                            var14[var16 + 1] = var18 + 1;
  872.                            if (var17 == 13) {
  873.                               var15[var16] = var18 - var14[var16] - 1;
  874.                            } else {
  875.                               var15[var16] = var18 - var14[var16];
  876.                            }
  877.  
  878.                            ++var16;
  879.                         }
  880.  
  881.                         var17 = var28;
  882.                      }
  883.  
  884.                      var15[var16] = var8 - var14[var16 + 1] - 1;
  885.  
  886.                      try {
  887.                         for(int var19 = 0; var19 < var29 - 1; ++var19) {
  888.                            try {
  889.                               this.field_47[var19] = new String(var10, var14[var19], var15[var19]);
  890.                            } catch (NoSuchMethodError var20) {
  891.                               this.field_47[var19] = new String(var10, 0, var14[var19], var15[var19]);
  892.                            }
  893.                         }
  894.  
  895.                         return;
  896.                      } catch (StringIndexOutOfBoundsException var22) {
  897.                         this.field_47 = null;
  898.                         return;
  899.                      }
  900.                   }
  901.  
  902.                   for(int var12 = 0; var12 < var8; ++var12) {
  903.                      byte var11 = var10[var12];
  904.                      if (var11 == 13 || var11 == 10) {
  905.                         var10[var12] = 32;
  906.                      }
  907.                   }
  908.  
  909.                   try {
  910.                      this.field_71 = new String(var10);
  911.                      return;
  912.                   } catch (NoSuchMethodError var21) {
  913.                      this.field_71 = new String(var10, 0);
  914.                      return;
  915.                   }
  916.                } catch (IOException var23) {
  917.                   return;
  918.                }
  919.             }
  920.          } catch (IOException var24) {
  921.             return;
  922.          }
  923.       } catch (MalformedURLException var25) {
  924.       }
  925.  
  926.    }
  927.  
  928.    // $FF: renamed from: a (java.awt.Graphics) void
  929.    public void method_7(Graphics var1) {
  930.       var1.setFont(this.field_20);
  931.       if (this.field_2 == 0) {
  932.          this.field_109 = this.field_110;
  933.       } else {
  934.          this.field_45 += this.field_97;
  935.          this.field_109 = this.field_110 - (int)Math.abs((double)this.field_2 * Math.sin((double)this.field_45 / (double)90.0F * Math.PI));
  936.       }
  937.  
  938.       if (this.field_77 != 0) {
  939.          for(int var2 = 0; var2 < this.field_99; ++var2) {
  940.             int var3 = this.field_82[this.field_76 + var2];
  941.             var1.copyArea(var2, var3, 1, this.field_79, 0, this.field_68 - var3);
  942.          }
  943.  
  944.          if (this.field_94) {
  945.             var1.setColor(this.field_75);
  946.             var1.drawString(this.field_71, this.field_108 + 1, this.field_68 + this.field_72 + 1);
  947.          }
  948.  
  949.          var1.setColor(this.field_90);
  950.          var1.drawString(this.field_71, this.field_108, this.field_68 + this.field_72);
  951.  
  952.          for(int var4 = 0; var4 < this.field_99; ++var4) {
  953.             var1.copyArea(var4, this.field_68, 1, this.field_80, 0, this.field_83[this.field_76 + var4]);
  954.          }
  955.  
  956.          this.field_76 -= this.field_81;
  957.          if (this.field_76 < 0) {
  958.             this.field_76 += 360;
  959.          }
  960.       } else {
  961.          if (this.field_94) {
  962.             var1.setColor(this.field_75);
  963.             var1.drawString(this.field_71, this.field_108 + 1, this.field_109 + 1);
  964.          }
  965.  
  966.          var1.setColor(this.field_90);
  967.          var1.drawString(this.field_71, this.field_108, this.field_109);
  968.       }
  969.  
  970.       this.field_108 -= this.field_98;
  971.       if (this.field_108 < -this.field_73) {
  972.          this.field_108 = this.field_99;
  973.       }
  974.  
  975.    }
  976.  
  977.    public boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
  978.       if (var1 == this.field_62) {
  979.          if (var2 == 16) {
  980.             this.field_60 = true;
  981.          }
  982.  
  983.          return true;
  984.       } else {
  985.          return true;
  986.       }
  987.    }
  988.  
  989.    public void init() {
  990.       ((Container)this).setLayout((LayoutManager)null);
  991.       ((Panel)this).addNotify();
  992.       this.field_87 = ((Applet)this).getParameter(method_15("Q\u0011[\u0016?Q\bI\u0005"));
  993.       this.field_103 = ((Component)this).size().width;
  994.       this.field_38 = ((Component)this).size().height;
  995.       this.field_104 = this.field_103 / 2;
  996.       this.field_39 = this.field_38 / 2;
  997.       Dimension var1 = ((Component)this).size();
  998.       this.field_69 = var1.width;
  999.       this.field_68 = var1.height;
  1000.       this.field_102 = var1.width;
  1001.       this.field_37 = var1.height;
  1002.       Object var2 = null;
  1003.       String var37 = ((Applet)this).getParameter(method_15("A\u0017_\u0006#V\u0016"));
  1004.       if (var37 != null) {
  1005.          if (!var37.startsWith(method_15("c\u0015J\u000e/VEX\u001bjd\u0004X\u000b%\u0002&S\u0017)A\f\u001aJ=U\u0012\u0014\u0003$D\u001cP\u0003<CKY\r'"))) {
  1006.             this.method_0();
  1007.          }
  1008.       } else {
  1009.          this.method_0();
  1010.       }
  1011.  
  1012.       Object var3 = null;
  1013.       Object var4 = null;
  1014.  
  1015.       try {
  1016.          var38 = ((Applet)this).getDocumentBase().getProtocol();
  1017.       } catch (SecurityException var34) {
  1018.          var38 = method_15("D\fV\u0007");
  1019.       }
  1020.  
  1021.       try {
  1022.          var39 = ((Applet)this).getDocumentBase().getHost();
  1023.       } catch (SecurityException var33) {
  1024.          var39 = "";
  1025.       }
  1026.  
  1027.       if (!var38.equalsIgnoreCase(method_15("D\fV\u0007")) && var39.length() != 0 && !var39.equalsIgnoreCase(method_15("N\nY\u0003&J\nI\u0016")) && !var39.equals(method_15("\u0013W\rLz\fU\u0014S"))) {
  1028.          if (var39.startsWith(method_15("U\u0012ML"))) {
  1029.             var39 = var39.substring(4);
  1030.          }
  1031.  
  1032.          Object var5 = null;
  1033.          String var40 = ((Applet)this).getParameter(method_15("P\u0000]\u0001%F\u0000"));
  1034.          if (var40 != null && !var40.equals("NO") && var40.length() > 10) {
  1035.             int var6 = 1;
  1036.  
  1037.             try {
  1038.                for(int var7 = 0; var7 < var40.length(); ++var7) {
  1039.                   if (var40.charAt(var7) == '+') {
  1040.                      ++var6;
  1041.                   }
  1042.                }
  1043.             } catch (StringIndexOutOfBoundsException var36) {
  1044.             }
  1045.  
  1046.             int[] var43 = new int[var6];
  1047.             if (var6 == 1) {
  1048.                var43[0] = var40.length();
  1049.             } else {
  1050.                int var8 = 0;
  1051.  
  1052.                try {
  1053.                   for(int var9 = 0; var9 < var40.length(); ++var9) {
  1054.                      if (var40.charAt(var9) == '+') {
  1055.                         var43[var8] = var9;
  1056.                         ++var8;
  1057.                      }
  1058.                   }
  1059.                } catch (StringIndexOutOfBoundsException var35) {
  1060.                }
  1061.  
  1062.                var43[var8] = var40.length();
  1063.             }
  1064.  
  1065.             String[] var45 = new String[var6];
  1066.             int var47 = 0;
  1067.  
  1068.             for(int var10 = 0; var10 < var6; ++var10) {
  1069.                try {
  1070.                   var45[var10] = var40.substring(var47, var43[var10]);
  1071.                } catch (StringIndexOutOfBoundsException var32) {
  1072.                }
  1073.  
  1074.                var47 = var43[var10] + 1;
  1075.             }
  1076.  
  1077.             for(int var11 = 0; var11 < var6; ++var11) {
  1078.                int var12 = var45[var11].length() - 8;
  1079.                byte[] var16 = new byte[var12];
  1080.                byte[] var17 = new byte[8];
  1081.                var45[var11].getBytes(0, var12, var16, 0);
  1082.                var45[var11].getBytes(var12, var12 + 8, var17, 0);
  1083.                int var14 = var12 % 7;
  1084.                int var15 = var12 % 3;
  1085.  
  1086.                for(int var18 = 0; var18 < var12; ++var18) {
  1087.                   byte var13 = var16[var18];
  1088.                   if (var13 >= 48 && var13 <= 57) {
  1089.                      var16[var18] = this.method_9(var13, var14, 48, 57);
  1090.                   } else if (var13 >= 65 && var13 <= 90) {
  1091.                      var16[var18] = this.method_9(var13, var14, 65, 90);
  1092.                   } else if (var13 >= 97 && var13 <= 122) {
  1093.                      var16[var18] = this.method_9(var13, var14, 97, 122);
  1094.                   } else if (var13 == 45) {
  1095.                      var16[var18] = 46;
  1096.                   } else if (var13 == 46) {
  1097.                      var16[var18] = 45;
  1098.                   }
  1099.  
  1100.                   if ((var14 += var15) > 7) {
  1101.                      var14 = 1;
  1102.                   }
  1103.                }
  1104.  
  1105.                int var19 = 0;
  1106.                int var20 = 0;
  1107.  
  1108.                for(int var21 = 0; var21 < 4; ++var21) {
  1109.                   var17[var21] = (byte)(var17[var21] - 52);
  1110.                }
  1111.  
  1112.                for(int var22 = 4; var22 < 8; ++var22) {
  1113.                   var17[var22] = (byte)(var17[var22] - 55);
  1114.                }
  1115.  
  1116.                for(int var23 = 0; var23 < var12; var23 += 2) {
  1117.                   var19 += var16[var23];
  1118.                }
  1119.  
  1120.                for(int var24 = 1; var24 < var12; var24 += 2) {
  1121.                   var20 += var16[var24];
  1122.                }
  1123.  
  1124.                String var25 = String.valueOf(var19);
  1125.  
  1126.                String var26;
  1127.                for(var26 = String.valueOf(var20); var25.length() < 4; var25 = "0" + var25) {
  1128.                }
  1129.  
  1130.                while(var26.length() < 4) {
  1131.                   var26 = "0" + var26;
  1132.                }
  1133.  
  1134.                byte[] var27 = new byte[8];
  1135.                var25.getBytes(0, 4, var27, 0);
  1136.                var26.getBytes(0, 4, var27, 4);
  1137.                String var28 = new String(var27, 0);
  1138.                if (var28.equals(new String(var17, 0))) {
  1139.                   String var29 = new String(var16, 0);
  1140.                   Object var30 = null;
  1141.                   String var60;
  1142.                   if (var29.startsWith(method_15("U\u0012ML"))) {
  1143.                      var60 = var29.substring(4);
  1144.                   } else {
  1145.                      var60 = var29;
  1146.                   }
  1147.  
  1148.                   if (var39.equalsIgnoreCase(var60)) {
  1149.                      this.field_70 = true;
  1150.                   }
  1151.                }
  1152.             }
  1153.          }
  1154.       } else {
  1155.          this.field_70 = true;
  1156.       }
  1157.  
  1158.       String var41 = ((Applet)this).getParameter(method_15("P\u0000]\u000e#L\u000e"));
  1159.       if (var41 != null && !var41.equalsIgnoreCase("NO")) {
  1160.          try {
  1161.             this.field_48 = new URL(((Applet)this).getDocumentBase(), var41);
  1162.          } catch (MalformedURLException var31) {
  1163.             this.field_48 = null;
  1164.          }
  1165.       }
  1166.  
  1167.       String var42 = ((Applet)this).getParameter(method_15("P\u0000]\f/U\u0003H\u0003'G"));
  1168.       if (var42.equalsIgnoreCase(method_15("{ i"))) {
  1169.          this.field_54 = true;
  1170.       }
  1171.  
  1172.       Container var44;
  1173.       for(var44 = ((Component)this).getParent(); !(var44 instanceof Frame); var44 = ((Component)var44).getParent()) {
  1174.       }
  1175.  
  1176.       this.field_3 = (Frame)var44;
  1177.       this.field_3.setCursor(3);
  1178.       String var46 = ((Applet)this).getParameter(method_15("M\u0013_\u0010#O\u0002"));
  1179.       if (var46 != null && !var46.equalsIgnoreCase("NO")) {
  1180.          this.field_62 = this.method_3(var46);
  1181.          if (this.field_62 != null) {
  1182.             String var48 = ((Applet)this).getParameter(method_15("M\u0013_\u0010#O\u0002b"));
  1183.             if (var48 == null) {
  1184.                var48 = "0";
  1185.             }
  1186.  
  1187.             this.field_64 = Integer.valueOf(var48);
  1188.             String var52 = ((Applet)this).getParameter(method_15("M\u0013_\u0010#O\u0002c"));
  1189.             if (var52 == null) {
  1190.                var52 = "0";
  1191.             }
  1192.  
  1193.             this.field_65 = Integer.valueOf(var52);
  1194.          }
  1195.       }
  1196.  
  1197.       String var49 = ((Applet)this).getParameter(method_15("U\fT\u0006'C\u001d"));
  1198.       if (var49 == null) {
  1199.          this.field_105 = 2;
  1200.       } else {
  1201.          this.field_105 = Integer.parseInt(var49);
  1202.       }
  1203.  
  1204.       var49 = ((Applet)this).getParameter(method_15("U\fT\u0006<C\u0017S\u0003>K\nT"));
  1205.       if (var49 == null) {
  1206.          this.field_106 = 0;
  1207.       } else {
  1208.          this.field_106 = 1000 - Integer.parseInt(var49) * 100 + 4;
  1209.       }
  1210.  
  1211.       if (this.field_106 == 1004) {
  1212.          this.field_105 = 0;
  1213.       }
  1214.  
  1215.       var49 = ((Applet)this).getParameter(method_15("@\u0004Y\t#O\u0004]\u0007"));
  1216.       if (var49 != null && !var49.equalsIgnoreCase("NO")) {
  1217.          this.field_7 = true;
  1218.          this.field_43 = this.method_3(var49);
  1219.          if (this.field_43 == null) {
  1220.             this.field_7 = false;
  1221.          }
  1222.       } else {
  1223.          this.field_7 = false;
  1224.       }
  1225.  
  1226.       Object var53 = null;
  1227.       String var54 = ((Applet)this).getParameter(method_15("M\u0013_\u0010>G\u001dN"));
  1228.       if (var54.equalsIgnoreCase(method_15("{ i"))) {
  1229.          this.field_63 = true;
  1230.       } else {
  1231.          this.field_63 = false;
  1232.       }
  1233.  
  1234.       this.field_6 = new Color(Integer.parseInt(((Applet)this).getParameter(method_15("@\u0002Y\r&M\u0017")), 16));
  1235.       this.field_86 = Float.valueOf(((Applet)this).getParameter(method_15("Q\u0015_\u0007."))) / 10.0F;
  1236.       this.field_67 = new Random();
  1237.       this.field_13 = Integer.valueOf(((Applet)this).getParameter(method_15("D\t[\t/QT")));
  1238.       this.field_14 = Integer.valueOf(((Applet)this).getParameter(method_15("D\t[\t/QW")));
  1239.       this.field_15 = Integer.valueOf(((Applet)this).getParameter(method_15("D\t[\t/QV")));
  1240.       this.field_16 = Integer.valueOf(((Applet)this).getParameter(method_15("D\t[\t/QQ")));
  1241.       if (this.field_13 > 0) {
  1242.          this.field_8 = new int[this.field_13];
  1243.          this.field_9 = new float[this.field_13];
  1244.  
  1245.          for(int var55 = 0; var55 < this.field_13; ++var55) {
  1246.             this.field_8[var55] = this.field_67.nextInt() % this.field_104 + this.field_104;
  1247.             this.field_9[var55] = (float)(this.field_67.nextInt() % this.field_39 + this.field_39);
  1248.          }
  1249.       }
  1250.  
  1251.       if (this.field_14 > 0) {
  1252.          this.field_84 = new int[this.field_14];
  1253.          this.field_85 = new float[this.field_14];
  1254.  
  1255.          for(int var56 = 0; var56 < this.field_14; ++var56) {
  1256.             this.field_84[var56] = this.field_67.nextInt() % this.field_104 + this.field_104;
  1257.             this.field_85[var56] = (float)(this.field_67.nextInt() % this.field_39 + this.field_39);
  1258.          }
  1259.       }
  1260.  
  1261.       if (this.field_15 > 0) {
  1262.          this.field_30 = new int[this.field_15];
  1263.          this.field_31 = new float[this.field_15];
  1264.  
  1265.          for(int var57 = 0; var57 < this.field_15; ++var57) {
  1266.             this.field_30[var57] = this.field_67.nextInt() % this.field_104 + this.field_104;
  1267.             this.field_31[var57] = (float)(this.field_67.nextInt() % this.field_39 + this.field_39);
  1268.          }
  1269.       }
  1270.  
  1271.       if (this.field_16 > 0) {
  1272.          this.field_55 = new int[this.field_16];
  1273.          this.field_56 = new float[this.field_16];
  1274.  
  1275.          for(int var58 = 0; var58 < this.field_16; ++var58) {
  1276.             this.field_55[var58] = this.field_67.nextInt() % this.field_104 + this.field_104;
  1277.             this.field_56[var58] = (float)(this.field_67.nextInt() % this.field_39 + this.field_39);
  1278.          }
  1279.       }
  1280.  
  1281.       this.field_51 = ((Applet)this).getParameter(method_15("O\u0000W\u0006/N\u0004C"));
  1282.       this.field_52 = ((Applet)this).getParameter(method_15("R\u0017S\r8K\u0011C"));
  1283.       this.field_49 = Integer.valueOf(this.field_51);
  1284.       this.field_66 = Integer.valueOf(this.field_52);
  1285.       this.field_52 = null;
  1286.       this.field_52 = ((Applet)this).getParameter(method_15("o\fT1\u0013l&"));
  1287.       this.field_50 = Integer.valueOf(this.field_52);
  1288.       if (this.field_49 < 0) {
  1289.          this.field_49 = 0;
  1290.       }
  1291.  
  1292.       if (this.field_66 > 10) {
  1293.          this.field_66 = 10;
  1294.       } else if (this.field_66 < 1) {
  1295.          this.field_66 = 1;
  1296.       }
  1297.  
  1298.       this.method_10();
  1299.       if (this.field_77 != 0) {
  1300.          this.field_59 = ((Component)this).createImage(this.field_103, this.field_38 + this.field_79);
  1301.       } else {
  1302.          this.field_59 = ((Component)this).createImage(this.field_103, this.field_38);
  1303.       }
  1304.  
  1305.       this.field_58 = this.field_59.getGraphics();
  1306.       if (!this.field_70) {
  1307.          Label var59 = new Label(method_15("q\u000bU\u0015jC\u0015J\u000e/VEX\u001bjd\u0004X\u000b%\u0002&S\u0017)A\f\u001aSs\u001b\\\u0014"));
  1308.          this.field_107 = new Lware(((Applet)this).getAppletContext(), var59);
  1309.          this.field_107.setTitle(method_15("q\u000bU\u0015jc\u0015J\u000e/VEX\u001bjd\u0004X\u000b%\u0002&S\u0017)A\f"));
  1310.          this.field_107.hide();
  1311.       }
  1312.  
  1313.    }
  1314.  
  1315.    public final boolean mouseDown(Event var1, int var2, int var3) {
  1316.       if (!this.field_70) {
  1317.          this.field_107.show();
  1318.          this.field_107.toFront();
  1319.          this.field_107.requestFocus();
  1320.       } else if (this.field_48 != null) {
  1321.          if (this.field_54) {
  1322.             ((Applet)this).getAppletContext().showDocument(this.field_48, ((Applet)this).getParameter(method_15("P\u0000]\u00048C\b_\f+O\u0000")));
  1323.          } else {
  1324.             ((Applet)this).getAppletContext().showDocument(this.field_48);
  1325.          }
  1326.       }
  1327.  
  1328.       return true;
  1329.    }
  1330.  
  1331.    public final boolean mouseEnter(Event var1, int var2, int var3) {
  1332.       ((Applet)this).showStatus(this.field_87);
  1333.       return true;
  1334.    }
  1335.  
  1336.    public final boolean mouseExit(Event var1, int var2, int var3) {
  1337.       ((Applet)this).showStatus("");
  1338.       return true;
  1339.    }
  1340.  
  1341.    public void paint(Graphics var1) {
  1342.       var1.drawImage(this.field_59, 0, 0, this);
  1343.    }
  1344.  
  1345.    // $FF: renamed from: d () void
  1346.    public synchronized void method_8() {
  1347.       if (this.field_4) {
  1348.          this.notifyAll();
  1349.  
  1350.          while(!this.field_60) {
  1351.             Thread.yield();
  1352.  
  1353.             try {
  1354.                Thread.sleep(8L);
  1355.             } catch (InterruptedException var1) {
  1356.             }
  1357.          }
  1358.  
  1359.          this.field_60 = false;
  1360.       }
  1361.  
  1362.       this.field_58.drawImage(this.field_62, this.field_64, this.field_65, this);
  1363.    }
  1364.  
  1365.    public void run() {
  1366.       this.field_95 = ((Component)this).getToolkit();
  1367.       this.field_96.setPriority(this.field_66);
  1368.       ((Applet)this).showStatus("");
  1369.       System.gc();
  1370.       this.field_11 = System.currentTimeMillis();
  1371.       Graphics var1 = ((Component)this).getGraphics();
  1372.       if (this.field_62 != null && !this.field_4) {
  1373.          this.field_4 = this.method_1();
  1374.       }
  1375.  
  1376.       if (this.field_48 != null) {
  1377.          this.field_3.setCursor(12);
  1378.       } else {
  1379.          this.field_3.setCursor(0);
  1380.       }
  1381.  
  1382.       while(this.field_96 != null) {
  1383.          if (++this.field_10 == this.field_49) {
  1384.             System.gc();
  1385.             this.field_10 = 0;
  1386.          }
  1387.  
  1388.          if (!this.field_7) {
  1389.             this.field_58.setColor(this.field_6);
  1390.             this.field_58.fillRect(0, 0, this.field_103, this.field_38);
  1391.          } else {
  1392.             this.field_58.drawImage(this.field_43, 0, 0, this);
  1393.          }
  1394.  
  1395.          if (this.field_93 && this.field_63) {
  1396.             this.method_11(this.field_58);
  1397.          }
  1398.  
  1399.          this.method_2();
  1400.          if (this.field_62 != null) {
  1401.             this.method_8();
  1402.          }
  1403.  
  1404.          if (this.field_93 && !this.field_63) {
  1405.             this.method_11(this.field_58);
  1406.          }
  1407.  
  1408.          var1.drawImage(this.field_59, 0, 0, this);
  1409.          this.method_13();
  1410.       }
  1411.  
  1412.    }
  1413.  
  1414.    // $FF: renamed from: a (int, int, int, int) byte
  1415.    byte method_9(int var1, int var2, int var3, int var4) {
  1416.       int var5 = var1 - var2;
  1417.       if (var5 >= var3) {
  1418.          return (byte)var5;
  1419.       } else {
  1420.          int var6 = var3 - var5 - 1;
  1421.          return (byte)(var4 - var6);
  1422.       }
  1423.    }
  1424.  
  1425.    // $FF: renamed from: e () void
  1426.    public void method_10() {
  1427.       Object var2 = null;
  1428.       this.field_93 = false;
  1429.       String var20 = ((Applet)this).getParameter(method_15("V\u0000B\u00169A\u0017U\u000e&"));
  1430.       if (var20 != null && !var20.equalsIgnoreCase("NO")) {
  1431.          Object var3 = null;
  1432.          String var21 = ((Applet)this).getParameter(method_15("V\u0000B\u0016>[\u0015_"));
  1433.          if (var21 == null) {
  1434.             var21 = method_15("J\nH\u000b0M\u000bN\u0003&");
  1435.          }
  1436.  
  1437.          if (var21.equals(method_15("J\nH\u000b0M\u000bN\u0003&"))) {
  1438.             this.field_74 = 0;
  1439.          } else if (var21.equals(method_15("T\u0000H\u0016#A\u0004V"))) {
  1440.             this.field_74 = 1;
  1441.          } else if (var21.equals(method_15("X\nU\u000f#L\u0002"))) {
  1442.             this.field_74 = 2;
  1443.          } else if (var21.equals(method_15("K\u000bL\u0018%M\bS\f-"))) {
  1444.             this.field_74 = 3;
  1445.          }
  1446.  
  1447.          if (this.field_74 == 0) {
  1448.             this.method_5(var20, 0);
  1449.             if (this.field_71 != null) {
  1450.                this.field_93 = true;
  1451.             }
  1452.          } else {
  1453.             this.method_5(var20, 1);
  1454.             if (this.field_47 != null) {
  1455.                this.field_93 = true;
  1456.             }
  1457.          }
  1458.       }
  1459.  
  1460.       if (this.field_93) {
  1461.          Object var22 = null;
  1462.          String var23 = ((Applet)this).getParameter(method_15("V\u0000B\u00169R\u0000_\u0006"));
  1463.          if (var23 == null) {
  1464.             var23 = "0";
  1465.          }
  1466.  
  1467.          this.field_98 = Integer.valueOf(var23);
  1468.          Object var4 = null;
  1469.          String var24 = ((Applet)this).getParameter(method_15("V\u0000B\u0016,M\u000bN"));
  1470.          if (var24 == null) {
  1471.             var24 = method_15("c\u0017S\u0003&");
  1472.          }
  1473.  
  1474.          int var5 = 0;
  1475.          Object var6 = null;
  1476.          String var25 = ((Applet)this).getParameter(method_15("V\u0000B\u0016(M\t^"));
  1477.          if (var25.equalsIgnoreCase(method_15("{ i"))) {
  1478.             ++var5;
  1479.          }
  1480.  
  1481.          Object var7 = null;
  1482.          String var26 = ((Applet)this).getParameter(method_15("V\u0000B\u0016#V\u0004V\u000b)"));
  1483.          if (var26 == null) {
  1484.             var26 = "NO";
  1485.          }
  1486.  
  1487.          if (var26.equalsIgnoreCase(method_15("{ i"))) {
  1488.             var5 += 2;
  1489.          }
  1490.  
  1491.          Object var8 = null;
  1492.          String var27 = ((Applet)this).getParameter(method_15("V\u0000B\u00169K\u001f_"));
  1493.          if (var27 == null) {
  1494.             var27 = "12";
  1495.          }
  1496.  
  1497.          int var9 = Integer.valueOf(var27);
  1498.          this.field_20 = new Font(var24, var5, var9);
  1499.          Object var10 = null;
  1500.          String var28 = ((Applet)this).getParameter(method_15("V\u0000B\u00169J\u0004^\r="));
  1501.          if (var28.equalsIgnoreCase(method_15("{ i"))) {
  1502.             this.field_94 = true;
  1503.          } else {
  1504.             this.field_94 = false;
  1505.          }
  1506.  
  1507.          this.field_90 = new Color(Integer.valueOf(((Applet)this).getParameter(method_15("v\u0000B\u0016\tM\th"))), Integer.valueOf(((Applet)this).getParameter(method_15("v\u0000B\u0016\tM\t}"))), Integer.valueOf(((Applet)this).getParameter(method_15("v\u0000B\u0016\tM\tx"))));
  1508.          this.field_75 = new Color(Integer.valueOf(((Applet)this).getParameter(method_15("v\u0000B\u0016\u0019a\nV0"))), Integer.valueOf(((Applet)this).getParameter(method_15("v\u0000B\u0016\u0019a\nV%"))), Integer.valueOf(((Applet)this).getParameter(method_15("v\u0000B\u0016\u0019a\nV "))));
  1509.          this.field_99 = ((Component)this).size().width;
  1510.          this.field_100 = ((Component)this).size().height;
  1511.          if (this.field_74 == 0) {
  1512.             Object var11 = null;
  1513.             String var29 = ((Applet)this).getParameter(method_15("V\u0000B\u0016%D\u0003I\u0007>"));
  1514.             if (var29 == null) {
  1515.                var29 = "0";
  1516.             }
  1517.  
  1518.             this.field_110 = Integer.valueOf(var29);
  1519.             if (this.field_110 < 0) {
  1520.                this.field_110 = 0;
  1521.             }
  1522.  
  1523.             Object var12 = null;
  1524.             String var34 = ((Applet)this).getParameter(method_15("v\u0000B\u0016\u0000W\bJ#'R"));
  1525.             if (var34 == null) {
  1526.                var34 = "0";
  1527.             }
  1528.  
  1529.             this.field_2 = Integer.valueOf(var34);
  1530.             Object var13 = null;
  1531.             String var38 = ((Applet)this).getParameter(method_15("v\u0000B\u0016\u0000W\bJ1:F"));
  1532.             if (var38 == null) {
  1533.                var38 = "0";
  1534.             }
  1535.  
  1536.             this.field_97 = Integer.valueOf(var38);
  1537.             Object var14 = null;
  1538.             String var41 = ((Applet)this).getParameter(method_15("v\u0000B\u0016\u0019K\u000b_#'R"));
  1539.             if (var41 == null) {
  1540.                var41 = "0";
  1541.             }
  1542.  
  1543.             this.field_77 = Integer.valueOf(var41);
  1544.             Object var15 = null;
  1545.             String var42 = ((Applet)this).getParameter(method_15("v\u0000B\u0016\u0019K\u000b_1:F"));
  1546.             if (var42 == null) {
  1547.                var42 = "0";
  1548.             }
  1549.  
  1550.             this.field_81 = Integer.valueOf(var42);
  1551.             Object var16 = null;
  1552.             String var43 = ((Applet)this).getParameter(method_15("v\u0000B\u0016\u0019K\u000b_#$E\t_"));
  1553.             if (var43 == null) {
  1554.                var43 = "0";
  1555.             }
  1556.  
  1557.             this.field_78 = Integer.valueOf(var43);
  1558.             FontMetrics var17 = ((Component)this).getGraphics().getFontMetrics(this.field_20);
  1559.             this.field_73 = var17.stringWidth(this.field_71);
  1560.             this.field_72 = var17.getHeight();
  1561.             this.field_12 = var17.getMaxDescent();
  1562.             this.field_108 = this.field_99;
  1563.             if (this.field_110 < this.field_72 - this.field_12) {
  1564.                this.field_110 = this.field_72 - this.field_12;
  1565.             } else if (this.field_110 > this.field_100 - this.field_12) {
  1566.                this.field_110 = this.field_100 - this.field_12;
  1567.             }
  1568.  
  1569.             if (this.field_77 != 0) {
  1570.                this.field_82 = new int[this.field_99 + 360];
  1571.                this.field_83 = new int[this.field_99 + 360];
  1572.  
  1573.                for(int var1 = 0; var1 < this.field_99 + 360; ++var1) {
  1574.                   this.field_82[var1] = (int)((double)this.field_77 * Math.sin((double)this.field_78 * (double)var1 * Math.PI / (double)180.0F)) - this.field_72 - this.field_12 + this.field_110;
  1575.                   this.field_83[var1] = this.field_82[var1] - this.field_68;
  1576.                }
  1577.  
  1578.                this.field_76 = 360;
  1579.                this.field_79 = this.field_72 + this.field_12 + 1;
  1580.                this.field_80 = this.field_79 - 1;
  1581.                return;
  1582.             }
  1583.          } else {
  1584.             if (this.field_74 == 1) {
  1585.                Object var32 = null;
  1586.                String var33 = ((Applet)this).getParameter(method_15("V\u0000B\u0016<Q\u0015[\u0001/"));
  1587.                if (var33 == null) {
  1588.                   var33 = "10";
  1589.                }
  1590.  
  1591.                int var37 = Integer.valueOf(var33);
  1592.                FontMetrics var40 = ((Component)this).getGraphics().getFontMetrics(this.field_20);
  1593.                this.field_32 = var40.getHeight() + var37;
  1594.                this.field_101 = new int[this.field_47.length];
  1595.  
  1596.                for(int var19 = 0; var19 < this.field_47.length; ++var19) {
  1597.                   this.field_101[var19] = (this.field_99 - var40.stringWidth(this.field_47[var19])) / 2;
  1598.                }
  1599.  
  1600.                this.field_53 = -this.field_32;
  1601.                return;
  1602.             }
  1603.  
  1604.             if (this.field_74 >= 2) {
  1605.                Object var30 = null;
  1606.                String var31 = ((Applet)this).getParameter(method_15("V\u0000B\u0016'K\u000b\\\r$V"));
  1607.                if (var31 == null) {
  1608.                   var31 = "2";
  1609.                }
  1610.  
  1611.                this.field_92 = Integer.valueOf(var31);
  1612.                Object var35 = null;
  1613.                String var36 = ((Applet)this).getParameter(method_15("V\u0000B\u0016'C\u001d\\\r$V"));
  1614.                if (var36 == null) {
  1615.                   var36 = "72";
  1616.                }
  1617.  
  1618.                this.field_91 = Integer.valueOf(var36);
  1619.                this.field_57 = this.field_91 - this.field_92;
  1620.                this.field_20 = null;
  1621.                this.field_113 = new Font[this.field_57];
  1622.                int var39 = this.field_92;
  1623.  
  1624.                for(int var18 = 0; var18 < this.field_57; ++var18) {
  1625.                   this.field_113[var18] = new Font(var24, var5, var39++);
  1626.                }
  1627.  
  1628.                this.field_41 = (float)this.field_99 / 2.0F;
  1629.                this.field_40 = (float)this.field_100 / 2.0F;
  1630.                if (this.field_74 == 3) {
  1631.                   this.field_112 = this.field_57 - 1;
  1632.                   return;
  1633.                }
  1634.  
  1635.                this.field_112 = 0;
  1636.             }
  1637.          }
  1638.       }
  1639.  
  1640.    }
  1641.  
  1642.    // $FF: renamed from: b (java.awt.Graphics) void
  1643.    public void method_11(Graphics var1) {
  1644.       switch (this.field_74) {
  1645.          case 0:
  1646.             this.method_7(var1);
  1647.             return;
  1648.          case 1:
  1649.             this.method_12(var1);
  1650.             return;
  1651.          default:
  1652.             this.method_14(var1);
  1653.       }
  1654.    }
  1655.  
  1656.    public void start() {
  1657.       if (this.field_96 == null) {
  1658.          this.field_96 = new Thread(this);
  1659.          this.field_96.start();
  1660.       }
  1661.  
  1662.    }
  1663.  
  1664.    public void stop() {
  1665.       if (this.field_96 != null && this.field_96.isAlive()) {
  1666.          this.field_96.stop();
  1667.       }
  1668.  
  1669.       this.field_96 = null;
  1670.    }
  1671.  
  1672.    public void update(Graphics var1) {
  1673.       this.paint(var1);
  1674.    }
  1675.  
  1676.    // $FF: renamed from: c (java.awt.Graphics) void
  1677.    public void method_12(Graphics var1) {
  1678.       var1.setFont(this.field_20);
  1679.       this.field_53 += this.field_98;
  1680.       if (this.field_53 > this.field_100 + this.field_47.length * this.field_32) {
  1681.          this.field_53 = -this.field_32;
  1682.       }
  1683.  
  1684.       if (this.field_94) {
  1685.          for(int var6 = 0; var6 < this.field_47.length; ++var6) {
  1686.             String var5 = this.field_47[var6];
  1687.             int var3 = this.field_101[var6];
  1688.             int var4 = this.field_100 - this.field_53 + var6 * this.field_32;
  1689.             var1.setColor(this.field_75);
  1690.             var1.drawString(var5, var3 + 1, var4 + 1);
  1691.             var1.setColor(this.field_90);
  1692.             var1.drawString(var5, var3, var4);
  1693.          }
  1694.  
  1695.       } else {
  1696.          var1.setColor(this.field_90);
  1697.  
  1698.          for(int var2 = 0; var2 < this.field_47.length; ++var2) {
  1699.             var1.drawString(this.field_47[var2], this.field_101[var2], this.field_100 - this.field_53 + var2 * this.field_32);
  1700.          }
  1701.  
  1702.       }
  1703.    }
  1704.  
  1705.    // $FF: renamed from: f () void
  1706.    public synchronized void method_13() {
  1707.       Thread.yield();
  1708.       this.field_95.sync();
  1709.       long var1 = 10L - (System.currentTimeMillis() - this.field_11);
  1710.       if (var1 > 0L) {
  1711.          try {
  1712.             Thread.sleep(var1);
  1713.          } catch (InterruptedException var5) {
  1714.          }
  1715.       } else {
  1716.          try {
  1717.             Thread.sleep(1L);
  1718.          } catch (InterruptedException var4) {
  1719.          }
  1720.       }
  1721.  
  1722.       this.field_11 = System.currentTimeMillis();
  1723.  
  1724.       try {
  1725.          Thread.sleep((long)this.field_50);
  1726.       } catch (InterruptedException var3) {
  1727.       }
  1728.    }
  1729.  
  1730.    // $FF: renamed from: d (java.awt.Graphics) void
  1731.    public void method_14(Graphics var1) {
  1732.       String var2 = this.field_47[this.field_111];
  1733.       var1.setFont(this.field_113[this.field_112]);
  1734.       FontMetrics var3 = var1.getFontMetrics(this.field_113[this.field_112]);
  1735.       int var4 = (int)(this.field_41 - (float)var3.stringWidth(var2) / 2.0F);
  1736.       int var5 = (int)(this.field_40 + (float)var3.getHeight() / 4.0F);
  1737.       if (this.field_94) {
  1738.          var1.setColor(this.field_75);
  1739.          var1.drawString(var2, var4 + 1, var5 + 1);
  1740.       }
  1741.  
  1742.       var1.setColor(this.field_90);
  1743.       var1.drawString(var2, var4, var5);
  1744.       if (this.field_74 == 3) {
  1745.          this.field_112 -= this.field_98;
  1746.          if (this.field_112 <= 1) {
  1747.             this.field_112 = this.field_57 - 1;
  1748.             ++this.field_111;
  1749.             if (this.field_111 >= this.field_47.length) {
  1750.                this.field_111 = 0;
  1751.                return;
  1752.             }
  1753.          }
  1754.       } else {
  1755.          this.field_112 += this.field_98;
  1756.          if (this.field_112 >= this.field_57) {
  1757.             this.field_112 = 0;
  1758.             ++this.field_111;
  1759.             if (this.field_111 >= this.field_47.length) {
  1760.                this.field_111 = 0;
  1761.             }
  1762.          }
  1763.       }
  1764.  
  1765.    }
  1766.  
  1767.    // $FF: renamed from: c (java.lang.String) java.lang.String
  1768.    private static String method_15(String var0) {
  1769.       char[] var1 = var0.toCharArray();
  1770.       int var2 = var1.length;
  1771.       int var3 = 0;
  1772.  
  1773.       label32:
  1774.       while(true) {
  1775.          int var4 = 0;
  1776.          byte var10000 = 34;
  1777.          char[] var10001 = var1;
  1778.          int var10002 = var3;
  1779.  
  1780.          label30:
  1781.          while(true) {
  1782.             var10001[var10002] ^= var10000;
  1783.  
  1784.             while(true) {
  1785.                ++var3;
  1786.                ++var4;
  1787.                if (var2 == var3) {
  1788.                   return new String(var1);
  1789.                }
  1790.  
  1791.                switch (var4) {
  1792.                   case 1:
  1793.                      var10000 = 101;
  1794.                      var10001 = var1;
  1795.                      var10002 = var3;
  1796.                      continue label30;
  1797.                   case 2:
  1798.                      var10000 = 58;
  1799.                      var10001 = var1;
  1800.                      var10002 = var3;
  1801.                      continue label30;
  1802.                   case 3:
  1803.                      var10000 = 98;
  1804.                      var10001 = var1;
  1805.                      var10002 = var3;
  1806.                      continue label30;
  1807.                   case 4:
  1808.                      var10000 = 74;
  1809.                      var10001 = var1;
  1810.                      var10002 = var3;
  1811.                      continue label30;
  1812.                   case 5:
  1813.                      continue label32;
  1814.                }
  1815.             }
  1816.          }
  1817.       }
  1818.    }
  1819. }
  1820.