/* Class199 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */
import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.PixelGrabber;

public class Class199
{
    static final String aString2387
	= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00a3$%^&*()-_=+[{]};:'@#~,<.>/?\\| \u00c4\u00cb\u00cf\u00d6\u00dc\u00e4\u00eb\u00ef\u00f6\u00fc\u00ff\u00df\u00c1\u00c0\u00c9\u00c8\u00cd\u00cc\u00d3\u00d2\u00da\u00d9\u00e1\u00e0\u00e9\u00e8\u00ed\u00ec\u00f3\u00f2\u00fa\u00f9\u00c2\u00ca\u00ce\u00d4\u00db\u00e2\u00ea\u00ee\u00f4\u00fb\u00c6\u00e6\u00e3\u00c3\u00f5\u00d5\u00e7\u00c7\u00d1\u00f1";
    static int anInt2388
	= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00a3$%^&*()-_=+[{]};:'@#~,<.>/?\\| \u00c4\u00cb\u00cf\u00d6\u00dc\u00e4\u00eb\u00ef\u00f6\u00fc\u00ff\u00df\u00c1\u00c0\u00c9\u00c8\u00cd\u00cc\u00d3\u00d2\u00da\u00d9\u00e1\u00e0\u00e9\u00e8\u00ed\u00ec\u00f3\u00f2\u00fa\u00f9\u00c2\u00ca\u00ce\u00d4\u00db\u00e2\u00ea\u00ee\u00f4\u00fb\u00c6\u00e6\u00e3\u00c3\u00f5\u00d5\u00e7\u00c7\u00d1\u00f1"
	      .length();
    int anInt2389;
    boolean aBool2390 = false;
    Class135[] aClass135Array2391;
    int[] anIntArray2392;
    int anInt2393;
    static int[] anIntArray2394 = new int[256];
    int[] anIntArray2395 = new int[4];
    
    static {
	for (int i = 0; i < 256; i++) {
	    int i_0_
		= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00a3$%^&*()-_=+[{]};:'@#~,<.>/?\\| \u00c4\u00cb\u00cf\u00d6\u00dc\u00e4\u00eb\u00ef\u00f6\u00fc\u00ff\u00df\u00c1\u00c0\u00c9\u00c8\u00cd\u00cc\u00d3\u00d2\u00da\u00d9\u00e1\u00e0\u00e9\u00e8\u00ed\u00ec\u00f3\u00f2\u00fa\u00f9\u00c2\u00ca\u00ce\u00d4\u00db\u00e2\u00ea\u00ee\u00f4\u00fb\u00c6\u00e6\u00e3\u00c3\u00f5\u00d5\u00e7\u00c7\u00d1\u00f1"
		      .indexOf(i);
	    if (i_0_ == -1)
		i_0_ = 74;
	    anIntArray2394[i] = i_0_;
	}
    }
    
    void method4216(Class87 class87, Font font, FontMetrics fontmetrics,
		    char c, int i, boolean bool) {
	int i_1_ = fontmetrics.charWidth(c);
	int i_2_ = i_1_;
	if (bool) {
	    try {
		if (c == '/')
		    bool = false;
		if (c == 'f' || c == 't' || c == 'w' || c == 'v' || c == 'k'
		    || c == 'x' || c == 'y' || c == 'A' || c == 'V'
		    || c == 'W')
		    i_1_++;
	    } catch (Exception exception) {
		/* empty */
	    }
	}
	int i_3_ = fontmetrics.getMaxAscent();
	int i_4_ = fontmetrics.getMaxAscent() + fontmetrics.getMaxDescent();
	int i_5_ = fontmetrics.getHeight();
	Image image = Class631.aCanvas8104.createImage(i_1_, i_4_);
	Graphics graphics = image.getGraphics();
	graphics.setColor(Color.black);
	graphics.fillRect(0, 0, i_1_, i_4_);
	graphics.setColor(Color.white);
	graphics.setFont(font);
	graphics.drawString(new StringBuilder().append(c).append("")
				.toString(),
			    0, i_3_);
	if (bool)
	    graphics.drawString(new StringBuilder().append(c).append("")
				    .toString(),
				1, i_3_);
	int[] is = new int[i_1_ * i_4_];
	PixelGrabber pixelgrabber
	    = new PixelGrabber(image, 0, 0, i_1_, i_4_, is, 0, i_1_);
	try {
	    pixelgrabber.grabPixels();
	} catch (Exception exception) {
	    /* empty */
	}
	image.flush();
	Object object = null;
	int i_6_ = 0;
    while_105_:
	for (int i_7_ = 0; i_7_ < i_4_; i_7_++) {
	    for (int i_8_ = 0; i_8_ < i_1_; i_8_++) {
		int i_9_ = is[i_8_ + i_7_ * i_1_];
		if ((i_9_ & 0xffffff) != 0) {
		    i_6_ = i_7_;
		    break while_105_;
		}
	    }
	}
	for (int i_10_ = 0; i_10_ < is.length; i_10_++) {
	    if ((is[i_10_] & 0xffffff) == 0)
		is[i_10_] = 0;
	}
	((Class199) this).anInt2389 = i_3_ - i_6_;
	((Class199) this).anInt2393 = i_5_;
	((Class199) this).anIntArray2392[i] = i_2_;
	((Class199) this).aClass135Array2391[i]
	    = class87.method2145(is, 0, i_1_, i_1_, i_4_, 1788280621);
    }
    
