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

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