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