    int method4217() {
	return ((Class199) this).anInt2389;
    }
    
    int method4218() {
	return ((Class199) this).anInt2393 - 1;
    }
    
    void method4219(Class87 class87, String string, int i, int i_11_,
		    int i_12_, boolean bool) {
	int i_13_ = method4231(string) / 2;
	class87.method2116(((Class199) this).anIntArray2395);
	if (i - i_13_ <= ((Class199) this).anIntArray2395[2]
	    && i + i_13_ >= ((Class199) this).anIntArray2395[0]
	    && (i_11_ - ((Class199) this).anInt2389
		<= ((Class199) this).anIntArray2395[3])
	    && (i_11_ + ((Class199) this).anInt2393
		>= ((Class199) this).anIntArray2395[1]))
	    method4228(class87, string, ((Class199) this).anIntArray2395,
		       i - i_13_, i_11_, i_12_, bool);
    }
    
    void method4220(Class87 class87, String string, int i, int i_14_,
		    int i_15_, boolean bool) {
	int i_16_ = method4231(string) / 2;
	class87.method2116(((Class199) this).anIntArray2395);
	if (i - i_16_ <= ((Class199) this).anIntArray2395[2]
	    && i + i_16_ >= ((Class199) this).anIntArray2395[0]
	    && (i_14_ - ((Class199) this).anInt2389
		<= ((Class199) this).anIntArray2395[3])
	    && (i_14_ + ((Class199) this).anInt2393
		>= ((Class199) this).anIntArray2395[1]))
	    method4228(class87, string, ((Class199) this).anIntArray2395,
		       i - i_16_, i_14_, i_15_, bool);
    }
    
    int method4221() {
	return ((Class199) this).anInt2389;
    }
    
    void method4222(Class87 class87, Font font, FontMetrics fontmetrics,
		    char c, int i, boolean bool) {
	int i_17_ = fontmetrics.charWidth(c);
	int i_18_ = i_17_;
	if (bool) {
	    try {
		if (c == '/')
		    bool = false;
		if (c == 'f' || c == 't' || c == 'w' || c == 'v' || c == 'k'
		    || c == 'x' || c == 'y' || c == 'A' || c == 'V'
		    || c == 'W')
		    i_17_++;
	    } catch (Exception exception) {
		/* empty */
	    }
	}
	int i_19_ = fontmetrics.getMaxAscent();
	int i_20_ = fontmetrics.getMaxAscent() + fontmetrics.getMaxDescent();
	int i_21_ = fontmetrics.getHeight();
	Image image = Class631.aCanvas8104.createImage(i_17_, i_20_);
	Graphics graphics = image.getGraphics();
	graphics.setColor(Color.black);
	graphics.fillRect(0, 0, i_17_, i_20_);
	graphics.setColor(Color.white);
	graphics.setFont(font);
	graphics.drawString(new StringBuilder().append(c).append("")
				.toString(),
			    0, i_19_);
	if (bool)
	    graphics.drawString(new StringBuilder().append(c).append("")
				    .toString(),
				1, i_19_);
	int[] is = new int[i_17_ * i_20_];
	PixelGrabber pixelgrabber
	    = new PixelGrabber(image, 0, 0, i_17_, i_20_, is, 0, i_17_);
	try {
	    pixelgrabber.grabPixels();
	} catch (Exception exception) {
	    /* empty */
	}
	image.flush();
	Object object = null;
	int i_22_ = 0;
    while_106_:
	for (int i_23_ = 0; i_23_ < i_20_; i_23_++) {
	    for (int i_24_ = 0; i_24_ < i_17_; i_24_++) {
		int i_25_ = is[i_24_ + i_23_ * i_17_];
		if ((i_25_ & 0xffffff) != 0) {
		    i_22_ = i_23_;
		    break while_106_;
		}
	    }
	}
	for (int i_26_ = 0; i_26_ < is.length; i_26_++) {
	    if ((is[i_26_] & 0xffffff) == 0)
		is[i_26_] = 0;
	}
	((Class199) this).anInt2389 = i_19_ - i_22_;
	((Class199) this).anInt2393 = i_21_;
	((Class199) this).anIntArray2392[i] = i_18_;
	((Class199) this).aClass135Array2391[i]
	    = class87.method2145(is, 0, i_17_, i_17_, i_20_, 1215584360);
    }
    
