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

  1. import java.applet.Applet;
  2. import java.awt.Button;
  3. import java.awt.Checkbox;
  4. import java.awt.Choice;
  5. import java.awt.Color;
  6. import java.awt.Component;
  7. import java.awt.Container;
  8. import java.awt.Dimension;
  9. import java.awt.Event;
  10. import java.awt.Font;
  11. import java.awt.FontMetrics;
  12. import java.awt.Graphics;
  13. import java.awt.Image;
  14. import java.awt.Label;
  15. import java.awt.LayoutManager;
  16. import java.awt.MediaTracker;
  17. import java.awt.Polygon;
  18. import java.awt.Rectangle;
  19. import java.awt.TextField;
  20. import java.awt.Toolkit;
  21. import java.io.ByteArrayOutputStream;
  22. import java.io.IOException;
  23. import java.io.InputStream;
  24. import java.io.OutputStream;
  25. import java.net.InetAddress;
  26. import java.net.MalformedURLException;
  27. import java.net.URL;
  28. import java.net.UnknownHostException;
  29.  
  30. public class anfypaint extends Applet {
  31.    // $FF: renamed from: a int
  32.    private static final int field_0 = 10;
  33.    // $FF: renamed from: b int
  34.    private static final int field_1 = 12;
  35.    // $FF: renamed from: c int
  36.    private static final int field_2 = 14;
  37.    // $FF: renamed from: d int
  38.    private static final int field_3 = 16;
  39.    // $FF: renamed from: e java.lang.String
  40.    final String field_4 = method_12("\u0013\t/@\"&Y=Ug\u0014\u0018=E(r:6Y$1\u0010\u007f\u00040%\u000eqM)4\u00005M13W<C*");
  41.    // $FF: renamed from: f java.lang.String
  42.    private String field_5;
  43.    // $FF: renamed from: g java.awt.Color
  44.    Color field_6;
  45.    // $FF: renamed from: h java.awt.Image
  46.    Image field_7;
  47.    // $FF: renamed from: i java.lang.String
  48.    private String field_8;
  49.    // $FF: renamed from: j int
  50.    private int field_9 = 1;
  51.    // $FF: renamed from: k java.awt.Button
  52.    private Button field_10;
  53.    // $FF: renamed from: l java.lang.String
  54.    private String field_11;
  55.    // $FF: renamed from: m boolean
  56.    private boolean field_12 = false;
  57.    // $FF: renamed from: n int
  58.    private int field_13 = 1;
  59.    // $FF: renamed from: o int
  60.    private static final int field_14 = 11;
  61.    // $FF: renamed from: p int
  62.    private static final int field_15 = 13;
  63.    // $FF: renamed from: q int
  64.    private static final int field_16 = 15;
  65.    // $FF: renamed from: r int
  66.    private static final int field_17 = 17;
  67.    // $FF: renamed from: s java.awt.Checkbox
  68.    private Checkbox field_18;
  69.    // $FF: renamed from: t boolean
  70.    private boolean field_19 = false;
  71.    // $FF: renamed from: u boolean
  72.    private boolean field_20 = false;
  73.    // $FF: renamed from: v int
  74.    private static final int field_21 = 4;
  75.    // $FF: renamed from: w int
  76.    private static final int field_22 = 18;
  77.    // $FF: renamed from: x int
  78.    private static final int field_23 = 5;
  79.    // $FF: renamed from: y boolean
  80.    boolean field_24 = true;
  81.    // $FF: renamed from: z java.awt.Graphics
  82.    private Graphics field_25;
  83.    // $FF: renamed from: A int
  84.    int field_26;
  85.    // $FF: renamed from: B java.lang.String
  86.    private String field_27;
  87.    // $FF: renamed from: C java.awt.Image
  88.    private Image field_28;
  89.    // $FF: renamed from: D java.lang.String
  90.    private String field_29;
  91.    // $FF: renamed from: E java.lang.String
  92.    private String field_30;
  93.    // $FF: renamed from: F int
  94.    int field_31;
  95.    // $FF: renamed from: G java.awt.Label
  96.    private Label field_32;
  97.    // $FF: renamed from: H java.lang.String
  98.    private String field_33;
  99.    // $FF: renamed from: I int
  100.    private static final int field_34 = 0;
  101.    // $FF: renamed from: J int
  102.    private static final int field_35 = 58;
  103.    // $FF: renamed from: K java.awt.Polygon
  104.    Polygon field_36 = new Polygon();
  105.    // $FF: renamed from: L java.awt.TextField
  106.    private TextField field_37;
  107.    // $FF: renamed from: M int
  108.    private int field_38;
  109.    // $FF: renamed from: N int
  110.    int field_39;
  111.    // $FF: renamed from: O int
  112.    int field_40;
  113.    // $FF: renamed from: P java.lang.String
  114.    private String field_41;
  115.    // $FF: renamed from: Q int
  116.    private static final int field_42 = 2;
  117.    // $FF: renamed from: R int
  118.    private static final int field_43 = 1;
  119.    // $FF: renamed from: S int
  120.    private static final int field_44 = 6;
  121.    // $FF: renamed from: T boolean
  122.    private boolean field_45 = true;
  123.    // $FF: renamed from: U int
  124.    int field_46;
  125.    // $FF: renamed from: V int
  126.    int field_47;
  127.    // $FF: renamed from: W int
  128.    int field_48;
  129.    // $FF: renamed from: X int
  130.    private static final int field_49 = 3;
  131.    // $FF: renamed from: Y boolean
  132.    boolean field_50 = false;
  133.    // $FF: renamed from: Z int[]
  134.    private int[] field_51;
  135.    // $FF: renamed from: ba java.awt.Button
  136.    private Button field_52;
  137.    // $FF: renamed from: bb int
  138.    private static final int field_53 = 7;
  139.    // $FF: renamed from: bc int
  140.    private static final int field_54 = 8;
  141.    // $FF: renamed from: bd int
  142.    private static final int field_55 = 9;
  143.    // $FF: renamed from: be anfypaintb
  144.    private anfypaintb field_56;
  145.    // $FF: renamed from: bf long
  146.    private long field_57;
  147.    // $FF: renamed from: bg java.awt.TextField
  148.    private TextField field_58;
  149.    // $FF: renamed from: bh java.lang.String
  150.    private String field_59;
  151.    // $FF: renamed from: bi java.lang.String
  152.    private String field_60;
  153.    // $FF: renamed from: bj java.awt.Button
  154.    private Button field_61;
  155.    // $FF: renamed from: bk java.awt.Graphics
  156.    private Graphics field_62;
  157.    // $FF: renamed from: bl java.awt.Image
  158.    private Image field_63;
  159.    // $FF: renamed from: bm java.awt.Image
  160.    private Image field_64;
  161.    // $FF: renamed from: bn java.awt.Graphics
  162.    private Graphics field_65;
  163.    // $FF: renamed from: bo boolean
  164.    private boolean field_66 = false;
  165.    // $FF: renamed from: bp int
  166.    int field_67;
  167.    // $FF: renamed from: bq Lware
  168.    Lware field_68;
  169.    // $FF: renamed from: br int
  170.    private int field_69;
  171.    // $FF: renamed from: bs int
  172.    private int field_70;
  173.  
  174.    public final boolean action(Event var1, Object var2) {
  175.       if (var1.target instanceof Choice) {
  176.          String var3 = (String)var2;
  177.          if (var3.equals(method_12(">\u00101I"))) {
  178.             this.field_13 = 0;
  179.          } else if (var3.equals(method_12("4\u000b:I/3\u0017;"))) {
  180.             this.field_13 = 1;
  181.          } else if (var3.equals(method_12("\"\u00166B3!"))) {
  182.             this.field_13 = 6;
  183.          } else if (var3.equals(method_12("!\t-M>c"))) {
  184.             this.field_13 = 7;
  185.          } else if (var3.equals(method_12("!\t-M>`"))) {
  186.             this.field_13 = 8;
  187.          } else if (var3.equals(method_12("!\t-M>a"))) {
  188.             this.field_13 = 9;
  189.          } else if (var3.equals(method_12("\"\u00163U =\u0017"))) {
  190.             this.field_13 = 18;
  191.          }
  192.  
  193.          if (this.field_18.getState()) {
  194.             if (var3.equals(method_12("=\u000f>@"))) {
  195.                this.field_13 = 4;
  196.             } else if (var3.equals(method_12("3\u000b<\f\u0019"))) {
  197.                this.field_13 = 11;
  198.             } else if (var3.equals(method_12("3\u000b<\f1"))) {
  199.                this.field_13 = 13;
  200.             } else if (var3.equals(method_12("3\u000b<\fy"))) {
  201.                this.field_13 = 15;
  202.             } else if (var3.equals(method_12("3\u000b<\f{"))) {
  203.                this.field_13 = 17;
  204.             } else if (var3.equals(method_12(" \u001c<X&<\u001e3I"))) {
  205.                this.field_13 = 5;
  206.             }
  207.          } else if (var3.equals(method_12("=\u000f>@"))) {
  208.             this.field_13 = 2;
  209.          } else if (var3.equals(method_12("3\u000b<\f\u0019"))) {
  210.             this.field_13 = 10;
  211.          } else if (var3.equals(method_12("3\u000b<\f1"))) {
  212.             this.field_13 = 12;
  213.          } else if (var3.equals(method_12("3\u000b<\fy"))) {
  214.             this.field_13 = 14;
  215.          } else if (var3.equals(method_12("3\u000b<\f{"))) {
  216.             this.field_13 = 16;
  217.          } else if (var3.equals(method_12(" \u001c<X&<\u001e3I"))) {
  218.             this.field_13 = 3;
  219.          }
  220.       } else if (var1.target instanceof Checkbox) {
  221.          if (this.field_18.getState()) {
  222.             if (this.field_13 == 2) {
  223.                this.field_13 = 4;
  224.             } else if (this.field_13 == 10) {
  225.                this.field_13 = 11;
  226.             } else if (this.field_13 == 12) {
  227.                this.field_13 = 13;
  228.             } else if (this.field_13 == 14) {
  229.                this.field_13 = 15;
  230.             } else if (this.field_13 == 16) {
  231.                this.field_13 = 17;
  232.             } else if (this.field_13 == 3) {
  233.                this.field_13 = 5;
  234.             }
  235.          } else if (this.field_13 == 4) {
  236.             this.field_13 = 2;
  237.          } else if (this.field_13 == 11) {
  238.             this.field_13 = 10;
  239.          } else if (this.field_13 == 13) {
  240.             this.field_13 = 12;
  241.          } else if (this.field_13 == 15) {
  242.             this.field_13 = 14;
  243.          } else if (this.field_13 == 17) {
  244.             this.field_13 = 16;
  245.          } else if (this.field_13 == 5) {
  246.             this.field_13 = 3;
  247.          }
  248.       } else {
  249.          if (var1.target == this.field_61) {
  250.             if (this.field_31 == 18) {
  251.                if (this.field_36.npoints > 1) {
  252.                   if (this.field_18.getState()) {
  253.                      this.field_25.fillPolygon(this.field_36);
  254.                   }
  255.  
  256.                   this.field_36 = new Polygon();
  257.                }
  258.  
  259.                this.field_25.drawImage(this.field_64, 0, 0, this);
  260.             } else {
  261.                this.field_25.drawImage(this.field_63, 0, 0, this);
  262.             }
  263.  
  264.             ((Component)this).repaint();
  265.             return true;
  266.          }
  267.  
  268.          if (var1.target == this.field_10) {
  269.             this.field_36 = new Polygon();
  270.             Rectangle var17 = ((Component)this).bounds();
  271.             this.field_25.setColor(Color.lightGray);
  272.             this.field_25.fillRect(0, 0, var17.width, var17.height);
  273.             if (this.field_7 == null) {
  274.                this.field_25.setColor(this.field_6);
  275.                this.field_25.fillRect(var17.x, 58, var17.width, var17.height - 58);
  276.             } else {
  277.                this.field_25.drawImage(this.field_7, 0, 58, this);
  278.             }
  279.  
  280.             anfypaintb var4 = this.field_56;
  281.             this.field_25.setColor(var4.e);
  282.             this.field_57 = System.currentTimeMillis();
  283.             ((Component)this).repaint();
  284.             return true;
  285.          }
  286.  
  287.          if (var1.target == this.field_52 && this.field_50) {
  288.             this.field_5 = this.field_37.getText();
  289.             if (this.field_5.length() < 5) {
  290.                this.field_32.setText(method_12("\u0017\u0017+I5r\u0017>A\"rQ2E)|Yj\f$:\u0018-M$&\u001c-_n"));
  291.                return true;
  292.             }
  293.  
  294.             this.field_60 = this.field_58.getText();
  295.             if (this.field_60.length() < 3) {
  296.                this.field_32.setText(method_12("\u0017\u0017+I5r\r6X+7YwA.<W\u007f\u001fg1\u0011>^&1\r:^4{"));
  297.                return true;
  298.             }
  299.  
  300.             if (this.field_45) {
  301.                this.field_32.setText(method_12("\u0002\u00186B3r\n0A\"&\u00116B r\u001b:J( \u001c~"));
  302.                return true;
  303.             }
  304.  
  305.             long var16 = (System.currentTimeMillis() - this.field_57) / 1000L;
  306.             long var5 = var16 / 3600L;
  307.             long var7 = var16 / 60L - var5 * 60L;
  308.             String var9;
  309.             if (var5 >= 1L) {
  310.                var9 = new String(method_12("\u0006\u00102I}r") + var5 + method_12("r\u0011s\f") + var7 + method_12("r\u00146B"));
  311.             } else {
  312.                var9 = new String(method_12("\u0006\u00102I}r") + var7 + method_12("r\u00146B"));
  313.             }
  314.  
  315.             ((Applet)this).showStatus(var9);
  316.  
  317.             String var10;
  318.             String var11;
  319.             try {
  320.                var10 = this.field_60.substring(0, 1);
  321.                var11 = this.field_60.substring(1, this.field_60.length());
  322.             } catch (StringIndexOutOfBoundsException var15) {
  323.                var10 = "";
  324.                var11 = this.field_60;
  325.             }
  326.  
  327.             this.field_60 = var10.toUpperCase() + var11;
  328.  
  329.             try {
  330.                var10 = this.field_5.substring(0, 1);
  331.                var11 = this.field_5.substring(1, this.field_5.length());
  332.             } catch (StringIndexOutOfBoundsException var14) {
  333.                var10 = "";
  334.                var11 = this.field_5;
  335.             }
  336.  
  337.             this.field_5 = var10.toUpperCase() + var11;
  338.             this.field_59 = "\"" + this.field_60 + method_12("pY=Ug") + this.field_5 + "\n" + var9 + method_12("rY\u007f\fgrY\u007f\fgrY\u007f");
  339.             this.field_32.setText(method_12("\u0011\u000b*B$:\u00101Kg;\u0014>K\"rQ/M4!Yn\u0005i|W"));
  340.  
  341.             try {
  342.                this.method_5();
  343.             } catch (Exception var13) {
  344.                this.field_32.setText(method_12("\u0017+\rc\u0015r\n>Z.<\u001ee\f") + ((Throwable)var13).toString().substring(21));
  345.                ((Applet)this).showStatus(method_12("\u0017+\rc\u0015r") + var13 + method_12("r*>Z.<\u001e\u007fE*3\u001e:\r"));
  346.                return true;
  347.             }
  348.  
  349.             this.field_32.setText(method_12("\u0001\f<O\"!\n9Y+>\u0000\u007f_&$\u001c;\f.?\u00188If"));
  350.             return true;
  351.          }
  352.       }
  353.  
  354.       return true;
  355.    }
  356.  
  357.    // $FF: renamed from: a () void
  358.    private final void method_0() {
  359.       while(true) {
  360.          ((Applet)this).showStatus(method_12("\u0016\u00161\u000b3r\u000b:A($\u001c\u007f[0%W>B!+\u0013>Z&|\u001a0Ag1\u000b:H.&\n\u007f@.<\u001c\u007fE)r1\u000ba\u000bs"));
  361.       }
  362.    }
  363.  
  364.    // $FF: renamed from: a (int, int, int, int, int, int) void
  365.    public final void method_1(int var1, int var2, int var3, int var4, int var5, int var6) {
  366.       this.field_25.drawArc(var1, var2, var3, var4, var5, var6);
  367.       if (this.field_9 > 1) {
  368.          this.field_25.drawArc(var1, var2 - 1, var3, var4, var5, var6);
  369.          this.field_25.drawArc(var1 - 1, var2, var3, var4, var5, var6);
  370.          this.field_25.drawArc(var1 + 1, var2, var3, var4, var5, var6);
  371.          this.field_25.drawArc(var1, var2 + 1, var3, var4, var5, var6);
  372.       }
  373.  
  374.       if (this.field_9 > 2) {
  375.          this.field_25.drawArc(var1 + 1, var2 + 1, var3, var4, var5, var6);
  376.          this.field_25.drawArc(var1 - 1, var2 - 1, var3, var4, var5, var6);
  377.          this.field_25.drawArc(var1 + 1, var2 - 1, var3, var4, var5, var6);
  378.          this.field_25.drawArc(var1 - 1, var2 + 1, var3, var4, var5, var6);
  379.       }
  380.  
  381.       if (this.field_9 > 3) {
  382.          this.field_25.drawArc(var1 - 1, var2 - 2, var3, var4, var5, var6);
  383.          this.field_25.drawArc(var1, var2 - 2, var3, var4, var5, var6);
  384.          this.field_25.drawArc(var1 + 1, var2 - 2, var3, var4, var5, var6);
  385.          this.field_25.drawArc(var1 - 2, var2 - 1, var3, var4, var5, var6);
  386.          this.field_25.drawArc(var1 - 2, var2, var3, var4, var5, var6);
  387.          this.field_25.drawArc(var1 - 2, var2 + 1, var3, var4, var5, var6);
  388.          this.field_25.drawArc(var1 + 2, var2 - 1, var3, var4, var5, var6);
  389.          this.field_25.drawArc(var1 + 2, var2, var3, var4, var5, var6);
  390.          this.field_25.drawArc(var1 + 2, var2 + 1, var3, var4, var5, var6);
  391.          this.field_25.drawArc(var1 - 1, var2 + 2, var3, var4, var5, var6);
  392.          this.field_25.drawArc(var1, var2 + 2, var3, var4, var5, var6);
  393.          this.field_25.drawArc(var1 + 1, var2 + 2, var3, var4, var5, var6);
  394.       }
  395.  
  396.    }
  397.  
  398.    // $FF: renamed from: a (java.lang.String) java.awt.Image
  399.    Image method_2(String var1) {
  400.       try {
  401.          return this.method_3(var1);
  402.       } catch (NoSuchMethodError var2) {
  403.          return this.method_3(var1);
  404.       }
  405.    }
  406.  
  407.    // $FF: renamed from: b (java.lang.String) java.awt.Image
  408.    synchronized Image method_3(String var1) {
  409.       URL var2 = null;
  410.       Image var3 = null;
  411.  
  412.       try {
  413.          var2 = new URL(((Applet)this).getDocumentBase(), var1);
  414.       } catch (MalformedURLException var14) {
  415.       }
  416.  
  417.       try {
  418.          try {
  419.             InputStream var4 = this.getClass().getResourceAsStream(var2.toString());
  420.             if (var4 != null) {
  421.                ByteArrayOutputStream var5 = new ByteArrayOutputStream(1024);
  422.                byte[] var6 = new byte[512];
  423.                boolean var8 = false;
  424.                Object var9 = null;
  425.  
  426.                try {
  427.                   while(!var8) {
  428.                      int var7 = var4.read(var6, 0, 512);
  429.                      if (var7 != -1) {
  430.                         var5.write(var6, 0, var7);
  431.                         ((OutputStream)var5).flush();
  432.                      } else {
  433.                         var8 = true;
  434.                      }
  435.                   }
  436.  
  437.                   var21 = var5.toByteArray();
  438.                   ((OutputStream)var5).close();
  439.                   var4.close();
  440.                } catch (IOException var15) {
  441.                   var21 = null;
  442.                }
  443.  
  444.                System.gc();
  445.                if (var21 != null) {
  446.                   var3 = ((Component)this).getToolkit().createImage(var21);
  447.                   ((Component)this).prepareImage(var3, this);
  448.                }
  449.             }
  450.          } catch (NoSuchMethodError var16) {
  451.          }
  452.       } catch (SecurityException var17) {
  453.       }
  454.  
  455.       if (var3 == null) {
  456.          int var18 = 0;
  457.  
  458.          while(var18 < 5) {
  459.             try {
  460.                if (var18 % 2 == 0) {
  461.                   var3 = Toolkit.getDefaultToolkit().getImage(var2);
  462.                } else {
  463.                   var3 = ((Applet)this).getImage(var2);
  464.                }
  465.  
  466.                ++var18;
  467.                MediaTracker var20 = new MediaTracker(this);
  468.                this.notifyAll();
  469.                Thread.currentThread();
  470.                Thread.yield();
  471.  
  472.                try {
  473.                   var20.addImage(var3, 0);
  474.                   var20.waitForID(0);
  475.                } catch (InterruptedException var12) {
  476.                   var3 = null;
  477.                }
  478.  
  479.                if (var20.isErrorID(0)) {
  480.                   var3 = null;
  481.                } else {
  482.                   var18 = 6;
  483.                }
  484.             } catch (NullPointerException var13) {
  485.                System.gc();
  486.             }
  487.          }
  488.       }
  489.  
  490.       if (var3 == null) {
  491.          for(int var19 = 0; var19 < 25; ++var19) {
  492.             ((Applet)this).showStatus(method_12("\u001b\u0014>K\"r") + var1 + method_12("r\u00170Xg4\u0016*B#s"));
  493.  
  494.             try {
  495.                Thread.currentThread();
  496.                Thread.sleep(250L);
  497.             } catch (InterruptedException var11) {
  498.             }
  499.          }
  500.       } else {
  501.          while(var3.getWidth(this) < 0) {
  502.             this.notifyAll();
  503.             Thread.currentThread();
  504.             Thread.yield();
  505.  
  506.             try {
  507.                Thread.currentThread();
  508.                Thread.sleep(100L);
  509.             } catch (InterruptedException var10) {
  510.             }
  511.          }
  512.       }
  513.  
  514.       return var3;
  515.    }
  516.  
  517.    // $FF: renamed from: a (int, int) void
  518.    public final void method_4(int var1, int var2) {
  519.       anfypaintb var3 = this.field_56;
  520.       this.field_25.setColor(var3.e);
  521.       this.method_6(this.field_69, this.field_70, var1, var2, this.field_25);
  522.    }
  523.  
  524.    // $FF: renamed from: b () void
  525.    public final void method_5() throws Exception {
  526.       ByteArrayOutputStream var2 = new ByteArrayOutputStream();
  527.       this.field_32.setText(method_12("\u0011\u000b*B$:\u00101Kg;\u0014>K\"rQ/M4!Yn\u0005i|W"));
  528.       anfypaintc var1 = new anfypaintc(this.field_28, this.field_48, var2);
  529.       this.field_32.setText(method_12("\u0011\u000b*B$:\u00101Kg;\u0014>K\"rQ/M4!Ym\u0005i|W"));
  530.       var1.a();
  531.       this.field_32.setText(method_12("\u0011\u000b*B$:\u00101Kg;\u0014>K\"rQ/M4!Yl\u0005i|W"));
  532.       if (var2.size() < 1700) {
  533.          this.field_32.setText(method_12("\u0017\u0014/X>r\u00102M 7"));
  534.          throw new Exception(method_12("\u0017\u0014/X>r\u00102M 7"));
  535.       } else {
  536.          this.field_32.setText(method_12("\u0001\u001c1H.<\u001e\u007fE*3\u001e:\f3=Y,I5$\u001c-\u0002i|"));
  537.          anfypainte var3 = new anfypainte(((Applet)this).getAppletContext(), ((Applet)this).getParameter(method_12("!\u001c1H3=\u0014>E+")));
  538.          if (!var3.a(this)) {
  539.             throw new Exception(method_12("\u0017\u000b-C5r\n:M51\u00116B r\r7Ig!\u001c-Z\" "));
  540.          } else {
  541.             this.field_32.setText(method_12("\u0001\u001c-Z\" Y9C2<\u001ds\f43\u000f6B r02M 7Wq\u0002"));
  542.             byte[] var4 = var2.toByteArray();
  543.             int var5 = var2.size();
  544.             var3.j = var5;
  545.             var3.c = var4;
  546.             ((OutputStream)var2).close();
  547.             if (this.field_41.equals(method_12("\u0005\u00101H(%\n\u007f\u0015rrMq\u001c"))) {
  548.                this.field_41 = method_12("\u0005\u00101\f~g");
  549.             }
  550.  
  551.             if (this.field_41.equals(method_12("\u0005\u00101H(%\n\u007fb\u0013rMq\u001c"))) {
  552.                this.field_41 = method_12("\u0005\u00101\f\t\u0006");
  553.             }
  554.  
  555.             if (this.field_27.equals(method_12("*Ai"))) {
  556.                this.field_27 = method_12("\u0002\u001c1X.'\u0014");
  557.             }
  558.  
  559.             if (this.field_27.equals(method_12(";Lg\u001a"))) {
  560.                this.field_27 = method_12("\u0002\u001c1X.'\u0014");
  561.             }
  562.  
  563.             this.field_29 = this.field_27 + method_12("rR\u007f") + this.field_41 + "\n\n" + this.field_33 + " " + "\n" + this.field_30 + "\n" + this.field_8;
  564.             if (!var3.b(this.field_59 + this.field_29, this.field_5)) {
  565.                throw new Exception(method_12("\u0017\u000b-C5r\n>Z.<\u001e\u007fE*3\u001e:\f3=Y,I5$\u001c-"));
  566.             }
  567.          }
  568.       }
  569.    }
  570.  
  571.    public void init() {
  572.       Dimension var1 = ((Component)this).size();
  573.       this.field_67 = var1.width;
  574.       this.field_26 = var1.height;
  575.       String var2 = ((Applet)this).getParameter(method_12("8\t8]23\u00156X>"));
  576.       if (var2 == null) {
  577.          var2 = "50";
  578.       }
  579.  
  580.       this.field_48 = Integer.valueOf(var2);
  581.       this.field_28 = ((Component)this).createImage(this.field_67, this.field_26);
  582.       this.field_63 = ((Component)this).createImage(this.field_67, this.field_26);
  583.       this.field_64 = ((Component)this).createImage(this.field_67, this.field_26);
  584.       this.field_25 = this.field_28.getGraphics();
  585.       this.field_62 = this.field_63.getGraphics();
  586.       this.field_65 = this.field_64.getGraphics();
  587.       this.field_66 = true;
  588.       ((Container)this).setLayout((LayoutManager)null);
  589.       Object var3 = null;
  590.       String var46 = ((Applet)this).getParameter(method_12("1\u000b:H.&\n"));
  591.       if (var46 == null) {
  592.          while(true) {
  593.             ((Applet)this).showStatus(method_12("\u0016\u00161\u000b3r\u000b:A($\u001c\u007f[0%W>B!+\u0013>Z&|\u001a0Ag1\u000b:H.&\n\u007f@.<\u001c\u007fE)r1\u000ba\u000bs"));
  594.          }
  595.       }
  596.  
  597.       if (!var46.startsWith(method_12("\u0013\t/@\"&Y=Ug\u0014\u0018=E(r:6Y$1\u0010\u007f\u00040%\u000eqM)4\u00005M13W<C*"))) {
  598.          while(true) {
  599.             ((Applet)this).showStatus(method_12("\u0016\u00161\u000b3r\u000b:A($\u001c\u007f[0%W>B!+\u0013>Z&|\u001a0Ag1\u000b:H.&\n\u007f@.<\u001c\u007fE)r1\u000ba\u000bs"));
  600.          }
  601.       }
  602.  
  603.       Object var4 = null;
  604.       Object var5 = null;
  605.  
  606.       try {
  607.          var47 = ((Applet)this).getDocumentBase().getProtocol();
  608.       } catch (SecurityException var43) {
  609.          var47 = method_12("4\u00103I");
  610.       }
  611.  
  612.       try {
  613.          var48 = ((Applet)this).getDocumentBase().getHost();
  614.       } catch (SecurityException var42) {
  615.          var48 = "";
  616.       }
  617.  
  618.       if (!var47.equalsIgnoreCase(method_12("4\u00103I")) && var48.length() != 0 && !var48.equalsIgnoreCase(method_12(">\u0016<M+:\u0016,X")) && !var48.equals(method_12("cKh\u0002w|Iq\u001d"))) {
  619.          if (var48.startsWith(method_12("%\u000e(\u0002"))) {
  620.             var48 = var48.substring(4);
  621.          }
  622.  
  623.          Object var6 = null;
  624.          String var49 = ((Applet)this).getParameter(method_12(" \u001c8O(6\u001c"));
  625.          if (var49 != null && !var49.equals("NO") && var49.length() > 10) {
  626.             int var7 = 1;
  627.  
  628.             try {
  629.                for(int var8 = 0; var8 < var49.length(); ++var8) {
  630.                   if (var49.charAt(var8) == '+') {
  631.                      ++var7;
  632.                   }
  633.                }
  634.             } catch (StringIndexOutOfBoundsException var45) {
  635.             }
  636.  
  637.             int[] var52 = new int[var7];
  638.             if (var7 == 1) {
  639.                var52[0] = var49.length();
  640.             } else {
  641.                int var9 = 0;
  642.  
  643.                try {
  644.                   for(int var10 = 0; var10 < var49.length(); ++var10) {
  645.                      if (var49.charAt(var10) == '+') {
  646.                         var52[var9] = var10;
  647.                         ++var9;
  648.                      }
  649.                   }
  650.                } catch (StringIndexOutOfBoundsException var44) {
  651.                }
  652.  
  653.                var52[var9] = var49.length();
  654.             }
  655.  
  656.             String[] var54 = new String[var7];
  657.             int var56 = 0;
  658.  
  659.             for(int var11 = 0; var11 < var7; ++var11) {
  660.                try {
  661.                   var54[var11] = var49.substring(var56, var52[var11]);
  662.                } catch (StringIndexOutOfBoundsException var41) {
  663.                }
  664.  
  665.                var56 = var52[var11] + 1;
  666.             }
  667.  
  668.             for(int var12 = 0; var12 < var7; ++var12) {
  669.                int var13 = var54[var12].length() - 8;
  670.                byte[] var17 = new byte[var13];
  671.                byte[] var18 = new byte[8];
  672.                var54[var12].getBytes(0, var13, var17, 0);
  673.                var54[var12].getBytes(var13, var13 + 8, var18, 0);
  674.                int var15 = var13 % 7;
  675.                int var16 = var13 % 3;
  676.  
  677.                for(int var19 = 0; var19 < var13; ++var19) {
  678.                   byte var14 = var17[var19];
  679.                   if (var14 >= 48 && var14 <= 57) {
  680.                      var17[var19] = this.method_7(var14, var15, 48, 57);
  681.                   } else if (var14 >= 65 && var14 <= 90) {
  682.                      var17[var19] = this.method_7(var14, var15, 65, 90);
  683.                   } else if (var14 >= 97 && var14 <= 122) {
  684.                      var17[var19] = this.method_7(var14, var15, 97, 122);
  685.                   } else if (var14 == 45) {
  686.                      var17[var19] = 46;
  687.                   } else if (var14 == 46) {
  688.                      var17[var19] = 45;
  689.                   }
  690.  
  691.                   if ((var15 += var16) > 7) {
  692.                      var15 = 1;
  693.                   }
  694.                }
  695.  
  696.                int var20 = 0;
  697.                int var21 = 0;
  698.  
  699.                for(int var22 = 0; var22 < 4; ++var22) {
  700.                   var18[var22] = (byte)(var18[var22] - 52);
  701.                }
  702.  
  703.                for(int var23 = 4; var23 < 8; ++var23) {
  704.                   var18[var23] = (byte)(var18[var23] - 55);
  705.                }
  706.  
  707.                for(int var24 = 0; var24 < var13; var24 += 2) {
  708.                   var20 += var17[var24];
  709.                }
  710.  
  711.                for(int var25 = 1; var25 < var13; var25 += 2) {
  712.                   var21 += var17[var25];
  713.                }
  714.  
  715.                String var26 = String.valueOf(var20);
  716.  
  717.                String var27;
  718.                for(var27 = String.valueOf(var21); var26.length() < 4; var26 = "0" + var26) {
  719.                }
  720.  
  721.                while(var27.length() < 4) {
  722.                   var27 = "0" + var27;
  723.                }
  724.  
  725.                byte[] var28 = new byte[8];
  726.                var26.getBytes(0, 4, var28, 0);
  727.                var27.getBytes(0, 4, var28, 4);
  728.                String var29 = new String(var28, 0);
  729.                if (var29.equals(new String(var18, 0))) {
  730.                   String var30 = new String(var17, 0);
  731.                   Object var31 = null;
  732.                   String var64;
  733.                   if (var30.startsWith(method_12("%\u000e(\u0002"))) {
  734.                      var64 = var30.substring(4);
  735.                   } else {
  736.                      var64 = var30;
  737.                   }
  738.  
  739.                   if (var48.equalsIgnoreCase(var64)) {
  740.                      this.field_50 = true;
  741.                   }
  742.                }
  743.             }
  744.          }
  745.       } else {
  746.          this.field_50 = true;
  747.       }
  748.  
  749.       try {
  750.          this.field_33 = InetAddress.getLocalHost().getHostName();
  751.       } catch (UnknownHostException var39) {
  752.       } catch (SecurityException var40) {
  753.       }
  754.  
  755.       try {
  756.          this.field_33 = this.field_33 + ", " + System.getProperty(method_12("'\n:^i<\u00182I"));
  757.       } catch (SecurityException var38) {
  758.       }
  759.  
  760.       try {
  761.          this.field_27 = System.getProperty(method_12("=\nqM51\u0011"));
  762.       } catch (SecurityException var37) {
  763.          this.field_27 = method_12("'\u00174B(%\u0017");
  764.       }
  765.  
  766.       try {
  767.          this.field_41 = System.getProperty(method_12("=\nqB&?\u001c"));
  768.       } catch (SecurityException var36) {
  769.          this.field_41 = method_12("'\u00174B(%\u0017");
  770.       }
  771.  
  772.       try {
  773.          this.field_41 = this.field_41 + " " + System.getProperty(method_12("=\nqZ\" \n6C)"));
  774.       } catch (SecurityException var35) {
  775.       }
  776.  
  777.       try {
  778.          this.field_30 = method_12("\u0018\u0018)Mg$\u001c-_.=\u0017e\f") + System.getProperty(method_12("8\u0018)Mi$\u001c-_.=\u0017"));
  779.       } catch (SecurityException var34) {
  780.          this.field_30 = method_12("\u0018\u0018)Mg$\u001c-_.=\u0017e\f2<\u00121C0<");
  781.       }
  782.  
  783.       try {
  784.          this.field_8 = method_12("\u0010\u000b0[47\u000be\f") + System.getProperty(method_12("0\u000b0[47\u000bqZ\"<\u001d0^"));
  785.       } catch (SecurityException var33) {
  786.          this.field_8 = method_12("\u0010\u000b0[47\u000be\f2<\u00121C0<");
  787.       }
  788.  
  789.       try {
  790.          this.field_8 = this.field_8 + " " + System.getProperty(method_12("0\u000b0[47\u000bqZ\" \n6C)"));
  791.       } catch (SecurityException var32) {
  792.       }
  793.  
  794.       Font var50 = new Font(((Component)this).getFont().getName(), 1, ((Component)this).getFont().getSize());
  795.       ((Component)this).setFont(var50);
  796.       this.field_61 = new Button(method_12("\u0007\u0017;C"));
  797.       ((Container)this).add(this.field_61);
  798.       this.field_61.reshape(61, 4, 45, 22);
  799.       this.field_10 = new Button(method_12("\u0011\u0015:M5"));
  800.       ((Container)this).add(this.field_10);
  801.       this.field_10.reshape(7, 4, 45, 22);
  802.       Choice var51 = new Choice();
  803.       var51.addItem(method_12("4\u000b:I/3\u0017;"));
  804.       var51.addItem(method_12("\"\u00166B3!"));
  805.       var51.addItem(method_12(">\u00101I"));
  806.       var51.addItem(method_12("=\u000f>@"));
  807.       var51.addItem(method_12(" \u001c<X&<\u001e3I"));
  808.       var51.addItem(method_12("\"\u00163U =\u0017"));
  809.       var51.addItem(method_12("!\t-M>c"));
  810.       var51.addItem(method_12("!\t-M>`"));
  811.       var51.addItem(method_12("!\t-M>a"));
  812.       var51.addItem(method_12("3\u000b<\f\u0019"));
  813.       var51.addItem(method_12("3\u000b<\f1"));
  814.       var51.addItem(method_12("3\u000b<\fy"));
  815.       var51.addItem(method_12("3\u000b<\f{"));
  816.       ((Component)var51).setBackground(Color.lightGray);
  817.       ((Container)this).add(var51);
  818.       ((Component)var51).reshape(181, 4, 81, 14);
  819.       String var53 = ((Applet)this).getParameter(method_12("0\u0018<G.?\u00188I"));
  820.       if (!var53.equalsIgnoreCase("NO")) {
  821.          this.field_7 = this.method_2(var53);
  822.       }
  823.  
  824.       Color var55 = new Color(Integer.valueOf(((Applet)this).getParameter(method_12("\"\u001c1O(>\u0016-")), 16));
  825.       this.field_56 = new anfypaintb(14, 12, 1, this, var55);
  826.       ((Container)this).add(this.field_56);
  827.       this.field_56.reshape(315, 11, 220, 15);
  828.       ((Component)this).setBackground(Color.lightGray);
  829.       this.field_18 = new Checkbox(method_12("\u0014\u00103@"));
  830.       ((Container)this).add(this.field_18);
  831.       this.field_18.reshape(270, 7, 40, 14);
  832.       this.field_18.setState(false);
  833.       Font var57 = new Font(((Component)this).getFont().getName(), 0, ((Component)this).getFont().getSize());
  834.       ((Component)this).setFont(var57);
  835.       this.field_32 = new Label(method_12("\u0002\u0015:M47Y/M.<\r\u007f_(?\u001c+D.<\u001eq\fgrY\u007f\fgrY\u007f"), 0);
  836.       ((Container)this).add(this.field_32);
  837.       this.field_32.reshape(3, 35, 165, 14);
  838.       Label var58 = new Label(method_12("\u0006\u0010+@\"h"), 2);
  839.       ((Container)this).add(var58);
  840.       ((Component)var58).reshape(169, 35, 39, 14);
  841.       this.field_58 = new TextField();
  842.       ((Container)this).add(this.field_58);
  843.       this.field_58.reshape(210, 32, 120, 22);
  844.       Label var59 = new Label(method_12("\u001c\u00182I}"), 2);
  845.       ((Container)this).add(var59);
  846.       ((Component)var59).reshape(330, 35, 44, 14);
  847.       this.field_37 = new TextField();
  848.       ((Container)this).add(this.field_37);
  849.       this.field_37.reshape(374, 32, 146, 22);
  850.       Font var60 = new Font(((Component)this).getFont().getName(), 1, ((Component)this).getFont().getSize());
  851.       ((Component)this).setFont(var60);
  852.       this.field_52 = new Button(method_12("\u0001\u001c1H"));
  853.       String var61 = ((Applet)this).getParameter(method_12("!\u0018)I%'\r+C)"));
  854.       if (var61 == null) {
  855.          var61 = "NO";
  856.       }
  857.  
  858.       if (var61.equalsIgnoreCase(method_12("\u000b<\f")) && this.field_50) {
  859.          ((Container)this).add(this.field_52);
  860.          this.field_52.reshape(524, 31, 50, 22);
  861.       }
  862.  
  863.       int var62 = Integer.valueOf(((Applet)this).getParameter(method_12("0\u0018<G$=\u00150^")), 16);
  864.       this.field_6 = new Color(var62);
  865.       if (!this.field_50) {
  866.          Label var63 = new Label(method_12("\u0013\u00179Ug\u0002\u00186B3r\u0018/\\+7\r\u007fN>r?>N.=Y\u001cE21\u001a6\fvk@f\u0002"));
  867.          this.field_68 = new Lware(((Applet)this).getAppletContext(), var63);
  868.          this.field_68.setTitle(method_12("\u0013\u00179U\u00173\u00101Xg\u0013\t/@\"&Y=Ug\u0014\u0018=E(r:6Y$1\u0010"));
  869.          this.field_68.hide();
  870.       }
  871.  
  872.    }
  873.  
  874.    public boolean mouseDown(Event var1, int var2, int var3) {
  875.       if (!this.field_50) {
  876.          this.field_68.show();
  877.          this.field_68.toFront();
  878.          this.field_68.requestFocus();
  879.       }
  880.  
  881.       if (this.field_45) {
  882.          this.field_69 = var2;
  883.          this.field_70 = var3;
  884.          Rectangle var4 = ((Component)this).bounds();
  885.          this.field_25.setColor(Color.lightGray);
  886.          this.field_25.fillRect(0, 0, var4.width, var4.height);
  887.          if (this.field_7 == null) {
  888.             this.field_25.setColor(this.field_6);
  889.             this.field_25.fillRect(var4.x, 58, var4.width, var4.height - 58);
  890.          } else {
  891.             this.field_25.drawImage(this.field_7, 0, 58, this);
  892.          }
  893.  
  894.          anfypaintb var5 = this.field_56;
  895.          this.field_25.setColor(var5.e);
  896.          this.field_62.drawImage(this.field_28, 0, 0, this);
  897.          this.field_57 = System.currentTimeMillis();
  898.          ((Component)this).repaint();
  899.          return true;
  900.       } else {
  901.          if (var3 > 23) {
  902.             this.field_62.drawImage(this.field_28, 0, 0, this);
  903.             if (this.field_13 == 18 && this.field_36.npoints == 0) {
  904.                this.field_65.drawImage(this.field_28, 0, 0, this);
  905.             }
  906.          } else {
  907.             this.method_9(var2, var3);
  908.             this.method_10(var2, var3);
  909.          }
  910.  
  911.          if (this.field_13 == 18) {
  912.             this.field_31 = 18;
  913.          }
  914.  
  915.          if (var3 < 58) {
  916.             var3 = 58;
  917.          }
  918.  
  919.          if (this.field_70 < 58) {
  920.             this.field_70 = 58;
  921.          }
  922.  
  923.          this.field_69 = var2;
  924.          this.field_70 = var3;
  925.          switch (this.field_13) {
  926.             case 1:
  927.                this.field_38 = 1;
  928.                break;
  929.             case 6:
  930.                this.field_38 = 1;
  931.                break;
  932.             case 7:
  933.                this.field_38 = 1;
  934.                break;
  935.             case 8:
  936.                this.field_38 = 1;
  937.                break;
  938.             case 9:
  939.                this.field_38 = 1;
  940.                break;
  941.             case 18:
  942.                if (var3 > 58) {
  943.                   if (this.field_36.npoints == 0) {
  944.                      this.field_46 = var2;
  945.                      this.field_47 = var3;
  946.                   }
  947.  
  948.                   this.field_36.addPoint(var2, var3);
  949.                   this.field_39 = var2;
  950.                   this.field_40 = var3;
  951.                }
  952.                break;
  953.             default:
  954.                this.field_38 = -1;
  955.          }
  956.  
  957.          return true;
  958.       }
  959.    }
  960.  
  961.    public boolean mouseDrag(Event var1, int var2, int var3) {
  962.       if (var3 > 58) {
  963.          this.field_11 = method_12("\nYb\f") + String.valueOf(var2) + method_12("~Y\u0006\u0011g") + (var3 - 58);
  964.          ((Applet)this).showStatus(this.field_11);
  965.       }
  966.  
  967.       if (this.field_45) {
  968.          return true;
  969.       } else if (var3 < 30) {
  970.          return true;
  971.       } else {
  972.          if (this.field_13 != 18) {
  973.             this.field_31 = 0;
  974.          }
  975.  
  976.          anfypaintb var4 = this.field_56;
  977.          this.field_25.setColor(var4.e);
  978.          if (this.field_38 != -1) {
  979.             if (var3 < 58) {
  980.                if (!this.field_12) {
  981.                   this.field_12 = true;
  982.                   this.field_20 = true;
  983.                }
  984.             } else if (this.field_12) {
  985.                this.field_12 = false;
  986.                this.field_20 = false;
  987.             }
  988.  
  989.             switch (this.field_13) {
  990.                case 1:
  991.                   if (var3 < 58) {
  992.                      var3 = 58;
  993.                      if (this.field_20) {
  994.                         var4 = this.field_56;
  995.                         this.field_25.setColor(var4.e);
  996.                         this.method_6(this.field_69, this.field_70, var2, var3, this.field_25);
  997.                         this.field_20 = false;
  998.                      }
  999.  
  1000.                      if (this.field_19) {
  1001.                         var4 = this.field_56;
  1002.                         this.field_25.setColor(var4.e);
  1003.                         this.method_6(this.field_69, this.field_70, var2, var3, this.field_25);
  1004.                         this.field_19 = false;
  1005.                      }
  1006.  
  1007.                      this.field_69 = var2;
  1008.                      this.field_70 = var3;
  1009.                   } else {
  1010.                      var4 = this.field_56;
  1011.                      this.field_25.setColor(var4.e);
  1012.                      this.method_6(this.field_69, this.field_70, var2, var3, this.field_25);
  1013.                      this.field_69 = var2;
  1014.                      this.field_70 = var3;
  1015.                   }
  1016.                   break;
  1017.                case 6:
  1018.                   if (var3 < 58) {
  1019.                      var3 = 58;
  1020.                   }
  1021.  
  1022.                   this.field_69 = var2;
  1023.                   this.field_70 = var3;
  1024.                   var4 = this.field_56;
  1025.                   this.field_25.setColor(var4.e);
  1026.                   this.method_6(this.field_69, this.field_70, var2, var3, this.field_25);
  1027.                   break;
  1028.                case 7:
  1029.                   if (var3 < 58) {
  1030.                      var3 = 58;
  1031.                   }
  1032.  
  1033.                   this.field_69 = var2;
  1034.                   this.field_70 = var3;
  1035.                   this.method_8(var2, var3, 8);
  1036.                   break;
  1037.                case 8:
  1038.                   if (var3 < 58) {
  1039.                      var3 = 58;
  1040.                   }
  1041.  
  1042.                   this.field_69 = var2;
  1043.                   this.field_70 = var3;
  1044.                   this.method_8(var2, var3, 16);
  1045.                   break;
  1046.                case 9:
  1047.                   if (var3 < 58) {
  1048.                      var3 = 58;
  1049.                   }
  1050.  
  1051.                   this.field_69 = var2;
  1052.                   this.field_70 = var3;
  1053.                   this.method_8(var2, var3, 32);
  1054.             }
  1055.          } else {
  1056.             if (var3 < 58) {
  1057.                return true;
  1058.             }
  1059.  
  1060.             this.field_25.drawImage(this.field_63, 0, 0, this);
  1061.             this.method_11(var2, var3);
  1062.          }
  1063.  
  1064.          ((Component)this).repaint();
  1065.          return true;
  1066.       }
  1067.    }
  1068.  
  1069.    public boolean mouseMove(Event var1, int var2, int var3) {
  1070.       if (var3 > 58) {
  1071.          this.field_11 = method_12("\nYb\f") + String.valueOf(var2) + method_12("~Y\u0006\u0011g") + (var3 - 58);
  1072.          ((Applet)this).showStatus(this.field_11);
  1073.          if (this.field_13 == 18 && !this.field_45 && this.field_36.npoints > 0) {
  1074.             this.field_25.drawImage(this.field_63, 0, 0, this);
  1075.             anfypaintb var4 = this.field_56;
  1076.             this.field_25.setColor(var4.e);
  1077.             this.method_6(this.field_39, this.field_40, var2, var3, this.field_25);
  1078.             ((Component)this).repaint();
  1079.          }
  1080.       }
  1081.  
  1082.       return true;
  1083.    }
  1084.  
  1085.    public boolean mouseUp(Event var1, int var2, int var3) {
  1086.       if (this.field_45) {
  1087.          this.field_45 = false;
  1088.          return true;
  1089.       } else {
  1090.          if (var3 > 53) {
  1091.             this.field_38 = 1;
  1092.             anfypaintb var4 = this.field_56;
  1093.             this.field_25.setColor(var4.e);
  1094.             this.method_11(var2, var3);
  1095.             ((Component)this).repaint();
  1096.          }
  1097.  
  1098.          return true;
  1099.       }
  1100.    }
  1101.  
  1102.    public final void paint(Graphics var1) {
  1103.       this.update(var1);
  1104.    }
  1105.  
  1106.    // $FF: renamed from: a (int, int, int, int, java.awt.Graphics) void
  1107.    public void method_6(int var1, int var2, int var3, int var4, Graphics var5) {
  1108.       var5.drawLine(var1, var2, var3, var4);
  1109.       if (this.field_9 > 1) {
  1110.          var5.drawLine(var1, var2 - 1, var3, var4 - 1);
  1111.          var5.drawLine(var1 - 1, var2, var3 - 1, var4);
  1112.          var5.drawLine(var1 + 1, var2, var3 + 1, var4);
  1113.          var5.drawLine(var1, var2 + 1, var3, var4 + 1);
  1114.       }
  1115.  
  1116.       if (this.field_9 > 2) {
  1117.          var5.drawLine(var1 + 1, var2 + 1, var3 + 1, var4 + 1);
  1118.          var5.drawLine(var1 - 1, var2 - 1, var3 - 1, var4 - 1);
  1119.          var5.drawLine(var1 + 1, var2 - 1, var3 + 1, var4 - 1);
  1120.          var5.drawLine(var1 - 1, var2 + 1, var3 - 1, var4 + 1);
  1121.       }
  1122.  
  1123.       if (this.field_9 > 3) {
  1124.          var5.drawLine(var1 - 1, var2 - 2, var3 - 1, var4 - 2);
  1125.          var5.drawLine(var1, var2 - 2, var3, var4 - 2);
  1126.          var5.drawLine(var1 + 1, var2 - 2, var3 + 1, var4 - 2);
  1127.          var5.drawLine(var1 - 2, var2 - 1, var3 - 2, var4 - 1);
  1128.          var5.drawLine(var1 - 2, var2, var3 - 2, var4);
  1129.          var5.drawLine(var1 - 2, var2 + 1, var3 - 2, var4 + 1);
  1130.          var5.drawLine(var1 + 2, var2 - 1, var3 + 2, var4 - 1);
  1131.          var5.drawLine(var1 + 2, var2, var3 + 2, var4);
  1132.          var5.drawLine(var1 + 2, var2 + 1, var3 + 2, var4 + 1);
  1133.          var5.drawLine(var1 - 1, var2 + 2, var3 - 1, var4 + 2);
  1134.          var5.drawLine(var1, var2 + 2, var3, var4 + 2);
  1135.          var5.drawLine(var1 + 1, var2 + 2, var3 + 1, var4 + 2);
  1136.       }
  1137.  
  1138.    }
  1139.  
  1140.    // $FF: renamed from: a (int, int, int, int) byte
  1141.    byte method_7(int var1, int var2, int var3, int var4) {
  1142.       int var5 = var1 - var2;
  1143.       if (var5 >= var3) {
  1144.          return (byte)var5;
  1145.       } else {
  1146.          int var6 = var3 - var5 - 1;
  1147.          return (byte)(var4 - var6);
  1148.       }
  1149.    }
  1150.  
  1151.    // $FF: renamed from: a (int, int, int) void
  1152.    public final void method_8(int var1, int var2, int var3) {
  1153.       switch (this.field_9) {
  1154.          case 1:
  1155.             for(int var15 = 0; var15 < var3 / 2; ++var15) {
  1156.                int var9 = var1 - var3 / 2 + (int)(Math.random() * (double)var3);
  1157.                int var12 = var2 - var3 / 2 + (int)(Math.random() * (double)var3);
  1158.                if (var12 > 58) {
  1159.                   this.field_25.drawLine(var9, var12, var9, var12);
  1160.                }
  1161.             }
  1162.  
  1163.             return;
  1164.          case 2:
  1165.             for(int var14 = 0; var14 < var3 / 2; ++var14) {
  1166.                int var8 = var1 - var3 / 2 + (int)(Math.random() * (double)var3);
  1167.                int var11 = var2 - var3 / 2 + (int)(Math.random() * (double)var3);
  1168.                if (var11 > 58) {
  1169.                   this.field_25.fillRect(var8, var11, 2, 2);
  1170.                }
  1171.             }
  1172.  
  1173.             return;
  1174.          case 3:
  1175.             for(int var13 = 0; var13 < var3 / 2; ++var13) {
  1176.                int var7 = var1 - var3 / 2 + (int)(Math.random() * (double)var3);
  1177.                int var10 = var2 - var3 / 2 + (int)(Math.random() * (double)var3);
  1178.                if (var10 > 58) {
  1179.                   this.field_25.drawLine(var7 - 1, var10, var7 + 1, var10);
  1180.                   this.field_25.drawLine(var7, var10 - 1, var7, var10 + 1);
  1181.                }
  1182.             }
  1183.  
  1184.             return;
  1185.          case 4:
  1186.             for(int var6 = 0; var6 < var3 / 2; ++var6) {
  1187.                int var4 = var1 - var3 / 2 + (int)(Math.random() * (double)var3);
  1188.                int var5 = var2 - var3 / 2 + (int)(Math.random() * (double)var3);
  1189.                if (var5 > 58) {
  1190.                   this.field_25.fillRect(var4 - 1, var5, 4, 2);
  1191.                   this.field_25.drawLine(var4, var5 - 1, var4 + 1, var5 - 1);
  1192.                   this.field_25.drawLine(var4, var5 + 2, var4 + 1, var5 + 2);
  1193.                }
  1194.             }
  1195.  
  1196.             return;
  1197.          default:
  1198.       }
  1199.    }
  1200.  
  1201.    // $FF: renamed from: b (int, int) void
  1202.    public void method_9(int var1, int var2) {
  1203.       Rectangle var3 = new Rectangle(0, 3, 12, 8);
  1204.  
  1205.       for(int var4 = 0; var4 < 16; ++var4) {
  1206.          var3.x = 315 + var4 * 13 + 3;
  1207.          if (var3.inside(var1, var2)) {
  1208.             anfypaintb var5 = this.field_56;
  1209.             int var6 = var4 + 1;
  1210.             var5.L = var6;
  1211.             ((Component)var5).repaint();
  1212.             ((Component)this).repaint();
  1213.          }
  1214.       }
  1215.  
  1216.    }
  1217.  
  1218.    // $FF: renamed from: c (int, int) void
  1219.    public void method_10(int var1, int var2) {
  1220.       Rectangle var3 = new Rectangle(0, 6, 56, 14);
  1221.  
  1222.       for(int var4 = 0; var4 < 4; ++var4) {
  1223.          var3.x = 115 + var4 * 14;
  1224.          if (var3.inside(var1, var2)) {
  1225.             this.field_9 = var4 + 1;
  1226.             ((Component)this).repaint();
  1227.          }
  1228.       }
  1229.  
  1230.    }
  1231.  
  1232.    public final synchronized void update(Graphics var1) {
  1233.       if (this.field_66) {
  1234.          Rectangle var2 = ((Component)this).bounds();
  1235.          this.field_25.setColor(Color.lightGray);
  1236.          this.field_25.fillRect(0, 0, var2.width, var2.height);
  1237.          this.field_25.setColor(new Color(100, 128, 128));
  1238.          this.field_25.fillRect(var2.x, 58, var2.width, var2.height - 58);
  1239.          int var3 = ((Component)this).getFont().getSize();
  1240.          Font var4 = new Font(((Component)this).getFont().getName(), 1, 24);
  1241.          this.field_25.setFont(var4);
  1242.          String var5 = ((Applet)this).getParameter(method_12("!\r>^3?\n8"));
  1243.          FontMetrics var6 = this.field_25.getFontMetrics(var4);
  1244.          int var7 = var6.stringWidth(var5);
  1245.          int var8 = (this.field_67 - var7) / 2;
  1246.          int var9 = this.field_26 / 2 + 30;
  1247.          this.field_25.setColor(Color.darkGray);
  1248.          this.field_25.drawString(var5, var8 + 1, var9 + 1);
  1249.          this.field_25.setColor(Color.black);
  1250.          this.field_25.drawString(var5, var8, var9);
  1251.          this.field_25.setColor(Color.yellow);
  1252.          this.field_25.drawString(var5, var8 - 1, var9 - 1);
  1253.          Font var10 = new Font(((Component)this).getFont().getName(), 0, var3);
  1254.          this.field_25.setFont(var10);
  1255.          this.field_25.setColor(Color.black);
  1256.          ((Component)this).repaint();
  1257.          this.field_66 = false;
  1258.       }
  1259.  
  1260.       for(int var11 = 1; var11 < 17; ++var11) {
  1261.          switch (var11) {
  1262.             case 1:
  1263.                this.field_25.setColor(Color.white);
  1264.                break;
  1265.             case 2:
  1266.                this.field_25.setColor(this.field_56.u[7]);
  1267.                break;
  1268.             case 3:
  1269.                this.field_25.setColor(this.field_56.w[7]);
  1270.                break;
  1271.             case 4:
  1272.                this.field_25.setColor(this.field_56.y[7]);
  1273.                break;
  1274.             case 5:
  1275.                this.field_25.setColor(this.field_56.A[7]);
  1276.                break;
  1277.             case 6:
  1278.                this.field_25.setColor(this.field_56.C[7]);
  1279.                break;
  1280.             case 7:
  1281.                this.field_25.setColor(this.field_56.E[7]);
  1282.                break;
  1283.             case 8:
  1284.                this.field_25.setColor(this.field_56.G[7]);
  1285.                break;
  1286.             case 9:
  1287.                this.field_25.setColor(this.field_56.I[7]);
  1288.                break;
  1289.             case 10:
  1290.                this.field_25.setColor(this.field_56.g[7]);
  1291.                break;
  1292.             case 11:
  1293.                this.field_25.setColor(this.field_56.i[7]);
  1294.                break;
  1295.             case 12:
  1296.                this.field_25.setColor(this.field_56.k[7]);
  1297.                break;
  1298.             case 13:
  1299.                this.field_25.setColor(this.field_56.m[7]);
  1300.                break;
  1301.             case 14:
  1302.                this.field_25.setColor(this.field_56.o[7]);
  1303.                break;
  1304.             case 15:
  1305.                this.field_25.setColor(this.field_56.q[7]);
  1306.                break;
  1307.             case 16:
  1308.                this.field_25.setColor(this.field_56.s[7]);
  1309.          }
  1310.  
  1311.          this.field_25.fillOval(315 + (var11 - 1) * 13 + 3, 3, 12, 11);
  1312.       }
  1313.  
  1314.       anfypaintb var12 = this.field_56;
  1315.       this.field_25.setColor(var12.e);
  1316.       this.field_25.fillRect(540, 3, 22, 21);
  1317.       this.field_25.setColor(Color.black);
  1318.       this.field_25.drawRect(540, 3, 22, 21);
  1319.       int var13 = this.field_9;
  1320.       this.field_9 = 1;
  1321.       this.method_6(118, 17, 126, 9, this.field_25);
  1322.       this.field_9 = 2;
  1323.       this.method_6(133, 16, 140, 9, this.field_25);
  1324.       this.field_9 = 3;
  1325.       this.method_6(147, 16, 154, 9, this.field_25);
  1326.       this.field_9 = 4;
  1327.       this.method_6(161, 16, 167, 10, this.field_25);
  1328.       this.field_9 = var13;
  1329.       this.field_25.setColor(Color.lightGray);
  1330.       this.field_25.drawRect(115, 6, 14, 14);
  1331.       this.field_25.drawRect(129, 6, 14, 14);
  1332.       this.field_25.drawRect(143, 6, 14, 14);
  1333.       this.field_25.drawRect(157, 6, 14, 14);
  1334.       this.field_25.setColor(Color.black);
  1335.       switch (this.field_9) {
  1336.          case 1:
  1337.             this.field_25.drawRect(115, 6, 14, 14);
  1338.             break;
  1339.          case 2:
  1340.             this.field_25.drawRect(129, 6, 14, 14);
  1341.             break;
  1342.          case 3:
  1343.             this.field_25.drawRect(143, 6, 14, 14);
  1344.             break;
  1345.          case 4:
  1346.             this.field_25.drawRect(157, 6, 14, 14);
  1347.       }
  1348.  
  1349.       var1.drawImage(this.field_28, 0, 0, this);
  1350.    }
  1351.  
  1352.    // $FF: renamed from: d (int, int) void
  1353.    public final void method_11(int var1, int var2) {
  1354.       if (var2 < 58) {
  1355.          var2 = 58;
  1356.       }
  1357.  
  1358.       int var3 = this.field_69;
  1359.       int var4 = this.field_70;
  1360.       int var5 = Math.abs(var1 - this.field_69);
  1361.       int var6 = Math.abs(var2 - this.field_70);
  1362.       anfypaintb var7 = this.field_56;
  1363.       this.field_25.setColor(var7.e);
  1364.       switch (this.field_13) {
  1365.          case 0:
  1366.             this.method_6(this.field_69, this.field_70, var1, var2, this.field_25);
  1367.          case 1:
  1368.          case 6:
  1369.          case 7:
  1370.          case 8:
  1371.          case 9:
  1372.          default:
  1373.             break;
  1374.          case 2:
  1375.             if (this.field_69 > var1) {
  1376.                this.field_69 -= var5;
  1377.             }
  1378.  
  1379.             if (this.field_70 > var2) {
  1380.                this.field_70 -= var6;
  1381.             }
  1382.  
  1383.             this.field_25.drawOval(this.field_69, this.field_70, var5, var6);
  1384.             if (this.field_9 > 1) {
  1385.                this.field_25.drawOval(this.field_69, this.field_70 - 1, var5, var6);
  1386.                this.field_25.drawOval(this.field_69 - 1, this.field_70, var5, var6);
  1387.                this.field_25.drawOval(this.field_69 + 1, this.field_70, var5, var6);
  1388.                this.field_25.drawOval(this.field_69, this.field_70 + 1, var5, var6);
  1389.             }
  1390.  
  1391.             if (this.field_9 > 2) {
  1392.                this.field_25.drawOval(this.field_69 + 1, this.field_70 + 1, var5, var6);
  1393.                this.field_25.drawOval(this.field_69 - 1, this.field_70 - 1, var5, var6);
  1394.                this.field_25.drawOval(this.field_69 + 1, this.field_70 - 1, var5, var6);
  1395.                this.field_25.drawOval(this.field_69 - 1, this.field_70 + 1, var5, var6);
  1396.             }
  1397.  
  1398.             if (this.field_9 > 3) {
  1399.                this.field_25.drawOval(this.field_69 - 1, this.field_70 - 2, var5, var6);
  1400.                this.field_25.drawOval(this.field_69, this.field_70 - 2, var5, var6);
  1401.                this.field_25.drawOval(this.field_69 + 1, this.field_70 - 2, var5, var6);
  1402.                this.field_25.drawOval(this.field_69 - 2, this.field_70 - 1, var5, var6);
  1403.                this.field_25.drawOval(this.field_69 - 2, this.field_70, var5, var6);
  1404.                this.field_25.drawOval(this.field_69 - 2, this.field_70 + 1, var5, var6);
  1405.                this.field_25.drawOval(this.field_69 + 2, this.field_70 - 1, var5, var6);
  1406.                this.field_25.drawOval(this.field_69 + 2, this.field_70, var5, var6);
  1407.                this.field_25.drawOval(this.field_69 + 2, this.field_70 + 1, var5, var6);
  1408.                this.field_25.drawOval(this.field_69 - 1, this.field_70 + 2, var5, var6);
  1409.                this.field_25.drawOval(this.field_69, this.field_70 + 2, var5, var6);
  1410.                this.field_25.drawOval(this.field_69 + 1, this.field_70 + 2, var5, var6);
  1411.             }
  1412.             break;
  1413.          case 3:
  1414.             if (this.field_69 > var1) {
  1415.                this.field_69 -= var5;
  1416.             }
  1417.  
  1418.             if (this.field_70 > var2) {
  1419.                this.field_70 -= var6;
  1420.             }
  1421.  
  1422.             this.field_25.drawRect(this.field_69, this.field_70, var5, var6);
  1423.             if (this.field_9 > 1) {
  1424.                this.field_25.drawRect(this.field_69, this.field_70 - 1, var5, var6);
  1425.                this.field_25.drawRect(this.field_69 - 1, this.field_70, var5, var6);
  1426.                this.field_25.drawRect(this.field_69 + 1, this.field_70, var5, var6);
  1427.                this.field_25.drawRect(this.field_69, this.field_70 + 1, var5, var6);
  1428.             }
  1429.  
  1430.             if (this.field_9 > 2) {
  1431.                this.field_25.drawRect(this.field_69 + 1, this.field_70 + 1, var5, var6);
  1432.                this.field_25.drawRect(this.field_69 - 1, this.field_70 - 1, var5, var6);
  1433.                this.field_25.drawRect(this.field_69 + 1, this.field_70 - 1, var5, var6);
  1434.                this.field_25.drawRect(this.field_69 - 1, this.field_70 + 1, var5, var6);
  1435.             }
  1436.  
  1437.             if (this.field_9 > 3) {
  1438.                this.field_25.drawRect(this.field_69 - 1, this.field_70 - 2, var5, var6);
  1439.                this.field_25.drawRect(this.field_69, this.field_70 - 2, var5, var6);
  1440.                this.field_25.drawRect(this.field_69 + 1, this.field_70 - 2, var5, var6);
  1441.                this.field_25.drawRect(this.field_69 - 2, this.field_70 - 1, var5, var6);
  1442.                this.field_25.drawRect(this.field_69 - 2, this.field_70, var5, var6);
  1443.                this.field_25.drawRect(this.field_69 - 2, this.field_70 + 1, var5, var6);
  1444.                this.field_25.drawRect(this.field_69 + 2, this.field_70 - 1, var5, var6);
  1445.                this.field_25.drawRect(this.field_69 + 2, this.field_70, var5, var6);
  1446.                this.field_25.drawRect(this.field_69 + 2, this.field_70 + 1, var5, var6);
  1447.                this.field_25.drawRect(this.field_69 - 1, this.field_70 + 2, var5, var6);
  1448.                this.field_25.drawRect(this.field_69, this.field_70 + 2, var5, var6);
  1449.                this.field_25.drawRect(this.field_69 + 1, this.field_70 + 2, var5, var6);
  1450.             }
  1451.             break;
  1452.          case 4:
  1453.             if (this.field_69 > var1) {
  1454.                this.field_69 -= var5;
  1455.             }
  1456.  
  1457.             if (this.field_70 > var2) {
  1458.                this.field_70 -= var6;
  1459.             }
  1460.  
  1461.             this.field_25.fillOval(this.field_69, this.field_70, var5, var6);
  1462.             break;
  1463.          case 5:
  1464.             if (this.field_69 > var1) {
  1465.                this.field_69 -= var5;
  1466.             }
  1467.  
  1468.             if (this.field_70 > var2) {
  1469.                this.field_70 -= var6;
  1470.             }
  1471.  
  1472.             this.field_25.fillRect(this.field_69, this.field_70, var5, var6);
  1473.             break;
  1474.          case 10:
  1475.             if (this.field_69 > var1) {
  1476.                int var31 = var1;
  1477.                var1 = this.field_69;
  1478.                this.field_69 = var31;
  1479.             }
  1480.  
  1481.             if (this.field_70 > var2) {
  1482.                int var32 = var2;
  1483.                var2 = this.field_70;
  1484.                this.field_70 = var32;
  1485.             }
  1486.  
  1487.             var1 = Math.abs(var1 - this.field_69);
  1488.             var2 = Math.abs(var2 - this.field_70) * 2;
  1489.             this.method_1(this.field_69, this.field_70, var1, var2, 0, 180);
  1490.             break;
  1491.          case 11:
  1492.             if (this.field_69 > var1) {
  1493.                int var39 = var1;
  1494.                var1 = this.field_69;
  1495.                this.field_69 = var39;
  1496.             }
  1497.  
  1498.             if (this.field_70 > var2) {
  1499.                int var40 = var2;
  1500.                var2 = this.field_70;
  1501.                this.field_70 = var40;
  1502.             }
  1503.  
  1504.             var1 = Math.abs(var1 - this.field_69);
  1505.             var2 = Math.abs(var2 - this.field_70);
  1506.             this.field_25.fillArc(this.field_69, this.field_70, var1, var2 * 2, 0, 180);
  1507.             break;
  1508.          case 12:
  1509.             if (this.field_69 > var1) {
  1510.                int var28 = var1;
  1511.                var1 = this.field_69;
  1512.                this.field_69 = var28;
  1513.             }
  1514.  
  1515.             if (this.field_70 > var2) {
  1516.                int var29 = var2;
  1517.                var2 = this.field_70;
  1518.                this.field_70 = var29;
  1519.             }
  1520.  
  1521.             var1 = Math.abs(var1 - this.field_69);
  1522.             var2 = Math.abs(var2 - this.field_70) * 2;
  1523.             int var30 = this.field_70 - var2 / 2;
  1524.             this.method_1(this.field_69, var30, var1, var2, 180, 180);
  1525.             break;
  1526.          case 13:
  1527.             if (this.field_69 > var1) {
  1528.                int var36 = var1;
  1529.                var1 = this.field_69;
  1530.                this.field_69 = var36;
  1531.             }
  1532.  
  1533.             if (this.field_70 > var2) {
  1534.                int var37 = var2;
  1535.                var2 = this.field_70;
  1536.                this.field_70 = var37;
  1537.             }
  1538.  
  1539.             var1 = Math.abs(var1 - this.field_69);
  1540.             var2 = Math.abs(var2 - this.field_70) * 2;
  1541.             int var38 = this.field_70 - var2 / 2;
  1542.             this.field_25.fillArc(this.field_69, var38, var1, var2, 180, 180);
  1543.             break;
  1544.          case 14:
  1545.             if (this.field_69 > var1) {
  1546.                int var8 = var1;
  1547.                var1 = this.field_69;
  1548.                this.field_69 = var8;
  1549.             }
  1550.  
  1551.             if (this.field_70 > var2) {
  1552.                int var33 = var2;
  1553.                var2 = this.field_70;
  1554.                this.field_70 = var33;
  1555.             }
  1556.  
  1557.             var1 = Math.abs(var1 - this.field_69) * 2;
  1558.             var2 = Math.abs(var2 - this.field_70);
  1559.             int var34 = this.field_69 - var1 / 2;
  1560.             this.method_1(var34, this.field_70, var1, var2, 270, 180);
  1561.             break;
  1562.          case 15:
  1563.             if (this.field_69 > var1) {
  1564.                int var10 = var1;
  1565.                var1 = this.field_69;
  1566.                this.field_69 = var10;
  1567.             }
  1568.  
  1569.             if (this.field_70 > var2) {
  1570.                int var41 = var2;
  1571.                var2 = this.field_70;
  1572.                this.field_70 = var41;
  1573.             }
  1574.  
  1575.             var1 = Math.abs(var1 - this.field_69) * 2;
  1576.             var2 = Math.abs(var2 - this.field_70);
  1577.             int var42 = this.field_69 - var1 / 2;
  1578.             this.field_25.fillArc(var42, this.field_70, var1, var2, 270, 180);
  1579.             break;
  1580.          case 16:
  1581.             if (this.field_69 > var1) {
  1582.                int var9 = var1;
  1583.                var1 = this.field_69;
  1584.                this.field_69 = var9;
  1585.             }
  1586.  
  1587.             if (this.field_70 > var2) {
  1588.                int var35 = var2;
  1589.                var2 = this.field_70;
  1590.                this.field_70 = var35;
  1591.             }
  1592.  
  1593.             var1 = Math.abs(var1 - this.field_69) * 2;
  1594.             var2 = Math.abs(var2 - this.field_70);
  1595.             this.method_1(this.field_69, this.field_70, var1, var2, 90, 180);
  1596.             break;
  1597.          case 17:
  1598.             if (this.field_69 > var1) {
  1599.                int var11 = var1;
  1600.                var1 = this.field_69;
  1601.                this.field_69 = var11;
  1602.             }
  1603.  
  1604.             if (this.field_70 > var2) {
  1605.                int var43 = var2;
  1606.                var2 = this.field_70;
  1607.                this.field_70 = var43;
  1608.             }
  1609.  
  1610.             var1 = Math.abs(var1 - this.field_69) * 2;
  1611.             var2 = Math.abs(var2 - this.field_70);
  1612.             this.field_25.fillArc(this.field_69, this.field_70, var1, var2, 90, 180);
  1613.             break;
  1614.          case 18:
  1615.             if ((var1 == this.field_46 && var2 == this.field_47 || var1 == this.field_46 + 1 && var2 == this.field_47 || var1 == this.field_46 - 1 && var2 == this.field_47 || var1 == this.field_46 && var2 == this.field_47 + 1 || var1 == this.field_46 + 1 && var2 == this.field_47 + 1 || var1 == this.field_46 - 1 && var2 == this.field_47 + 1 || var1 == this.field_46 && var2 == this.field_47 - 1 || var1 == this.field_46 + 1 && var2 == this.field_47 - 1 || var1 == this.field_46 - 1 && var2 == this.field_47 - 1) && this.field_36.npoints > 1) {
  1616.                if (this.field_18.getState()) {
  1617.                   this.field_25.fillPolygon(this.field_36);
  1618.                }
  1619.  
  1620.                this.field_36 = new Polygon();
  1621.             }
  1622.       }
  1623.  
  1624.       this.field_69 = var3;
  1625.       this.field_70 = var4;
  1626.    }
  1627.  
  1628.    // $FF: renamed from: c (java.lang.String) java.lang.String
  1629.    private static String method_12(String var0) {
  1630.       char[] var1 = var0.toCharArray();
  1631.       int var2 = var1.length;
  1632.       int var3 = 0;
  1633.  
  1634.       label32:
  1635.       while(true) {
  1636.          int var4 = 0;
  1637.          byte var10000 = 82;
  1638.          char[] var10001 = var1;
  1639.          int var10002 = var3;
  1640.  
  1641.          label30:
  1642.          while(true) {
  1643.             var10001[var10002] ^= var10000;
  1644.  
  1645.             while(true) {
  1646.                ++var3;
  1647.                ++var4;
  1648.                if (var2 == var3) {
  1649.                   return new String(var1);
  1650.                }
  1651.  
  1652.                switch (var4) {
  1653.                   case 1:
  1654.                      var10000 = 121;
  1655.                      var10001 = var1;
  1656.                      var10002 = var3;
  1657.                      continue label30;
  1658.                   case 2:
  1659.                      var10000 = 95;
  1660.                      var10001 = var1;
  1661.                      var10002 = var3;
  1662.                      continue label30;
  1663.                   case 3:
  1664.                      var10000 = 44;
  1665.                      var10001 = var1;
  1666.                      var10002 = var3;
  1667.                      continue label30;
  1668.                   case 4:
  1669.                      var10000 = 71;
  1670.                      var10001 = var1;
  1671.                      var10002 = var3;
  1672.                      continue label30;
  1673.                   case 5:
  1674.                      continue label32;
  1675.                }
  1676.             }
  1677.          }
  1678.       }
  1679.    }
  1680. }
  1681.