home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / AnfyJava14 / data1.cab / Program_Files / Applet / huerot / huerot.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-19  |  17.2 KB  |  1,481 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.Font;
  7. import java.awt.FontMetrics;
  8. import java.awt.Frame;
  9. import java.awt.Graphics;
  10. import java.awt.Image;
  11. import java.awt.Label;
  12. import java.awt.LayoutManager;
  13. import java.awt.MediaTracker;
  14. import java.awt.Panel;
  15. import java.awt.Toolkit;
  16. import java.awt.image.DirectColorModel;
  17. import java.awt.image.ImageObserver;
  18. import java.awt.image.MemoryImageSource;
  19. import java.awt.image.PixelGrabber;
  20. import java.io.ByteArrayOutputStream;
  21. import java.io.DataInputStream;
  22. import java.io.FilterInputStream;
  23. import java.io.IOException;
  24. import java.io.InputStream;
  25. import java.io.OutputStream;
  26. import java.net.MalformedURLException;
  27. import java.net.URL;
  28.  
  29. public class huerot extends Applet implements Runnable, ImageObserver {
  30.    // $FF: renamed from: a int
  31.    private int field_0;
  32.    // $FF: renamed from: b java.awt.Frame
  33.    Frame field_1;
  34.    // $FF: renamed from: c boolean
  35.    boolean field_2 = false;
  36.    // $FF: renamed from: d java.lang.String
  37.    final String field_3 = method_18("oU]\u000b\u0012Z\u0005O\u001eWhDO\u000e\u0018\u000efD\u0012\u0014ML\rO\u0000YR\u0003\u0006\u0019H");
  38.    // $FF: renamed from: e int
  39.    int field_4;
  40.    // $FF: renamed from: f long
  41.    long field_5;
  42.    // $FF: renamed from: g int
  43.    int field_6;
  44.    // $FF: renamed from: h int[]
  45.    int[] field_7;
  46.    // $FF: renamed from: i java.awt.Font
  47.    Font field_8;
  48.    // $FF: renamed from: j int
  49.    int field_9;
  50.    // $FF: renamed from: k java.awt.Graphics
  51.    private Graphics field_10;
  52.    // $FF: renamed from: l int
  53.    int field_11;
  54.    // $FF: renamed from: m float
  55.    float field_12;
  56.    // $FF: renamed from: n float
  57.    float field_13;
  58.    // $FF: renamed from: o java.awt.Image
  59.    private Image field_14;
  60.    // $FF: renamed from: p int
  61.    int field_15;
  62.    // $FF: renamed from: q boolean
  63.    boolean field_16 = false;
  64.    // $FF: renamed from: r java.lang.String[]
  65.    String[] field_17;
  66.    // $FF: renamed from: s java.net.URL
  67.    URL field_18;
  68.    // $FF: renamed from: t int
  69.    int field_19;
  70.    // $FF: renamed from: u int
  71.    int field_20;
  72.    // $FF: renamed from: v java.lang.String
  73.    String field_21;
  74.    // $FF: renamed from: w java.lang.String
  75.    String field_22;
  76.    // $FF: renamed from: x java.lang.String
  77.    String field_23;
  78.    // $FF: renamed from: y java.lang.String
  79.    String field_24;
  80.    // $FF: renamed from: z java.lang.String
  81.    String field_25;
  82.    // $FF: renamed from: A java.lang.String
  83.    String field_26;
  84.    // $FF: renamed from: B int
  85.    int field_27;
  86.    // $FF: renamed from: C boolean
  87.    boolean field_28 = false;
  88.    // $FF: renamed from: D int
  89.    int field_29;
  90.    // $FF: renamed from: E java.awt.Graphics
  91.    private Graphics field_30;
  92.    // $FF: renamed from: F java.awt.Image
  93.    private Image field_31;
  94.    // $FF: renamed from: G boolean
  95.    boolean field_32 = false;
  96.    // $FF: renamed from: H java.awt.Image
  97.    private Image field_33;
  98.    // $FF: renamed from: I int
  99.    int field_34;
  100.    // $FF: renamed from: J int
  101.    int field_35;
  102.    // $FF: renamed from: K int[]
  103.    int[] field_36;
  104.    // $FF: renamed from: L int
  105.    int field_37;
  106.    // $FF: renamed from: M anfy
  107.    anfy field_38;
  108.    // $FF: renamed from: N java.awt.image.MemoryImageSource
  109.    MemoryImageSource field_39;
  110.    // $FF: renamed from: O int
  111.    int field_40;
  112.    // $FF: renamed from: P int
  113.    int field_41;
  114.    // $FF: renamed from: Q boolean
  115.    boolean field_42 = false;
  116.    // $FF: renamed from: R int
  117.    int field_43 = 1;
  118.    // $FF: renamed from: S java.lang.String
  119.    String field_44;
  120.    // $FF: renamed from: T int
  121.    int field_45;
  122.    // $FF: renamed from: U int
  123.    int field_46;
  124.    // $FF: renamed from: V int
  125.    int field_47;
  126.    // $FF: renamed from: W java.awt.Color
  127.    Color field_48;
  128.    // $FF: renamed from: X int
  129.    int field_49;
  130.    // $FF: renamed from: Y int
  131.    int field_50;
  132.    // $FF: renamed from: Z int
  133.    int field_51;
  134.    // $FF: renamed from: ba int
  135.    int field_52;
  136.    // $FF: renamed from: bb int
  137.    int field_53;
  138.    // $FF: renamed from: bc int
  139.    int field_54;
  140.    // $FF: renamed from: bd int[]
  141.    int[] field_55;
  142.    // $FF: renamed from: be int[]
  143.    int[] field_56;
  144.    // $FF: renamed from: bf int[]
  145.    int[] field_57;
  146.    // $FF: renamed from: bg float[]
  147.    float[] field_58;
  148.    // $FF: renamed from: bh float[]
  149.    float[] field_59;
  150.    // $FF: renamed from: bi float
  151.    float field_60;
  152.    // $FF: renamed from: bj float
  153.    float field_61;
  154.    // $FF: renamed from: bk java.lang.String
  155.    String field_62;
  156.    // $FF: renamed from: bl java.awt.Color
  157.    Color field_63;
  158.    // $FF: renamed from: bm int
  159.    int field_64;
  160.    // $FF: renamed from: bn int
  161.    int field_65;
  162.    // $FF: renamed from: bo boolean
  163.    boolean field_66;
  164.    // $FF: renamed from: bp boolean
  165.    boolean field_67;
  166.    // $FF: renamed from: bq java.awt.Toolkit
  167.    Toolkit field_68;
  168.    // $FF: renamed from: br java.lang.Thread
  169.    Thread field_69;
  170.    // $FF: renamed from: bs int
  171.    int field_70;
  172.    // $FF: renamed from: bt int
  173.    int field_71;
  174.    // $FF: renamed from: bu int
  175.    int field_72;
  176.    // $FF: renamed from: bv int
  177.    int field_73;
  178.    // $FF: renamed from: bw int
  179.    int field_74;
  180.    // $FF: renamed from: bx int[]
  181.    int[] field_75;
  182.    // $FF: renamed from: by int
  183.    int field_76;
  184.    // $FF: renamed from: bz Lware
  185.    Lware field_77;
  186.    // $FF: renamed from: bA int
  187.    int field_78;
  188.    // $FF: renamed from: bB int
  189.    int field_79;
  190.    // $FF: renamed from: bC int
  191.    int field_80;
  192.    // $FF: renamed from: bD int
  193.    int field_81;
  194.    // $FF: renamed from: bE int
  195.    int field_82;
  196.    // $FF: renamed from: bF int
  197.    int field_83;
  198.    // $FF: renamed from: bG int
  199.    int field_84;
  200.    // $FF: renamed from: bH java.awt.Font[]
  201.    Font[] field_85;
  202.  
  203.    // $FF: renamed from: a () void
  204.    private final void method_0() {
  205.       while(true) {
  206.          ((Applet)this).showStatus(method_18("jJC@\u0003\u000eWH\n\u0018X@\r\u0010\u0000Y\u000bL\t\u0011WOL\u0011\u0016\u0000FB\nWMWH\u0003\u001eZV\r\u000b\u001e@@\r\u000e\u0019\u000emy*;\u000f"));
  207.  
  208.          try {
  209.             Thread.sleep(500L);
  210.          } catch (InterruptedException var1) {
  211.          }
  212.       }
  213.    }
  214.  
  215.    // $FF: renamed from: b () boolean
  216.    public synchronized boolean method_1() {
  217.       ((Component)this).prepareImage(this.field_33, this);
  218.       if (!this.field_16) {
  219.          return false;
  220.       } else {
  221.          for(int var1 = 0; var1 < 3; ++var1) {
  222.             this.notifyAll();
  223.             Thread.yield();
  224.  
  225.             try {
  226.                Thread.sleep(100L);
  227.             } catch (InterruptedException var2) {
  228.             }
  229.          }
  230.  
  231.          return this.field_32;
  232.       }
  233.    }
  234.  
  235.    public void destroy() {
  236.       if (this.field_33 != null) {
  237.          this.field_33.flush();
  238.       }
  239.  
  240.       this.field_33 = null;
  241.       if (this.field_31 != null) {
  242.          this.field_31.flush();
  243.       }
  244.  
  245.       this.field_31 = null;
  246.       if (this.field_30 != null) {
  247.          this.field_30.dispose();
  248.       }
  249.  
  250.       this.field_30 = null;
  251.       System.gc();
  252.    }
  253.  
  254.    // $FF: renamed from: a (java.lang.String) java.awt.Image
  255.    Image method_2(String var1) {
  256.       try {
  257.          return this.method_3(var1);
  258.       } catch (NoSuchMethodError var2) {
  259.          return this.method_3(var1);
  260.       }
  261.    }
  262.  
  263.    // $FF: renamed from: b (java.lang.String) java.awt.Image
  264.    synchronized Image method_3(String var1) {
  265.       URL var2 = null;
  266.       Image var3 = null;
  267.  
  268.       try {
  269.          var2 = new URL(((Applet)this).getDocumentBase(), var1);
  270.       } catch (MalformedURLException var14) {
  271.       }
  272.  
  273.       try {
  274.          try {
  275.             InputStream var4 = this.getClass().getResourceAsStream(var2.toString());
  276.             if (var4 != null) {
  277.                ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
  278.                byte[] var6 = new byte[512];
  279.                boolean var8 = false;
  280.                Object var9 = null;
  281.  
  282.                try {
  283.                   while(!var8) {
  284.                      int var7 = var4.read(var6, 0, 512);
  285.                      if (var7 != -1) {
  286.                         var5.write(var6, 0, var7);
  287.                         ((OutputStream)var5).flush();
  288.                      } else {
  289.                         var8 = true;
  290.                      }
  291.                   }
  292.  
  293.                   var21 = var5.toByteArray();
  294.                   ((OutputStream)var5).close();
  295.                   var4.close();
  296.                } catch (IOException var15) {
  297.                   var21 = null;
  298.                }
  299.  
  300.                System.gc();
  301.                if (var21 != null) {
  302.                   var3 = ((Component)this).getToolkit().createImage(var21);
  303.                   ((Component)this).prepareImage(var3, this);
  304.                }
  305.             }
  306.          } catch (NoSuchMethodError var16) {
  307.          }
  308.       } catch (SecurityException var17) {
  309.       }
  310.  
  311.       if (var3 == null) {
  312.          int var18 = 0;
  313.  
  314.          while(var18 < 5) {
  315.             try {
  316.                if (var18 % 2 == 0) {
  317.                   var3 = Toolkit.getDefaultToolkit().getImage(var2);
  318.                } else {
  319.                   var3 = ((Applet)this).getImage(var2);
  320.                }
  321.  
  322.                ++var18;
  323.                MediaTracker var20 = new MediaTracker(this);
  324.                this.notifyAll();
  325.                Thread.currentThread();
  326.                Thread.yield();
  327.  
  328.                try {
  329.                   var20.addImage(var3, 0);
  330.                   var20.waitForID(0);
  331.                } catch (InterruptedException var12) {
  332.                   var3 = null;
  333.                }
  334.  
  335.                if (var20.isErrorID(0)) {
  336.                   var3 = null;
  337.                } else {
  338.                   var18 = 6;
  339.                }
  340.             } catch (NullPointerException var13) {
  341.                System.gc();
  342.             }
  343.          }
  344.       }
  345.  
  346.       if (var3 == null) {
  347.          for(int var19 = 0; var19 < 25; ++var19) {
  348.             ((Applet)this).showStatus(method_18("gHL\u0000\u0012\u000e") + var1 + method_18("\u000eKB\u0013WHJX\t\u0013\u000f"));
  349.  
  350.             try {
  351.                Thread.currentThread();
  352.                Thread.sleep(250L);
  353.             } catch (InterruptedException var11) {
  354.             }
  355.          }
  356.       } else {
  357.          while(var3.getWidth(this) < 0) {
  358.             this.notifyAll();
  359.             Thread.currentThread();
  360.             Thread.yield();
  361.  
  362.             try {
  363.                Thread.currentThread();
  364.                Thread.sleep(100L);
  365.             } catch (InterruptedException var10) {
  366.             }
  367.          }
  368.       }
  369.  
  370.       return var3;
  371.    }
  372.  
  373.    // $FF: renamed from: a (java.lang.String, int) void
  374.    public void method_4(String var1, int var2) {
  375.       try {
  376.          this.method_5(var1, var2);
  377.       } catch (NoSuchMethodError var3) {
  378.          this.method_5(var1, var2);
  379.       }
  380.    }
  381.  
  382.    // $FF: renamed from: b (java.lang.String, int) void
  383.    public void method_5(String var1, int var2) {
  384.       try {
  385.          URL var3 = new URL(((Applet)this).getDocumentBase(), var1);
  386.  
  387.          try {
  388.             DataInputStream var4 = new DataInputStream(var3.openStream());
  389.             if (var4 != null) {
  390.                ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
  391.                byte[] var6 = new byte[512];
  392.                int var7 = 0;
  393.                int var8 = 0;
  394.                boolean var9 = false;
  395.  
  396.                try {
  397.                   while(!var9) {
  398.                      var7 = var4.read(var6, 0, 512);
  399.                      if (var7 == -1) {
  400.                         var9 = true;
  401.                      } else {
  402.                         var5.write(var6, 0, var7);
  403.                         ((OutputStream)var5).flush();
  404.                         var8 += var7;
  405.                      }
  406.                   }
  407.  
  408.                   byte[] var10 = var5.toByteArray();
  409.                   ((OutputStream)var5).close();
  410.                   Object var26 = null;
  411.                   ((FilterInputStream)var4).close();
  412.                   System.gc();
  413.                   if (var2 != 0) {
  414.                      int var29 = 1;
  415.  
  416.                      for(int var13 = 0; var13 < var8; ++var13) {
  417.                         if (var10[var13] == 10) {
  418.                            ++var29;
  419.                         }
  420.                      }
  421.  
  422.                      this.field_17 = new String[var29 - 1];
  423.                      int[] var14 = new int[var29 + 1];
  424.                      int[] var15 = new int[var29 + 1];
  425.                      var14[0] = 0;
  426.                      int var16 = 0;
  427.                      byte var17 = 0;
  428.  
  429.                      for(int var18 = 0; var18 < var8; ++var18) {
  430.                         byte var28 = var10[var18];
  431.                         if (var28 == 10) {
  432.                            var14[var16 + 1] = var18 + 1;
  433.                            if (var17 == 13) {
  434.                               var15[var16] = var18 - var14[var16] - 1;
  435.                            } else {
  436.                               var15[var16] = var18 - var14[var16];
  437.                            }
  438.  
  439.                            ++var16;
  440.                         }
  441.  
  442.                         var17 = var28;
  443.                      }
  444.  
  445.                      var15[var16] = var8 - var14[var16 + 1] - 1;
  446.  
  447.                      try {
  448.                         for(int var19 = 0; var19 < var29 - 1; ++var19) {
  449.                            try {
  450.                               this.field_17[var19] = new String(var10, var14[var19], var15[var19]);
  451.                            } catch (NoSuchMethodError var20) {
  452.                               this.field_17[var19] = new String(var10, 0, var14[var19], var15[var19]);
  453.                            }
  454.                         }
  455.  
  456.                         return;
  457.                      } catch (StringIndexOutOfBoundsException var22) {
  458.                         this.field_17 = null;
  459.                         return;
  460.                      }
  461.                   }
  462.  
  463.                   for(int var12 = 0; var12 < var8; ++var12) {
  464.                      byte var11 = var10[var12];
  465.                      if (var11 == 13 || var11 == 10) {
  466.                         var10[var12] = 32;
  467.                      }
  468.                   }
  469.  
  470.                   try {
  471.                      this.field_44 = new String(var10);
  472.                      return;
  473.                   } catch (NoSuchMethodError var21) {
  474.                      this.field_44 = new String(var10, 0);
  475.                      return;
  476.                   }
  477.                } catch (IOException var23) {
  478.                   return;
  479.                }
  480.             }
  481.          } catch (IOException var24) {
  482.             return;
  483.          }
  484.       } catch (MalformedURLException var25) {
  485.       }
  486.  
  487.    }
  488.  
  489.    // $FF: renamed from: a (java.awt.Graphics) void
  490.    public void method_6(Graphics var1) {
  491.       var1.setFont(this.field_8);
  492.       if (this.field_0 == 0) {
  493.          this.field_81 = this.field_82;
  494.       } else {
  495.          this.field_15 += this.field_71;
  496.          this.field_81 = this.field_82 - (int)Math.abs((double)this.field_0 * Math.sin((double)this.field_15 / (double)90.0F * Math.PI));
  497.       }
  498.  
  499.       if (this.field_50 != 0) {
  500.          for(int var2 = 0; var2 < this.field_73; ++var2) {
  501.             int var3 = this.field_55[this.field_49 + var2];
  502.             var1.copyArea(var2, var3, 1, this.field_52, 0, this.field_40 - var3);
  503.          }
  504.  
  505.          if (this.field_67) {
  506.             var1.setColor(this.field_48);
  507.             var1.drawString(this.field_44, this.field_79 + 1, this.field_40 + this.field_45 + 1);
  508.          }
  509.  
  510.          var1.setColor(this.field_63);
  511.          var1.drawString(this.field_44, this.field_79, this.field_40 + this.field_45);
  512.  
  513.          for(int var4 = 0; var4 < this.field_73; ++var4) {
  514.             var1.copyArea(var4, this.field_40, 1, this.field_53, 0, this.field_56[this.field_49 + var4]);
  515.          }
  516.  
  517.          this.field_49 -= this.field_54;
  518.          if (this.field_49 < 0) {
  519.             this.field_49 += 360;
  520.          }
  521.       } else {
  522.          if (this.field_67) {
  523.             var1.setColor(this.field_48);
  524.             var1.drawString(this.field_44, this.field_79 + 1, this.field_81 + 1);
  525.          }
  526.  
  527.          var1.setColor(this.field_63);
  528.          var1.drawString(this.field_44, this.field_79, this.field_81);
  529.       }
  530.  
  531.       this.field_79 -= this.field_72;
  532.       if (this.field_79 < -this.field_46) {
  533.          this.field_79 = this.field_73;
  534.       }
  535.  
  536.    }
  537.  
  538.    // $FF: renamed from: c () void
  539.    void method_7() {
  540.       int var4 = 0;
  541.       int var5 = 0;
  542.       int var6 = 0;
  543.       this.field_61 += this.field_60;
  544.       float var11 = this.field_61;
  545.       int var12 = this.field_70;
  546.       int[] var13 = this.field_57;
  547.       float[] var14 = this.field_59;
  548.       int[] var15 = this.field_36;
  549.       int[] var16 = this.field_7;
  550.  
  551.       for(int var17 = 0; var17 < var12; ++var17) {
  552.          int var3 = var13[var17];
  553.          float var2 = var14[var17];
  554.          if (var2 == 0.0F) {
  555.             var6 = var3;
  556.             var5 = var3;
  557.             var4 = var3;
  558.          } else {
  559.             float var1 = this.field_58[var17] + var11;
  560.             double var7 = (double)(var1 - (float)((int)var1)) * (double)6.0F;
  561.             double var9 = var7 - (double)((int)var7);
  562.             switch ((int)var7) {
  563.                case 0:
  564.                   var4 = var3;
  565.                   var5 = (int)((double)var3 * ((double)1.0F - (double)var2 * ((double)1.0F - var9)));
  566.                   var6 = var15[var17];
  567.                   break;
  568.                case 1:
  569.                   var4 = (int)((double)var3 * ((double)1.0F - (double)var2 * var9));
  570.                   var5 = var3;
  571.                   var6 = var15[var17];
  572.                   break;
  573.                case 2:
  574.                   var4 = var15[var17];
  575.                   var5 = var3;
  576.                   var6 = (int)((double)var3 * ((double)1.0F - (double)var2 * ((double)1.0F - var9)));
  577.                   break;
  578.                case 3:
  579.                   var4 = var15[var17];
  580.                   var5 = (int)((double)var3 * ((double)1.0F - (double)var2 * var9));
  581.                   var6 = var3;
  582.                   break;
  583.                case 4:
  584.                   var4 = (int)((double)var3 * ((double)1.0F - (double)var2 * ((double)1.0F - var9)));
  585.                   var5 = var15[var17];
  586.                   var6 = var3;
  587.                   break;
  588.                case 5:
  589.                   var4 = var3;
  590.                   var5 = var15[var17];
  591.                   var6 = (int)((double)var3 * ((double)1.0F - (double)var2 * var9));
  592.             }
  593.          }
  594.  
  595.          var16[var17] = var4 << 16 | var5 << 8 | var6;
  596.       }
  597.  
  598.    }
  599.  
  600.    public boolean imageUpdate(Image var1, int var2, int var3, int var4, int var5, int var6) {
  601.       if (var1 == this.field_33) {
  602.          if (var2 == 16) {
  603.             this.field_32 = true;
  604.          }
  605.  
  606.          return true;
  607.       } else {
  608.          return true;
  609.       }
  610.    }
  611.  
  612.    public void init() {
  613.       ((Container)this).setLayout((LayoutManager)null);
  614.       ((Panel)this).addNotify();
  615.       this.field_68 = ((Component)this).getToolkit();
  616.       this.field_62 = ((Applet)this).getParameter(method_18("]QL\u0013\u0002]H^\u0000"));
  617.       Object var1 = null;
  618.       String var38 = ((Applet)this).getParameter(method_18("MWH\u0003\u001eZV"));
  619.       if (var38 != null) {
  620.          if (!var38.startsWith(method_18("oU]\u000b\u0012Z\u0005O\u001eWhDO\u000e\u0018\u000efD\u0012\u0014ML\rO\u0000YR\u0003\u0006\u0019H"))) {
  621.             this.method_0();
  622.          }
  623.       } else {
  624.          this.method_0();
  625.       }
  626.  
  627.       Object var2 = null;
  628.       Object var3 = null;
  629.  
  630.       try {
  631.          var39 = ((Applet)this).getDocumentBase().getProtocol();
  632.       } catch (SecurityException var35) {
  633.          var39 = method_18("HLA\u0002");
  634.       }
  635.  
  636.       try {
  637.          var40 = ((Applet)this).getDocumentBase().getHost();
  638.       } catch (SecurityException var34) {
  639.          var40 = "";
  640.       }
  641.  
  642.       if (!var39.equalsIgnoreCase(method_18("HLA\u0002")) && var40.length() != 0 && !var40.equalsIgnoreCase(method_18("BJN\u0006\u001bFJ^\u0013")) && !var40.equals(method_18("\u001f\u0017\u001aIG\u0000\u0015\u0003V"))) {
  643.          if (var40.startsWith(method_18("YRZI"))) {
  644.             var40 = var40.substring(4);
  645.          }
  646.  
  647.          Object var4 = null;
  648.          String var41 = ((Applet)this).getParameter(method_18("\\@J\u0004\u0018J@"));
  649.          if (var41 != null && !var41.equals("NO") && var41.length() > 10) {
  650.             int var5 = 1;
  651.  
  652.             try {
  653.                for(int var6 = 0; var6 < var41.length(); ++var6) {
  654.                   if (var41.charAt(var6) == '+') {
  655.                      ++var5;
  656.                   }
  657.                }
  658.             } catch (StringIndexOutOfBoundsException var37) {
  659.             }
  660.  
  661.             int[] var44 = new int[var5];
  662.             if (var5 == 1) {
  663.                var44[0] = var41.length();
  664.             } else {
  665.                int var7 = 0;
  666.  
  667.                try {
  668.                   for(int var8 = 0; var8 < var41.length(); ++var8) {
  669.                      if (var41.charAt(var8) == '+') {
  670.                         var44[var7] = var8;
  671.                         ++var7;
  672.                      }
  673.                   }
  674.                } catch (StringIndexOutOfBoundsException var36) {
  675.                }
  676.  
  677.                var44[var7] = var41.length();
  678.             }
  679.  
  680.             String[] var46 = new String[var5];
  681.             int var48 = 0;
  682.  
  683.             for(int var9 = 0; var9 < var5; ++var9) {
  684.                try {
  685.                   var46[var9] = var41.substring(var48, var44[var9]);
  686.                } catch (StringIndexOutOfBoundsException var33) {
  687.                }
  688.  
  689.                var48 = var44[var9] + 1;
  690.             }
  691.  
  692.             for(int var10 = 0; var10 < var5; ++var10) {
  693.                int var11 = var46[var10].length() - 8;
  694.                byte[] var15 = new byte[var11];
  695.                byte[] var16 = new byte[8];
  696.                var46[var10].getBytes(0, var11, var15, 0);
  697.                var46[var10].getBytes(var11, var11 + 8, var16, 0);
  698.                int var13 = var11 % 7;
  699.                int var14 = var11 % 3;
  700.  
  701.                for(int var17 = 0; var17 < var11; ++var17) {
  702.                   byte var12 = var15[var17];
  703.                   if (var12 >= 48 && var12 <= 57) {
  704.                      var15[var17] = this.method_12(var12, var13, 48, 57);
  705.                   } else if (var12 >= 65 && var12 <= 90) {
  706.                      var15[var17] = this.method_12(var12, var13, 65, 90);
  707.                   } else if (var12 >= 97 && var12 <= 122) {
  708.                      var15[var17] = this.method_12(var12, var13, 97, 122);
  709.                   } else if (var12 == 45) {
  710.                      var15[var17] = 46;
  711.                   } else if (var12 == 46) {
  712.                      var15[var17] = 45;
  713.                   }
  714.  
  715.                   if ((var13 += var14) > 7) {
  716.                      var13 = 1;
  717.                   }
  718.                }
  719.  
  720.                int var18 = 0;
  721.                int var19 = 0;
  722.  
  723.                for(int var20 = 0; var20 < 4; ++var20) {
  724.                   var16[var20] = (byte)(var16[var20] - 52);
  725.                }
  726.  
  727.                for(int var21 = 4; var21 < 8; ++var21) {
  728.                   var16[var21] = (byte)(var16[var21] - 55);
  729.                }
  730.  
  731.                for(int var22 = 0; var22 < var11; var22 += 2) {
  732.                   var18 += var15[var22];
  733.                }
  734.  
  735.                for(int var23 = 1; var23 < var11; var23 += 2) {
  736.                   var19 += var15[var23];
  737.                }
  738.  
  739.                String var24 = String.valueOf(var18);
  740.  
  741.                String var25;
  742.                for(var25 = String.valueOf(var19); var24.length() < 4; var24 = "0" + var24) {
  743.                }
  744.  
  745.                while(var25.length() < 4) {
  746.                   var25 = "0" + var25;
  747.                }
  748.  
  749.                byte[] var26 = new byte[8];
  750.                var24.getBytes(0, 4, var26, 0);
  751.                var25.getBytes(0, 4, var26, 4);
  752.                String var27 = new String(var26, 0);
  753.                if (var27.equals(new String(var16, 0))) {
  754.                   String var28 = new String(var15, 0);
  755.                   Object var29 = null;
  756.                   String var58;
  757.                   if (var28.startsWith(method_18("YRZI"))) {
  758.                      var58 = var28.substring(4);
  759.                   } else {
  760.                      var58 = var28;
  761.                   }
  762.  
  763.                   if (var40.equalsIgnoreCase(var58)) {
  764.                      this.field_42 = true;
  765.                   }
  766.                }
  767.             }
  768.          }
  769.       } else {
  770.          this.field_42 = true;
  771.       }
  772.  
  773.       String var42 = ((Applet)this).getParameter(method_18("\\@J\u000b\u001e@N"));
  774.       if (var42 != null && !var42.equalsIgnoreCase("NO")) {
  775.          try {
  776.             this.field_18 = new URL(((Applet)this).getDocumentBase(), var42);
  777.          } catch (MalformedURLException var32) {
  778.             this.field_18 = null;
  779.          }
  780.       }
  781.  
  782.       String var43 = ((Applet)this).getParameter(method_18("\\@J\t\u0012YC_\u0006\u001aK"));
  783.       if (var43.equalsIgnoreCase(method_18("w`~"))) {
  784.          this.field_28 = true;
  785.       }
  786.  
  787.       Container var47;
  788.       for(var47 = ((Component)this).getParent(); !(var47 instanceof Frame); var47 = ((Component)var47).getParent()) {
  789.       }
  790.  
  791.       this.field_1 = (Frame)var47;
  792.       this.field_1.setCursor(3);
  793.       String var49 = ((Applet)this).getParameter(method_18("ASH\u0015\u001eCB"));
  794.       if (var49 != null && !var49.equalsIgnoreCase("NO")) {
  795.          this.field_33 = this.method_2(var49);
  796.          if (this.field_33 != null) {
  797.             String var50 = ((Applet)this).getParameter(method_18("ASH\u0015\u001eCBu"));
  798.             if (var50 == null) {
  799.                var50 = "0";
  800.             }
  801.  
  802.             this.field_34 = Integer.valueOf(var50);
  803.             String var53 = ((Applet)this).getParameter(method_18("ASH\u0015\u001eCBt"));
  804.             if (var53 == null) {
  805.                var53 = "0";
  806.             }
  807.  
  808.             this.field_35 = Integer.valueOf(var53);
  809.          }
  810.       }
  811.  
  812.       this.field_26 = ((Applet)this).getParameter(method_18("cLC4.`f"));
  813.       if (this.field_26 == null) {
  814.          this.field_26 = "10";
  815.       }
  816.  
  817.       this.field_20 = Integer.valueOf(this.field_26);
  818.       this.field_21 = ((Applet)this).getParameter(method_18("GHL\u0000\u0012"));
  819.       this.field_22 = ((Applet)this).getParameter(method_18("\\@^"));
  820.       if (this.field_22 == null) {
  821.          this.field_22 = "1";
  822.       }
  823.  
  824.       this.field_25 = ((Applet)this).getParameter(method_18("FPH\u0014\u001fGCY"));
  825.       if (this.field_25 == null) {
  826.          this.field_25 = "10";
  827.       }
  828.  
  829.       this.field_60 = Float.valueOf(this.field_25) / 10000.0F;
  830.       this.field_23 = ((Applet)this).getParameter(method_18("C@@\u0003\u0012BDT"));
  831.       this.field_24 = ((Applet)this).getParameter(method_18("^WD\b\u0005GQT"));
  832.       this.field_19 = Integer.valueOf(this.field_23);
  833.       this.field_37 = Integer.valueOf(this.field_24);
  834.       if (this.field_19 < 0) {
  835.          this.field_19 = 0;
  836.       }
  837.  
  838.       if (this.field_37 > 10) {
  839.          this.field_37 = 10;
  840.       } else if (this.field_37 < 1) {
  841.          this.field_37 = 1;
  842.       }
  843.  
  844.       this.field_43 = Integer.valueOf(this.field_22);
  845.       if (this.field_43 > 8) {
  846.          this.field_43 = 8;
  847.       } else if (this.field_43 < 1) {
  848.          this.field_43 = 1;
  849.       }
  850.  
  851.       this.field_76 = ((Component)this).size().width / this.field_43;
  852.       this.field_11 = ((Component)this).size().height / this.field_43;
  853.       this.field_41 = this.field_76 * this.field_43;
  854.       this.field_40 = this.field_11 * this.field_43;
  855.       ((Applet)this).showStatus(method_18("bJL\u0003\u001e@B\r\u000e\u001aOBHIY\u0000"));
  856.       this.field_14 = this.method_2(this.field_21);
  857.       this.field_70 = this.field_76 * this.field_11;
  858.       int[] var51 = new int[this.field_70];
  859.       this.field_7 = new int[this.field_70];
  860.       PixelGrabber var54 = new PixelGrabber(this.field_14, 0, 0, this.field_76, this.field_11, var51, 0, this.field_76);
  861.  
  862.       try {
  863.          var54.grabPixels();
  864.       } catch (InterruptedException var31) {
  865.       }
  866.  
  867.       this.field_58 = new float[this.field_70];
  868.       this.field_59 = new float[this.field_70];
  869.       this.field_57 = new int[this.field_70];
  870.       this.field_36 = new int[this.field_70];
  871.       float[] var55 = new float[3];
  872.  
  873.       for(int var45 = 0; var45 < this.field_70; ++var45) {
  874.          int var56 = var51[var45];
  875.          var55 = Color.RGBtoHSB((var56 & 16711680) >> 16, (var56 & '\uff00') >> 8, var56 & 255, var55);
  876.          this.field_58[var45] = var55[0];
  877.          this.field_59[var45] = var55[1];
  878.          this.field_57[var45] = (int)(var55[2] * 255.0F);
  879.          this.field_36[var45] = (int)((double)this.field_57[var45] * ((double)1.0F - (double)this.field_59[var45]));
  880.       }
  881.  
  882.       Object var52 = null;
  883.  
  884.       try {
  885.          this.method_8();
  886.       } catch (NoSuchMethodError var30) {
  887.          this.method_8();
  888.       }
  889.  
  890.       this.method_13();
  891.       this.field_31 = ((Component)this).createImage(this.field_41, this.field_40 + this.field_52);
  892.       this.field_30 = this.field_31.getGraphics();
  893.       if (!this.field_42) {
  894.          Label var57 = new Label(method_18("fPHG%AQL\u0013\u0018\\\u0005L\u0017\u0007B@YG\u0015W\u0005k\u0006\u0015GJ\r$\u001e[FN\u000eW\u001f\u001c\u0014QX\u0017\u001d\u0003"));
  895.          this.field_77 = new Lware(((Applet)this).getAppletContext(), var57);
  896.          this.field_77.setTitle(method_18("fPHG%AQL\u0013\u0018\\\u0005l\u0017\u0007B@YG\u0015W\u0005k\u0006\u0015GJ\r$\u001e[FN\u000e"));
  897.          this.field_77.hide();
  898.       }
  899.  
  900.    }
  901.  
  902.    // $FF: renamed from: d () void
  903.    void method_8() {
  904.       this.field_39 = new MemoryImageSource(this.field_76, this.field_11, new DirectColorModel(24, 16711680, 65280, 255), this.field_7, 0, this.field_76);
  905.  
  906.       String var1;
  907.       try {
  908.          var1 = System.getProperty(method_18("DD[\u0006YX@_\u0014\u001eAK"));
  909.       } catch (SecurityException var3) {
  910.          var1 = method_18("[KF");
  911.       }
  912.  
  913.       if (!var1.startsWith(method_18("\u001f\u000b\u001d"))) {
  914.          try {
  915.             this.field_39.setAnimated(true);
  916.             this.field_39.setFullBufferUpdates(true);
  917.             this.field_14 = ((Component)this).createImage(this.field_39);
  918.             this.field_39.newPixels();
  919.             this.field_16 = true;
  920.          } catch (NoSuchMethodError var2) {
  921.             this.field_16 = false;
  922.          }
  923.       }
  924.  
  925.       if (!this.field_16) {
  926.          this.field_39 = null;
  927.          this.field_38 = new anfy(this.field_76, this.field_11, new DirectColorModel(24, 16711680, 65280, 255), this.field_7, 0, this.field_76);
  928.          this.field_14 = ((Component)this).createImage(this.field_38);
  929.       }
  930.  
  931.    }
  932.  
  933.    public final boolean mouseDown(Event var1, int var2, int var3) {
  934.       if (!this.field_42) {
  935.          this.field_77.show();
  936.          this.field_77.toFront();
  937.          this.field_77.requestFocus();
  938.       } else if (this.field_18 != null) {
  939.          if (this.field_28) {
  940.             ((Applet)this).getAppletContext().showDocument(this.field_18, ((Applet)this).getParameter(method_18("\\@J\u0001\u0005OHH\t\u0016C@")));
  941.          } else {
  942.             ((Applet)this).getAppletContext().showDocument(this.field_18);
  943.          }
  944.       }
  945.  
  946.       return true;
  947.    }
  948.  
  949.    public final boolean mouseEnter(Event var1, int var2, int var3) {
  950.       ((Applet)this).showStatus(this.field_62);
  951.       return true;
  952.    }
  953.  
  954.    public final boolean mouseExit(Event var1, int var2, int var3) {
  955.       ((Applet)this).showStatus("");
  956.       return true;
  957.    }
  958.  
  959.    public final void paint(Graphics var1) {
  960.       if (this.field_14 != null) {
  961.          if (this.field_43 == 1) {
  962.             this.field_30.drawImage(this.field_14, 0, 0, this);
  963.          } else {
  964.             this.method_10();
  965.             this.field_30.drawImage(this.field_14, 0, 0, this.field_41, this.field_40, this);
  966.          }
  967.  
  968.          if (this.field_33 != null) {
  969.             this.method_9();
  970.          }
  971.  
  972.          if (this.field_66) {
  973.             this.method_14(this.field_30);
  974.          }
  975.  
  976.          var1.drawImage(this.field_31, 0, 0, this);
  977.       }
  978.  
  979.    }
  980.  
  981.    // $FF: renamed from: e () void
  982.    public synchronized void method_9() {
  983.       if (this.field_2) {
  984.          this.notifyAll();
  985.  
  986.          while(!this.field_32) {
  987.             Thread.yield();
  988.  
  989.             try {
  990.                Thread.sleep(8L);
  991.             } catch (InterruptedException var1) {
  992.             }
  993.          }
  994.  
  995.          this.field_32 = false;
  996.       }
  997.  
  998.       this.field_30.drawImage(this.field_33, this.field_34, this.field_35, this);
  999.    }
  1000.  
  1001.    // $FF: renamed from: f () void
  1002.    public synchronized void method_10() {
  1003.       int var1 = 0;
  1004.       ((Component)this).prepareImage(this.field_14, this.field_41, this.field_40, this);
  1005.       this.notifyAll();
  1006.  
  1007.       while((var1 & 240) == 0) {
  1008.          Thread.yield();
  1009.          var1 = ((Component)this).checkImage(this.field_14, this.field_41, this.field_40, this);
  1010.       }
  1011.  
  1012.    }
  1013.  
  1014.    // $FF: renamed from: g () void
  1015.    public final void method_11() {
  1016.       try {
  1017.          if (this.field_16) {
  1018.             this.field_39.newPixels();
  1019.          } else {
  1020.             this.field_38.startProduction(this.field_38.getConsumer());
  1021.          }
  1022.       } catch (NoSuchMethodError var1) {
  1023.       }
  1024.    }
  1025.  
  1026.    public void run() {
  1027.       this.field_69.setPriority(this.field_37);
  1028.       ((Applet)this).showStatus("");
  1029.       System.gc();
  1030.       this.field_5 = System.currentTimeMillis();
  1031.       Graphics var1 = ((Component)this).getGraphics();
  1032.       if (this.field_33 != null && !this.field_2) {
  1033.          this.field_2 = this.method_1();
  1034.       }
  1035.  
  1036.       if (this.field_18 != null) {
  1037.          this.field_1.setCursor(12);
  1038.       } else {
  1039.          this.field_1.setCursor(0);
  1040.       }
  1041.  
  1042.       while(this.field_69 != null) {
  1043.          this.method_7();
  1044.          if (++this.field_4 == this.field_19) {
  1045.             System.gc();
  1046.             this.field_4 = 0;
  1047.          }
  1048.  
  1049.          try {
  1050.             this.method_11();
  1051.          } catch (NoSuchMethodError var2) {
  1052.          }
  1053.  
  1054.          if (this.field_43 == 1) {
  1055.             this.field_30.drawImage(this.field_14, 0, 0, this);
  1056.          } else {
  1057.             this.method_10();
  1058.             this.field_30.drawImage(this.field_14, 0, 0, this.field_41, this.field_40, this);
  1059.          }
  1060.  
  1061.          if (this.field_33 != null) {
  1062.             this.method_9();
  1063.          }
  1064.  
  1065.          if (this.field_66) {
  1066.             this.method_14(this.field_30);
  1067.          }
  1068.  
  1069.          var1.drawImage(this.field_31, 0, 0, this);
  1070.          this.method_16();
  1071.       }
  1072.  
  1073.    }
  1074.  
  1075.    // $FF: renamed from: a (int, int, int, int) byte
  1076.    byte method_12(int var1, int var2, int var3, int var4) {
  1077.       int var5 = var1 - var2;
  1078.       if (var5 >= var3) {
  1079.          return (byte)var5;
  1080.       } else {
  1081.          int var6 = var3 - var5 - 1;
  1082.          return (byte)(var4 - var6);
  1083.       }
  1084.    }
  1085.  
  1086.    // $FF: renamed from: h () void
  1087.    public void method_13() {
  1088.       Object var2 = null;
  1089.       this.field_66 = false;
  1090.       String var20 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0004MWB\u000b\u001b"));
  1091.       if (var20 != null && !var20.equalsIgnoreCase("NO")) {
  1092.          Object var3 = null;
  1093.          String var21 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0003WUH"));
  1094.          if (var21 == null) {
  1095.             var21 = method_18("FJ_\u000e\rAKY\u0006\u001b");
  1096.          }
  1097.  
  1098.          if (var21.equals(method_18("FJ_\u000e\rAKY\u0006\u001b"))) {
  1099.             this.field_47 = 0;
  1100.          } else if (var21.equals(method_18("X@_\u0013\u001eMDA"))) {
  1101.             this.field_47 = 1;
  1102.          } else if (var21.equals(method_18("TJB\n\u001e@B"))) {
  1103.             this.field_47 = 2;
  1104.          } else if (var21.equals(method_18("GK[\u001d\u0018AHD\t\u0010"))) {
  1105.             this.field_47 = 3;
  1106.          }
  1107.  
  1108.          if (this.field_47 == 0) {
  1109.             this.method_4(var20, 0);
  1110.             if (this.field_44 != null) {
  1111.                this.field_66 = true;
  1112.             }
  1113.          } else {
  1114.             this.method_4(var20, 1);
  1115.             if (this.field_17 != null) {
  1116.                this.field_66 = true;
  1117.             }
  1118.          }
  1119.       }
  1120.  
  1121.       if (this.field_66) {
  1122.          Object var22 = null;
  1123.          String var23 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0004^@H\u0003"));
  1124.          if (var23 == null) {
  1125.             var23 = "0";
  1126.          }
  1127.  
  1128.          this.field_72 = Integer.valueOf(var23);
  1129.          Object var4 = null;
  1130.          String var24 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0011AKY"));
  1131.          if (var24 == null) {
  1132.             var24 = method_18("oWD\u0006\u001b");
  1133.          }
  1134.  
  1135.          int var5 = 0;
  1136.          Object var6 = null;
  1137.          String var25 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0015AII"));
  1138.          if (var25.equalsIgnoreCase(method_18("w`~"))) {
  1139.             ++var5;
  1140.          }
  1141.  
  1142.          Object var7 = null;
  1143.          String var26 = ((Applet)this).getParameter(method_18("Z@U\u0013\u001eZDA\u000e\u0014"));
  1144.          if (var26 == null) {
  1145.             var26 = "NO";
  1146.          }
  1147.  
  1148.          if (var26.equalsIgnoreCase(method_18("w`~"))) {
  1149.             var5 += 2;
  1150.          }
  1151.  
  1152.          Object var8 = null;
  1153.          String var27 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0004G_H"));
  1154.          if (var27 == null) {
  1155.             var27 = "12";
  1156.          }
  1157.  
  1158.          int var9 = Integer.valueOf(var27);
  1159.          this.field_8 = new Font(var24, var5, var9);
  1160.          Object var10 = null;
  1161.          String var28 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0004FDI\b\u0000"));
  1162.          if (var28.equalsIgnoreCase(method_18("w`~"))) {
  1163.             this.field_67 = true;
  1164.          } else {
  1165.             this.field_67 = false;
  1166.          }
  1167.  
  1168.          this.field_63 = new Color(Integer.valueOf(((Applet)this).getParameter(method_18("z@U\u00134AI\u007f"))), Integer.valueOf(((Applet)this).getParameter(method_18("z@U\u00134AIj"))), Integer.valueOf(((Applet)this).getParameter(method_18("z@U\u00134AIo"))));
  1169.          this.field_48 = new Color(Integer.valueOf(((Applet)this).getParameter(method_18("z@U\u0013$mJA5"))), Integer.valueOf(((Applet)this).getParameter(method_18("z@U\u0013$mJA "))), Integer.valueOf(((Applet)this).getParameter(method_18("z@U\u0013$mJA%"))));
  1170.          this.field_73 = ((Component)this).size().width;
  1171.          this.field_74 = ((Component)this).size().height;
  1172.          if (this.field_47 == 0) {
  1173.             Object var11 = null;
  1174.             String var29 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0018HC^\u0002\u0003"));
  1175.             if (var29 == null) {
  1176.                var29 = "0";
  1177.             }
  1178.  
  1179.             this.field_82 = Integer.valueOf(var29);
  1180.             if (this.field_82 < 0) {
  1181.                this.field_82 = 0;
  1182.             }
  1183.  
  1184.             Object var12 = null;
  1185.             String var34 = ((Applet)this).getParameter(method_18("z@U\u0013=[H]&\u001a^"));
  1186.             if (var34 == null) {
  1187.                var34 = "0";
  1188.             }
  1189.  
  1190.             this.field_0 = Integer.valueOf(var34);
  1191.             Object var13 = null;
  1192.             String var38 = ((Applet)this).getParameter(method_18("z@U\u0013=[H]4\u0007J"));
  1193.             if (var38 == null) {
  1194.                var38 = "0";
  1195.             }
  1196.  
  1197.             this.field_71 = Integer.valueOf(var38);
  1198.             Object var14 = null;
  1199.             String var41 = ((Applet)this).getParameter(method_18("z@U\u0013$GKH&\u001a^"));
  1200.             if (var41 == null) {
  1201.                var41 = "0";
  1202.             }
  1203.  
  1204.             this.field_50 = Integer.valueOf(var41);
  1205.             Object var15 = null;
  1206.             String var42 = ((Applet)this).getParameter(method_18("z@U\u0013$GKH4\u0007J"));
  1207.             if (var42 == null) {
  1208.                var42 = "0";
  1209.             }
  1210.  
  1211.             this.field_54 = Integer.valueOf(var42);
  1212.             Object var16 = null;
  1213.             String var43 = ((Applet)this).getParameter(method_18("z@U\u0013$GKH&\u0019IIH"));
  1214.             if (var43 == null) {
  1215.                var43 = "0";
  1216.             }
  1217.  
  1218.             this.field_51 = Integer.valueOf(var43);
  1219.             FontMetrics var17 = ((Component)this).getGraphics().getFontMetrics(this.field_8);
  1220.             this.field_46 = var17.stringWidth(this.field_44);
  1221.             this.field_45 = var17.getHeight();
  1222.             this.field_6 = var17.getMaxDescent();
  1223.             this.field_79 = this.field_73;
  1224.             if (this.field_82 < this.field_45 - this.field_6) {
  1225.                this.field_82 = this.field_45 - this.field_6;
  1226.             } else if (this.field_82 > this.field_74 - this.field_6) {
  1227.                this.field_82 = this.field_74 - this.field_6;
  1228.             }
  1229.  
  1230.             if (this.field_50 != 0) {
  1231.                this.field_55 = new int[this.field_73 + 360];
  1232.                this.field_56 = new int[this.field_73 + 360];
  1233.  
  1234.                for(int var1 = 0; var1 < this.field_73 + 360; ++var1) {
  1235.                   this.field_55[var1] = (int)((double)this.field_50 * Math.sin((double)this.field_51 * (double)var1 * Math.PI / (double)180.0F)) - this.field_45 - this.field_6 + this.field_82;
  1236.                   this.field_56[var1] = this.field_55[var1] - this.field_40;
  1237.                }
  1238.  
  1239.                this.field_49 = 360;
  1240.                this.field_52 = this.field_45 + this.field_6 + 1;
  1241.                this.field_53 = this.field_52 - 1;
  1242.                return;
  1243.             }
  1244.          } else {
  1245.             if (this.field_47 == 1) {
  1246.                Object var32 = null;
  1247.                String var33 = ((Applet)this).getParameter(method_18("Z@U\u0013\u0001]UL\u0004\u0012"));
  1248.                if (var33 == null) {
  1249.                   var33 = "10";
  1250.                }
  1251.  
  1252.                int var37 = Integer.valueOf(var33);
  1253.                FontMetrics var40 = ((Component)this).getGraphics().getFontMetrics(this.field_8);
  1254.                this.field_9 = var40.getHeight() + var37;
  1255.                this.field_75 = new int[this.field_17.length];
  1256.  
  1257.                for(int var19 = 0; var19 < this.field_17.length; ++var19) {
  1258.                   this.field_75[var19] = (this.field_73 - var40.stringWidth(this.field_17[var19])) / 2;
  1259.                }
  1260.  
  1261.                this.field_27 = -this.field_9;
  1262.                return;
  1263.             }
  1264.  
  1265.             if (this.field_47 >= 2) {
  1266.                Object var30 = null;
  1267.                String var31 = ((Applet)this).getParameter(method_18("Z@U\u0013\u001aGKK\b\u0019Z"));
  1268.                if (var31 == null) {
  1269.                   var31 = "2";
  1270.                }
  1271.  
  1272.                this.field_65 = Integer.valueOf(var31);
  1273.                Object var35 = null;
  1274.                String var36 = ((Applet)this).getParameter(method_18("Z@U\u0013\u001aO]K\b\u0019Z"));
  1275.                if (var36 == null) {
  1276.                   var36 = "72";
  1277.                }
  1278.  
  1279.                this.field_64 = Integer.valueOf(var36);
  1280.                this.field_29 = this.field_64 - this.field_65;
  1281.                this.field_8 = null;
  1282.                this.field_85 = new Font[this.field_29];
  1283.                int var39 = this.field_65;
  1284.  
  1285.                for(int var18 = 0; var18 < this.field_29; ++var18) {
  1286.                   this.field_85[var18] = new Font(var24, var5, var39++);
  1287.                }
  1288.  
  1289.                this.field_13 = (float)this.field_73 / 2.0F;
  1290.                this.field_12 = (float)this.field_74 / 2.0F;
  1291.                if (this.field_47 == 3) {
  1292.                   this.field_84 = this.field_29 - 1;
  1293.                   return;
  1294.                }
  1295.  
  1296.                this.field_84 = 0;
  1297.             }
  1298.          }
  1299.       }
  1300.  
  1301.    }
  1302.  
  1303.    // $FF: renamed from: b (java.awt.Graphics) void
  1304.    public void method_14(Graphics var1) {
  1305.       switch (this.field_47) {
  1306.          case 0:
  1307.             this.method_6(var1);
  1308.             return;
  1309.          case 1:
  1310.             this.method_15(var1);
  1311.             return;
  1312.          default:
  1313.             this.method_17(var1);
  1314.       }
  1315.    }
  1316.  
  1317.    public void start() {
  1318.       if (this.field_69 == null) {
  1319.          this.field_69 = new Thread(this);
  1320.          this.field_69.start();
  1321.       }
  1322.  
  1323.    }
  1324.  
  1325.    public void stop() {
  1326.       if (this.field_69 != null && this.field_69.isAlive()) {
  1327.          this.field_69.stop();
  1328.       }
  1329.  
  1330.       this.field_69 = null;
  1331.    }
  1332.  
  1333.    public final void update(Graphics var1) {
  1334.       this.paint(var1);
  1335.    }
  1336.  
  1337.    // $FF: renamed from: c (java.awt.Graphics) void
  1338.    public void method_15(Graphics var1) {
  1339.       var1.setFont(this.field_8);
  1340.       this.field_27 += this.field_72;
  1341.       if (this.field_27 > this.field_74 + this.field_17.length * this.field_9) {
  1342.          this.field_27 = -this.field_9;
  1343.       }
  1344.  
  1345.       if (this.field_67) {
  1346.          for(int var6 = 0; var6 < this.field_17.length; ++var6) {
  1347.             String var5 = this.field_17[var6];
  1348.             int var3 = this.field_75[var6];
  1349.             int var4 = this.field_74 - this.field_27 + var6 * this.field_9;
  1350.             var1.setColor(this.field_48);
  1351.             var1.drawString(var5, var3 + 1, var4 + 1);
  1352.             var1.setColor(this.field_63);
  1353.             var1.drawString(var5, var3, var4);
  1354.          }
  1355.  
  1356.       } else {
  1357.          var1.setColor(this.field_63);
  1358.  
  1359.          for(int var2 = 0; var2 < this.field_17.length; ++var2) {
  1360.             var1.drawString(this.field_17[var2], this.field_75[var2], this.field_74 - this.field_27 + var2 * this.field_9);
  1361.          }
  1362.  
  1363.       }
  1364.    }
  1365.  
  1366.    // $FF: renamed from: i () void
  1367.    public synchronized void method_16() {
  1368.       Thread.yield();
  1369.       this.field_68.sync();
  1370.       long var1 = 10L - (System.currentTimeMillis() - this.field_5);
  1371.       if (var1 > 0L) {
  1372.          try {
  1373.             Thread.sleep(var1);
  1374.          } catch (InterruptedException var5) {
  1375.          }
  1376.       } else {
  1377.          try {
  1378.             Thread.sleep(1L);
  1379.          } catch (InterruptedException var4) {
  1380.          }
  1381.       }
  1382.  
  1383.       this.field_5 = System.currentTimeMillis();
  1384.  
  1385.       try {
  1386.          Thread.sleep((long)this.field_20);
  1387.       } catch (InterruptedException var3) {
  1388.       }
  1389.    }
  1390.  
  1391.    // $FF: renamed from: d (java.awt.Graphics) void
  1392.    public void method_17(Graphics var1) {
  1393.       String var2 = this.field_17[this.field_83];
  1394.       var1.setFont(this.field_85[this.field_84]);
  1395.       FontMetrics var3 = var1.getFontMetrics(this.field_85[this.field_84]);
  1396.       int var4 = (int)(this.field_13 - (float)var3.stringWidth(var2) / 2.0F);
  1397.       int var5 = (int)(this.field_12 + (float)var3.getHeight() / 4.0F);
  1398.       if (this.field_67) {
  1399.          var1.setColor(this.field_48);
  1400.          var1.drawString(var2, var4 + 1, var5 + 1);
  1401.       }
  1402.  
  1403.       var1.setColor(this.field_63);
  1404.       var1.drawString(var2, var4, var5);
  1405.       if (this.field_47 == 3) {
  1406.          this.field_84 -= this.field_72;
  1407.          if (this.field_84 <= 1) {
  1408.             this.field_84 = this.field_29 - 1;
  1409.             ++this.field_83;
  1410.             if (this.field_83 >= this.field_17.length) {
  1411.                this.field_83 = 0;
  1412.                return;
  1413.             }
  1414.          }
  1415.       } else {
  1416.          this.field_84 += this.field_72;
  1417.          if (this.field_84 >= this.field_29) {
  1418.             this.field_84 = 0;
  1419.             ++this.field_83;
  1420.             if (this.field_83 >= this.field_17.length) {
  1421.                this.field_83 = 0;
  1422.             }
  1423.          }
  1424.       }
  1425.  
  1426.    }
  1427.  
  1428.    // $FF: renamed from: c (java.lang.String) java.lang.String
  1429.    private static String method_18(String var0) {
  1430.       char[] var1 = var0.toCharArray();
  1431.       int var2 = var1.length;
  1432.       int var3 = 0;
  1433.  
  1434.       label32:
  1435.       while(true) {
  1436.          int var4 = 0;
  1437.          byte var10000 = 46;
  1438.          char[] var10001 = var1;
  1439.          int var10002 = var3;
  1440.  
  1441.          label30:
  1442.          while(true) {
  1443.             var10001[var10002] ^= var10000;
  1444.  
  1445.             while(true) {
  1446.                ++var3;
  1447.                ++var4;
  1448.                if (var2 == var3) {
  1449.                   return new String(var1);
  1450.                }
  1451.  
  1452.                switch (var4) {
  1453.                   case 1:
  1454.                      var10000 = 37;
  1455.                      var10001 = var1;
  1456.                      var10002 = var3;
  1457.                      continue label30;
  1458.                   case 2:
  1459.                      var10000 = 45;
  1460.                      var10001 = var1;
  1461.                      var10002 = var3;
  1462.                      continue label30;
  1463.                   case 3:
  1464.                      var10000 = 103;
  1465.                      var10001 = var1;
  1466.                      var10002 = var3;
  1467.                      continue label30;
  1468.                   case 4:
  1469.                      var10000 = 119;
  1470.                      var10001 = var1;
  1471.                      var10002 = var3;
  1472.                      continue label30;
  1473.                   case 5:
  1474.                      continue label32;
  1475.                }
  1476.             }
  1477.          }
  1478.       }
  1479.    }
  1480. }
  1481.