    Class199(Class87 class87, int i, boolean bool, Component component) {
	((Class199) this).aBool2390 = false;
	((Class199) this).aClass135Array2391 = new Class135[256];
	((Class199) this).anIntArray2392 = new int[256];
	Font font = new Font("Helvetica", bool ? 1 : 0, i);
	FontMetrics fontmetrics = component.getFontMetrics(font);
	for (int i_27_ = 0; i_27_ < anInt2388; i_27_++)
	    method4216
		(class87, font, fontmetrics,
		 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00a3$%^&*()-_=+[{]};:'@#~,<.>/?\\| \u00c4\u00cb\u00cf\u00d6\u00dc\u00e4\u00eb\u00ef\u00f6\u00fc\u00ff\u00df\u00c1\u00c0\u00c9\u00c8\u00cd\u00cc\u00d3\u00d2\u00da\u00d9\u00e1\u00e0\u00e9\u00e8\u00ed\u00ec\u00f3\u00f2\u00fa\u00f9\u00c2\u00ca\u00ce\u00d4\u00db\u00e2\u00ea\u00ee\u00f4\u00fb\u00c6\u00e6\u00e3\u00c3\u00f5\u00d5\u00e7\u00c7\u00d1\u00f1"
		     .charAt(i_27_),
		 i_27_, false);
	if (bool && ((Class199) this).aBool2390) {
	    ((Class199) this).aBool2390 = false;
	    font = new Font("Helvetica", 0, i);
	    fontmetrics = component.getFontMetrics(font);
	    for (int i_28_ = 0; i_28_ < anInt2388; i_28_++)
		method4216
		    (class87, font, fontmetrics,
		     "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00a3$%^&*()-_=+[{]};:'@#~,<.>/?\\| \u00c4\u00cb\u00cf\u00d6\u00dc\u00e4\u00eb\u00ef\u00f6\u00fc\u00ff\u00df\u00c1\u00c0\u00c9\u00c8\u00cd\u00cc\u00d3\u00d2\u00da\u00d9\u00e1\u00e0\u00e9\u00e8\u00ed\u00ec\u00f3\u00f2\u00fa\u00f9\u00c2\u00ca\u00ce\u00d4\u00db\u00e2\u00ea\u00ee\u00f4\u00fb\u00c6\u00e6\u00e3\u00c3\u00f5\u00d5\u00e7\u00c7\u00d1\u00f1"
			 .charAt(i_28_),
		     i_28_, false);
	    if (!((Class199) this).aBool2390) {
		((Class199) this).aBool2390 = false;
		for (int i_29_ = 0; i_29_ < anInt2388; i_29_++)
		    method4216
			(class87, font, fontmetrics,
			 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!\"\u00a3$%^&*()-_=+[{]};:'@#~,<.>/?\\| \u00c4\u00cb\u00cf\u00d6\u00dc\u00e4\u00eb\u00ef\u00f6\u00fc\u00ff\u00df\u00c1\u00c0\u00c9\u00c8\u00cd\u00cc\u00d3\u00d2\u00da\u00d9\u00e1\u00e0\u00e9\u00e8\u00ed\u00ec\u00f3\u00f2\u00fa\u00f9\u00c2\u00ca\u00ce\u00d4\u00db\u00e2\u00ea\u00ee\u00f4\u00fb\u00c6\u00e6\u00e3\u00c3\u00f5\u00d5\u00e7\u00c7\u00d1\u00f1"
			     .charAt(i_29_),
			 i_29_, true);
	    }
	}
    }
    
    int method4223() {
	return ((Class199) this).anInt2389;
    }
    
    int method4224() {
	return ((Class199) this).anInt2389;
    }
    
    int method4225() {
	return ((Class199) this).anInt2393 - 1;
    }
    
    int method4226() {
	return ((Class199) this).anInt2393 - 1;
    }
    
    int method4227() {
	return ((Class199) this).anInt2393 - 1;
    }
    
    void method4228(Class87 class87, String string, int[] is, int i, int i_30_,
		    int i_31_, boolean bool) {
	if (i_31_ == 0)
	    bool = false;
	i_31_ |= ~0xffffff;
	for (int i_32_ = 0; i_32_ < string.length(); i_32_++) {
	    int i_33_ = anIntArray2394[string.charAt(i_32_)];
	    if (bool)
		((Class199) this).aClass135Array2391[i_33_]
		    .method3368(i + 1, i_30_ + 1, 0, -16777216, 1);
	    ((Class199) this).aClass135Array2391[i_33_].method3368(i, i_30_, 0,
								   i_31_, 1);
	    i += ((Class199) this).anIntArray2392[i_33_];
	}
    }
    
    void method4229(Class87 class87, String string, int i, int i_34_,
		    int i_35_, boolean bool) {
	int i_36_ = method4231(string) / 2;
	class87.method2116(((Class199) this).anIntArray2395);
	if (i - i_36_ <= ((Class199) this).anIntArray2395[2]
	    && i + i_36_ >= ((Class199) this).anIntArray2395[0]
	    && (i_34_ - ((Class199) this).anInt2389
		<= ((Class199) this).anIntArray2395[3])
	    && (i_34_ + ((Class199) this).anInt2393
		>= ((Class199) this).anIntArray2395[1]))
	    method4228(class87, string, ((Class199) this).anIntArray2395,
		       i - i_36_, i_34_, i_35_, bool);
    }
    
    void method4230(Class87 class87, String string, int i, int i_37_,
		    int i_38_, boolean bool) {
	int i_39_ = method4231(string) / 2;
	class87.method2116(((Class199) this).anIntArray2395);
	if (i - i_39_ <= ((Class199) this).anIntArray2395[2]
	    && i + i_39_ >= ((Class199) this).anIntArray2395[0]
	    && (i_37_ - ((Class199) this).anInt2389
		<= ((Class199) this).anIntArray2395[3])
	    && (i_37_ + ((Class199) this).anInt2393
		>= ((Class199) this).anIntArray2395[1]))
	    method4228(class87, string, ((Class199) this).anIntArray2395,
		       i - i_39_, i_37_, i_38_, bool);
    }
    
    int method4231(String string) {
	int i = 0;
	for (int i_40_ = 0; i_40_ < string.length(); i_40_++) {
	    int i_41_ = anIntArray2394[string.charAt(i_40_)];
	    i += ((Class199) this).anIntArray2392[i_41_];
	}
	return i;
    }
    
    void method4232(Class87 class87, String string, int[] is, int i, int i_42_,
		    int i_43_, boolean bool) {
	if (i_43_ == 0)
	    bool = false;
	i_43_ |= ~0xffffff;
	for (int i_44_ = 0; i_44_ < string.length(); i_44_++) {
	    int i_45_ = anIntArray2394[string.charAt(i_44_)];
	    if (bool)
		((Class199) this).aClass135Array2391[i_45_]
		    .method3368(i + 1, i_42_ + 1, 0, -16777216, 1);
	    ((Class199) this).aClass135Array2391[i_45_].method3368(i, i_42_, 0,
								   i_43_, 1);
	    i += ((Class199) this).anIntArray2392[i_45_];
	}
    }
    
    void method4233(Class87 class87, String string, int[] is, int i, int i_46_,
		    int i_47_, boolean bool) {
	if (i_47_ == 0)
	    bool = false;
	i_47_ |= ~0xffffff;
	for (int i_48_ = 0; i_48_ < string.length(); i_48_++) {
	    int i_49_ = anIntArray2394[string.charAt(i_48_)];
	    if (bool)
		((Class199) this).aClass135Array2391[i_49_]
		    .method3368(i + 1, i_46_ + 1, 0, -16777216, 1);
	    ((Class199) this).aClass135Array2391[i_49_].method3368(i, i_46_, 0,
								   i_47_, 1);
	    i += ((Class199) this).anIntArray2392[i_49_];
	}
    }
    
    void method4234(Class87 class87, String string, int[] is, int i, int i_50_,
		    int i_51_, boolean bool) {
	if (i_51_ == 0)
	    bool = false;
	i_51_ |= ~0xffffff;
	for (int i_52_ = 0; i_52_ < string.length(); i_52_++) {
	    int i_53_ = anIntArray2394[string.charAt(i_52_)];
	    if (bool)
		((Class199) this).aClass135Array2391[i_53_]
		    .method3368(i + 1, i_50_ + 1, 0, -16777216, 1);
	    ((Class199) this).aClass135Array2391[i_53_].method3368(i, i_50_, 0,
								   i_51_, 1);
	    i += ((Class199) this).anIntArray2392[i_53_];
	}
    }
    
    void method4235(Class87 class87, String string, int[] is, int i, int i_54_,
		    int i_55_, boolean bool) {
	if (i_55_ == 0)
	    bool = false;
	i_55_ |= ~0xffffff;
	for (int i_56_ = 0; i_56_ < string.length(); i_56_++) {
	    int i_57_ = anIntArray2394[string.charAt(i_56_)];
	    if (bool)
		((Class199) this).aClass135Array2391[i_57_]
		    .method3368(i + 1, i_54_ + 1, 0, -16777216, 1);
	    ((Class199) this).aClass135Array2391[i_57_].method3368(i, i_54_, 0,
								   i_55_, 1);
	    i += ((Class199) this).anIntArray2392[i_57_];
	}
    }
}
