/* Class151_Sub2 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */
import java.lang.reflect.Field;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.util.ArrayList;
import java.util.Iterator;

import jaclib.memory.DirectBufferHelper;
import jaclib.memory.Stream;
import jaclib.memory.heap.NativeHeap;
import jaclib.memory.heap.NativeHeapBuffer;

import sun.misc.Unsafe;

public abstract class Class151_Sub2 extends Class151
{
    Class403 aClass403_8910;
    Class39 aClass39_8911 = new Class39();
    static final int anInt8912 = 128;
    static final int anInt8913 = 1;
    static final int anInt8914 = 2;
    static final int anInt8915 = 4;
    static final int anInt8916 = 8;
    protected Class345[] aClass345Array8917;
    int anInt8918;
    protected static final int anInt8919 = 100663296;
    Class411 aClass411_8920;
    protected boolean aBool8921;
    int[] anIntArray8922;
    Class325 aClass325_8923;
    protected boolean aBool8924;
    static final int anInt8925 = 1;
    Class305_Sub1_Sub1 aClass305_Sub1_Sub1_8926;
    int anInt8927 = 0;
    protected int anInt8928;
    NativeHeap aNativeHeap8929;
    Class305_Sub1_Sub1 aClass305_Sub1_Sub1_8930;
    Class294 aClass294_8931;
    public int anInt8932;
    protected int anInt8933;
    Class400 aClass400_8934;
    static final int anInt8935 = 7;
    Class400 aClass400_8936;
    protected int anInt8937;
    public Class403 aClass403_8938;
    Class403 aClass403_8939;
    Class403 aClass403_8940;
    static final int anInt8941 = 55;
    Class403 aClass403_8942;
    protected int anInt8943;
    Class403 aClass403_8944;
    Interface33 anInterface33_8945;
    Class403 aClass403_8946;
    Class317 aClass317_8947;
    Class316 aClass316_8948;
    boolean aBool8949;
    int anInt8950;
    boolean aBool8951;
    int anInt8952;
    Class403 aClass403_8953;
    Class325 aClass325_8954;
    public long aLong8955;
    Class403 aClass403_8956;
    Class403 aClass403_8957;
    protected Unsafe anUnsafe8958;
    Class403 aClass403_8959;
    public Class403 aClass403_8960;
    float[][] aFloatArrayArray8961;
    float aFloat8962;
    float aFloat8963;
    protected int anInt8964;
    static final int anInt8965 = 4;
    protected float aFloat8966;
    boolean aBool8967;
    float aFloat8968;
    float aFloat8969;
    float[] aFloatArray8970;
    protected float aFloat8971;
    protected boolean aBool8972;
    protected boolean aBool8973;
    protected int anInt8974;
    protected int anInt8975;
    int anInt8976;
    int anInt8977;
    int anInt8978;
    float aFloat8979;
    public Interface31 anInterface31_8980;
    protected int anInt8981;
    int anInt8982;
    protected int anInt8983;
    protected int anInt8984;
    int anInt8985;
    protected float aFloat8986;
    protected boolean aBool8987;
    protected float aFloat8988;
    Class400 aClass400_8989;
    protected boolean aBool8990;
    Class403 aClass403_8991;
    public float[] aFloatArray8992;
    Class400 aClass400_8993;
    float[] aFloatArray8994;
    protected int anInt8995;
    int anInt8996;
    public float aFloat8997;
    public float aFloat8998;
    public float aFloat8999;
    protected float aFloat9000;
    public float aFloat9001;
    protected int anInt9002;
    protected Class487_Sub16[] aClass487_Sub16Array9003;
    protected float aFloat9004;
    protected float[] aFloatArray9005;
    int anInt9006;
    int anInt9007;
    protected int anInt9008;
    int anInt9009;
    protected int anInt9010;
    Interface40[] anInterface40Array9011;
    Class325 aClass325_9012;
    protected boolean aBool9013;
    protected Class345[] aClass345Array9014;
    Class138 aClass138_9015;
    protected int anInt9016;
    Class307 aClass307_9017;
    static final int anInt9018 = 4194304;
    Interface31 anInterface31_9019;
    Class114_Sub1 aClass114_Sub1_9020;
    Class114_Sub1 aClass114_Sub1_9021;
    boolean aBool9022;
    Class348 aClass348_9023;
    Class305 aClass305_9024;
    Class305[] aClass305Array9025;
    public ByteBuffer aByteBuffer9026;
    Class301 aClass301_9027;
    static Class403 aClass403_9028;
    Class285 aClass285_9029;
    protected boolean aBool9030;
    protected Class340[] aClass340Array9031;
    Class305_Sub1_Sub2 aClass305_Sub1_Sub2_9032;
    protected Class403[] aClass403Array9033;
    protected int anInt9034;
    static final int anInt9035 = 2;
    static final int anInt9036 = 3;
    Class299 aClass299_9037;
    Class314[] aClass314Array9038;
    Class136_Sub2 aClass136_Sub2_9039;
    boolean aBool9040;
    static Object anObject9041 = new Object();
    int anInt9042;
    float aFloat9043;
    protected boolean aBool9044;
    public Class403 aClass403_9045;
    protected int anInt9046;
    protected int anInt9047;
    protected int anInt9048;
    protected float aFloat9049;
    protected float aFloat9050;
    Class400 aClass400_9051;
    Class396 aClass396_9052;
    protected Class337 aClass337_9053;
    protected boolean aBool9054;
    public int anInt9055;
    protected byte aByte9056;
    public int anInt9057;
    public int anInt9058;
    Class322 aClass322_9059;
    boolean aBool9060;
    boolean aBool9061;
    protected int anInt9062;
    public int anInt9063;
    float[] aFloatArray9064;
    public boolean aBool9065;
    protected boolean aBool9066;
    Class325 aClass325_9067;
    protected boolean aBool9068;
    protected boolean aBool9069;
    public boolean aBool9070;
    protected boolean aBool9071;
    protected boolean aBool9072;
    Class289 aClass289_9073;
    Interface33 anInterface33_9074;
    Interface33 anInterface33_9075;
    Class656 aClass656_9076 = new Class656();
    Class325 aClass325_9077;
    protected boolean aBool9078;
    Class325 aClass325_9079;
    protected boolean aBool9080;
    protected Class403 aClass403_9081;
    Interface39 anInterface39_9082;
    Class134_Sub3[] aClass134_Sub3Array9083;
    Class134_Sub3[] aClass134_Sub3Array9084;
    Class403 aClass403_9085;
    Class400 aClass400_9086;
    protected boolean aBool9087;
    
    public final int[] method2150() {
	return null;
    }
    
    public void method8237(Interface30 interface30) {
	((Class151_Sub2) this).aClass39_8911.method825(interface30,
						       -2135852507);
    }
    
    public abstract void method8238(Class403 class403);
    
    abstract void method8239();
    
    public final void method2231(int[] is) {
	is[0] = anInt8974;
	is[1] = anInt8943;
	is[2] = anInt8975;
	is[3] = anInt8928;
    }
    
    public abstract boolean method8240(boolean bool);
    
    final boolean method8241() {
	return aBool8921;
    }
    
    public void method8242(int i) {
	if (i > ((Class151_Sub2) this).anInt8927) {
	    ((Class151_Sub2) this).anInt8927 = i;
	    aByteBuffer9026
		= ByteBuffer.allocateDirect(((Class151_Sub2) this).anInt8927);
	    aByteBuffer9026.order(ByteOrder.nativeOrder());
	    aLong8955
		= DirectBufferHelper.getDirectBufferAddress(aByteBuffer9026);
	}
    }
    
    ByteBuffer method8243(int i) {
	ByteBuffer bytebuffer = ByteBuffer.allocateDirect(i);
	bytebuffer.order(ByteOrder.nativeOrder());
	return bytebuffer;
    }
    
    long method8244(ByteBuffer bytebuffer) {
	return DirectBufferHelper.getDirectBufferAddress(bytebuffer);
    }
    
    public abstract Class229 method8245(String string);
    
    byte[] method8246(String string, String string_0_) {
	return ((Class151_Sub2) this).aClass411_8920
		   .method5005(string, string_0_, (short) -28500);
    }
    
    public abstract void method8247(Class403 class403, Class403 class403_1_,
				    Class403 class403_2_);
    
    public static void method8248() throws Exception_Sub5 {
	Class637_Sub18.method9766((byte) 79).method334("jaclib", -1989273142);
    }
    
    Class151_Sub2(Class140 class140, Interface19 interface19,
		  Interface41 interface41, Interface44 interface44,
		  Interface43 interface43, Class411 class411, int i,
		  int i_3_) {
	super(class140, interface19, interface41, interface44, interface43);
	((Class151_Sub2) this).aClass400_8934 = new Class400();
	((Class151_Sub2) this).aClass403_8910 = new Class403();
	((Class151_Sub2) this).aClass400_8936 = new Class400();
	((Class151_Sub2) this).aClass400_9051 = new Class400();
	aClass403_8938 = new Class403();
	((Class151_Sub2) this).aClass403_8939 = new Class403();
	((Class151_Sub2) this).aClass403_8940 = new Class403();
	((Class151_Sub2) this).aClass400_8989 = new Class400();
	((Class151_Sub2) this).aClass403_8942 = new Class403();
	((Class151_Sub2) this).aClass400_8993 = new Class400();
	aClass403_9081 = new Class403();
	((Class151_Sub2) this).aClass403_8946 = new Class403();
	((Class151_Sub2) this).aClass396_9052 = new Class396();
	((Class151_Sub2) this).aFloatArray9064 = new float[4];
	((Class151_Sub2) this).aBool8949 = false;
	((Class151_Sub2) this).aClass316_8948 = Class316.aClass316_3478;
	((Class151_Sub2) this).aBool8951 = false;
	((Class151_Sub2) this).aClass403_8944 = new Class403();
	((Class151_Sub2) this).aClass403_8953 = new Class403();
	((Class151_Sub2) this).aBool8967 = false;
	((Class151_Sub2) this).aClass403_8956 = new Class403();
	((Class151_Sub2) this).aClass403_8991 = new Class403();
	((Class151_Sub2) this).aClass403_8957
	    = ((Class151_Sub2) this).aClass403_8991;
	aClass403_9045 = new Class403();
	((Class151_Sub2) this).aClass403_8959 = new Class403();
	aClass403_8960 = new Class403();
	((Class151_Sub2) this).aFloatArrayArray8961 = new float[6][4];
	aFloat8966 = 0.0F;
	aFloat9004 = 1.0F;
	((Class151_Sub2) this).aFloat8968 = 0.0F;
	((Class151_Sub2) this).aFloat8969 = 1.0F;
	aFloat8988 = 50.0F;
	aFloat8971 = 3584.0F;
	anInt8943 = 0;
	anInt8928 = 0;
	anInt8974 = 0;
	anInt8975 = 0;
	((Class151_Sub2) this).anInt8976 = 0;
	((Class151_Sub2) this).anInt8977 = 0;
	((Class151_Sub2) this).anInt8978 = 0;
	((Class151_Sub2) this).anInt8950 = 0;
	anInt8981 = 0;
	anInt9002 = 0;
	anInt9062 = 0;
	anInt8983 = 0;
	anInt8984 = 0;
	anInt8995 = 0;
	aBool8973 = true;
	aBool9013 = false;
	aBool8924 = false;
	aBool8987 = false;
	aBool8990 = true;
	aBool9030 = false;
	aFloatArray8992 = new float[] { 0.0F, 0.0F, 1.0F, 0.0F };
	aFloatArray9005 = new float[] { 0.0F, 0.0F, -1.0F, 0.0F };
	((Class151_Sub2) this).aFloatArray8994
	    = new float[] { 0.0F, 0.0F, 1.0F, 0.0F };
	((Class151_Sub2) this).aFloatArray8970
	    = new float[] { 0.0F, 0.0F, 1.0F, 0.0F };
	((Class151_Sub2) this).anInt8996 = 16777215;
	aFloat8997 = 1.0F;
	aFloat8998 = 1.0F;
	aFloat8999 = 1.0F;
	aFloat9000 = 1.0F;
	aFloat9001 = -1.0F;
	aFloat8986 = -1.0F;
	((Class151_Sub2) this).anInt9006 = 8;
	((Class151_Sub2) this).anInt9007 = 3;
	anInt9010 = 0;
	((Class151_Sub2) this).aBool9022 = false;
	((Class151_Sub2) this).aClass305Array9025 = new Class305[16];
	((Class151_Sub2) this).aClass314Array9038 = new Class314[4];
	((Class151_Sub2) this).aBool9061 = false;
	aBool9080 = true;
	anInt9046 = -1;
	anInt9047 = -1;
	anInt9048 = 0;
	((Class151_Sub2) this).anInt8952 = 1;
	anInt8937 = -1;
	aClass337_9053 = Class337.aClass337_3618;
	aBool9054 = true;
	aBool8972 = true;
	aByte9056 = (byte) 0;
	((Class151_Sub2) this).aBool9060 = false;
	new Stream();
	((Class151_Sub2) this).aClass134_Sub3Array9083 = new Class134_Sub3[8];
	((Class151_Sub2) this).aClass134_Sub3Array9084 = new Class134_Sub3[8];
	((Class151_Sub2) this).aClass403_9085 = new Class403();
	((Class151_Sub2) this).aClass400_9086 = new Class400();
	try {
	    ((Class151_Sub2) this).aClass411_8920 = class411;
	    anInt9057 = i;
	    ((Class151_Sub2) this).anInt8985 = i_3_;
	    Class213.method3107(false, true, (byte) 0);
	    if (anInterface19_1837 != null)
		((Class151_Sub2) this).aClass307_9017
		    = new Class307(this, anInterface19_1837);
	    else
		((Class151_Sub2) this).aClass307_9017 = null;
	    if (((Class151_Sub2) this).anInt8985 == 0)
		((Class151_Sub2) this).anIntArray8922
		    = Class593.anIntArray7884;
	    else
		((Class151_Sub2) this).anIntArray8922
		    = Class593.anIntArray7886;
	    try {
		Field field
		    = sun.misc.Unsafe.class.getDeclaredField("theUnsafe");
		field.setAccessible(true);
		anUnsafe8958 = (Unsafe) field.get(null);
	    } catch (Exception exception) {
		/* empty */
	    }
	    method8242(4194304);
	} catch (Throwable throwable) {
	    throwable.printStackTrace();
	    method2078(-1742699728);
	    if (throwable instanceof OutOfMemoryError)
		throw (OutOfMemoryError) throwable;
	    throw new RuntimeException("");
	}
	method1992(method2062(131072));
    }
    
    public final void method8249() {
	if (((Class151_Sub2) this).anInt8918 != 2) {
	    method8369();
	    method8338(false);
	    method8292(false);
	    method8288(false);
	    method8404(false);
	    method8348(1);
	    method8278((byte) 0);
	    ((Class151_Sub2) this).anInt8918 = 2;
	}
    }
    
    final void method8250() {
	((Class151_Sub2) this).aClass289_9073 = new Class289(this);
	aBool8921 = false;
	try {
	    ((Class151_Sub2) this).aClass299_9037 = new Class299_Sub1(this);
	    ((Class151_Sub2) this).aClass294_8931 = new Class294_Sub1(this);
	    ((Class151_Sub2) this).aClass301_9027 = new Class301_Sub2(this);
	    ((Class151_Sub2) this).aClass285_9029 = new Class285_Sub1(this);
	    ((Class151_Sub2) this).aClass305_Sub1_Sub1_8930
		= new Class305_Sub1_Sub1(this,
					 ((Class151_Sub2) this).aClass289_9073,
					 false);
	    ((Class151_Sub2) this).aClass305_Sub1_Sub1_8926
		= new Class305_Sub1_Sub1(this,
					 ((Class151_Sub2) this).aClass289_9073,
					 true);
	    ((Class151_Sub2) this).aClass305_Sub1_Sub2_9032
		= new Class305_Sub1_Sub2(this, (((Class151_Sub2) this)
						.aClass289_9073));
	} catch (Exception exception) {
	    exception.printStackTrace();
	    ((Class151_Sub2) this).aClass299_9037 = new Class299_Sub2(this);
	    ((Class151_Sub2) this).aClass294_8931 = new Class294_Sub2(this);
	    ((Class151_Sub2) this).aClass301_9027 = new Class301_Sub1(this);
	    ((Class151_Sub2) this).aClass285_9029 = new Class285_Sub2(this);
	    ((Class151_Sub2) this).aClass305_Sub1_Sub1_8930 = null;
	    ((Class151_Sub2) this).aClass305_Sub1_Sub1_8926 = null;
	    ((Class151_Sub2) this).aClass305_Sub1_Sub2_9032 = null;
	    aBool8921 = true;
	}
	if (!aBool8921) {
	    int i;
	    int i_4_;
	    if (aClass144_1857 != null) {
		i_4_ = aClass144_1857.method1943();
		i = aClass144_1857.method1944();
	    } else {
		i = 0;
		i_4_ = 0;
	    }
	    ((Class151_Sub2) this).aClass317_8947
		= new Class317(this, i_4_, i);
	    ((Class151_Sub2) this).aClass314Array9038[3]
		= new Class314_Sub1(this);
	    ((Class151_Sub2) this).aClass314Array9038[1]
		= new Class314_Sub2(this);
	    ((Class151_Sub2) this).aClass314Array9038[2]
		= new Class314_Sub3(this);
	    if (((Class151_Sub2) this).aClass314Array9038[3].method4117())
		((Class151_Sub2) this).aClass317_8947
		    .method4159(((Class151_Sub2) this).aClass314Array9038[3]);
	    ((Class151_Sub2) this).aClass317_8947
		.method4159(((Class151_Sub2) this).aClass314Array9038[1]);
	    ((Class151_Sub2) this).aClass317_8947
		.method4159(((Class151_Sub2) this).aClass314Array9038[2]);
	    method8461();
	    method8263();
	}
	if (((Class151_Sub2) this).aClass305_9024 != null) {
	    ((Class151_Sub2) this).aClass305_9024.method4068();
	    ((Class151_Sub2) this).aClass305_9024 = null;
	}
	method8388();
    }
    
    void method8251() {
	method8334(7);
	method8252();
    }
    
    final void method8252() {
	method8295();
	method8363();
	method8294();
	method8300();
	method8297();
	method8264();
	method8299();
	method8290();
	method8419();
	method8441();
	method8343();
	method8337();
	method8357();
	method8335();
	for (int i = anInt9063 - 1; i >= 0; i--) {
	    method8313(i);
	    method8287();
	    method8330();
	    method8324();
	}
	method8339();
	method8326();
    }
    
    void method8253() {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4166();
	if (((Class151_Sub2) this).anInterface33_9074 != null)
	    ((Class151_Sub2) this).anInterface33_9074.method80();
	if (((Class151_Sub2) this).anInterface33_8945 != null)
	    ((Class151_Sub2) this).anInterface33_8945.method80();
	if (((Class151_Sub2) this).anInterface33_9075 != null)
	    ((Class151_Sub2) this).anInterface33_9075.method80();
	for (int i = 0; i < 8; i++) {
	    if (((Class151_Sub2) this).aClass134_Sub3Array9084[i] != null)
		((Class151_Sub2) this).aClass134_Sub3Array9084[i].method8730();
	}
	if (((Class151_Sub2) this).aClass322_9059 != null)
	    ((Class151_Sub2) this).aClass322_9059.method4290();
	if (((Class151_Sub2) this).anInterface39_9082 != null)
	    ((Class151_Sub2) this).anInterface39_9082.method80();
	if (((Class151_Sub2) this).aClass348_9023 != null) {
	    ((Class151_Sub2) this).aClass348_9023.method4402();
	    ((Class151_Sub2) this).aClass348_9023 = null;
	}
    }
    
    public final void method2267(Class403 class403) {
	((Class151_Sub2) this).aClass403_8956.method4864(class403);
	method8274();
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    method8286();
    }
    
    final void method8254() {
	((Class151_Sub2) this).anInterface33_8945 = method8289(true);
	((Class151_Sub2) this).anInterface33_8945.method216(24, 12);
	((Class151_Sub2) this).aClass325_9067
	    = method8342(new Class311[]
			 { new Class311(Class324.aClass324_3561) });
    }
    
    final void method8255() {
	((Class151_Sub2) this).anInterface33_9075 = method8289(false);
	((Class151_Sub2) this).anInterface33_9075.method216(3096, 12);
	aByteBuffer9026.clear();
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	for (int i = 0; i <= 256; i++) {
	    double d = (double) (i * 2) * 3.141592653589793 / 256.0;
	    float f = (float) Math.cos(d);
	    float f_5_ = (float) Math.sin(d);
	    aByteBuffer9026.putFloat(f_5_);
	    aByteBuffer9026.putFloat(f);
	    aByteBuffer9026.putFloat(0.0F);
	}
	((Class151_Sub2) this).anInterface33_9075
	    .method209(0, aByteBuffer9026.position(), aLong8955);
    }
    
    boolean method8256(float f, float f_6_, float f_7_, float f_8_, float f_9_,
		       float f_10_) {
	aByteBuffer9026.clear();
	aByteBuffer9026.putFloat(f);
	aByteBuffer9026.putFloat(f_6_);
	aByteBuffer9026.putFloat(f_7_);
	aByteBuffer9026.putFloat(f_8_);
	aByteBuffer9026.putFloat(f_9_);
	aByteBuffer9026.putFloat(f_10_);
	return ((Class151_Sub2) this).anInterface33_8945
		   .method209(0, aByteBuffer9026.position(), aLong8955);
    }
    
    final Interface39 method8257(int i) {
	if (((Class151_Sub2) this).anInterface39_9082.method5() < i * 2)
	    ((Class151_Sub2) this).anInterface39_9082.method276(i);
	return ((Class151_Sub2) this).anInterface39_9082;
    }
    
    public final Class134 method2247(Class139 class139, int i, int i_11_,
				     int i_12_, int i_13_) {
	return new Class134_Sub3(this, class139, i, i_12_, i_13_, i_11_);
    }
    
    public final boolean method2189() {
	return true;
    }
    
    public final boolean method2033() {
	return ((Class151_Sub2) this).aClass314Array9038[3] != null;
    }
    
    public final boolean method2000() {
	return true;
    }
    
    abstract void method8258();
    
    abstract void method8259();
    
    public final boolean method2003() {
	return true;
    }
    
    final void method2274(int i, int i_14_, int i_15_, int i_16_, int i_17_) {
	method2093(i, i_14_, i, i_14_ + i_15_, i_16_, i_17_);
    }
    
    public final boolean method2001() {
	return aBool9068;
    }
    
    public void method2298(float f, float f_18_, float f_19_, float f_20_,
			   float f_21_) {
	Class314_Sub2.aFloat9907 = f;
	Class314_Sub2.aFloat9905 = f_18_;
	Class314_Sub2.aFloat9906 = f_19_;
	Class314_Sub2.aFloat9909 = f_20_;
	Class314_Sub2.aFloat9908 = f_21_;
    }
    
    public abstract String method2005();
    
    public final int[] method2006() {
	return null;
    }
    
    public void method1993(int i) {
	if (((Class151_Sub2) this).aClass307_9017 != null)
	    ((Class151_Sub2) this).aClass307_9017.method4090();
	anInt9058 = i & 0x7fffffff;
    }
    
    final void method8260() {
	if (!((Class151_Sub2) this).aBool8967)
	    ((Class151_Sub2) this).aBool8967 = true;
    }
    
    public void method2070() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4412();
    }
    
    public void method2071() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4407();
    }
    
    public void method2134() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4420();
    }
    
    void method8261() {
	method8347();
    }
    
    public final void method2098(int i, int i_22_, int i_23_, int i_24_) {
	if (((Class151_Sub2) this).aClass317_8947 != null) {
	    for (int i_25_ = 0;
		 i_25_ < ((Class151_Sub2) this).aClass314Array9038.length;
		 i_25_++) {
		if (((Class151_Sub2) this).aClass314Array9038[i_25_] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i_25_]
			   .method4128()
		    && !((Class151_Sub2) this).aClass314Array9038[i_25_]
			    .method4116()) {
		    if (!((Class151_Sub2) this).aClass317_8947
			     .method4163(i, i_22_, i_23_, i_24_)) {
			((Class151_Sub2) this).aClass317_8947.method4166();
			((Class151_Sub2) this).aClass317_8947 = null;
		    }
		    break;
		}
	    }
	}
    }
    
    public final void method2099(int i, int i_26_) {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4164(i, i_26_);
    }
    
    public final boolean method2100() {
	return (((Class151_Sub2) this).aClass317_8947 != null
		&& (((Class317) ((Class151_Sub2) this).aClass317_8947)
		    .aBool3496));
    }
    
    final void method8262() {
	((Class151_Sub2) this).aBool8967 = false;
	method8285();
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    method8286();
    }
    
    public boolean method2240() {
	return (((Class151_Sub2) this).aClass314Array9038[1] != null
		&& ((Class151_Sub2) this).aClass314Array9038[1].method4128());
    }
    
    public void method2102(float f, float f_27_, float f_28_, float f_29_,
			   float f_30_) {
	Class314_Sub2.aFloat9907 = f;
	Class314_Sub2.aFloat9905 = f_27_;
	Class314_Sub2.aFloat9906 = f_28_;
	Class314_Sub2.aFloat9909 = f_29_;
	Class314_Sub2.aFloat9908 = f_30_;
    }
    
    public Class149 method2319(int[] is) {
	return new Class149_Sub2(this, is);
    }
    
    boolean method8263() {
	if (((Class151_Sub2) this).aClass314Array9038[2] != null
	    && !((Class151_Sub2) this).aClass314Array9038[2].method4128()) {
	    boolean bool = (((Class151_Sub2) this).aClass317_8947.method4159
			    (((Class151_Sub2) this).aClass314Array9038[2]));
	    if (bool)
		((Class151_Sub2) this).aClass307_9017.method4086();
	    return bool;
	}
	return false;
    }
    
    public void method2105(Class149 class149, float f, Class149 class149_31_,
			   float f_32_, Class149 class149_33_, float f_34_) {
	int i = 0;
	if (class149_33_ == null && f_34_ > 0.0F)
	    f_34_ = 0.0F;
	if (class149_31_ == null && f_32_ > 0.0F) {
	    class149_31_ = class149_33_;
	    class149_33_ = null;
	    f_32_ = f_34_;
	    f_34_ = 0.0F;
	}
	if (class149 == null && f > 0.0F) {
	    class149 = class149_31_;
	    class149_31_ = class149_33_;
	    class149_33_ = null;
	    f = f_32_;
	    f_32_ = f_34_;
	    f_34_ = 0.0F;
	}
	Class314_Sub3.aClass149_Sub2Array9937[0] = (Class149_Sub2) class149;
	Class314_Sub3.aFloatArray9945[0] = f;
	if (f > 0.0F)
	    i++;
	Class314_Sub3.aClass149_Sub2Array9937[1]
	    = (Class149_Sub2) class149_31_;
	Class314_Sub3.aFloatArray9945[1] = f_32_;
	if (f_32_ > 0.0F)
	    i++;
	Class314_Sub3.aClass149_Sub2Array9937[2]
	    = (Class149_Sub2) class149_33_;
	Class314_Sub3.aFloatArray9945[2] = f_34_;
	if (f_34_ > 0.0F)
	    i++;
	Class314_Sub3.anInt9936 = i;
	Class314_Sub3.aFloat9935 = 1.0F - (f + f_32_ + f_34_);
    }
    
    public final boolean method2398() {
	if (((Class151_Sub2) this).aClass314Array9038[3] != null
	    && !((Class151_Sub2) this).aClass314Array9038[3].method4128()) {
	    boolean bool = (((Class151_Sub2) this).aClass317_8947.method4159
			    (((Class151_Sub2) this).aClass314Array9038[3]));
	    if (bool)
		((Class151_Sub2) this).aClass307_9017.method4086();
	    return bool;
	}
	return false;
    }
    
    abstract void method8264();
    
    public final boolean method2107() {
	return (((Class151_Sub2) this).aClass314Array9038[3] != null
		&& ((Class151_Sub2) this).aClass314Array9038[3].method4128());
    }
    
    final void method2109(float f, float f_35_, float f_36_, float f_37_,
			  float f_38_, float f_39_) {
	Class314_Sub1.aFloat9748 = f;
	Class314_Sub1.aFloat9736 = f_35_;
	Class314_Sub1.aFloat9739 = f_36_;
	Class314_Sub1.aFloat9735 = f_39_;
    }
    
    public final Class487_Sub26 method2062(int i) {
	Class487_Sub26_Sub1 class487_sub26_sub1 = new Class487_Sub26_Sub1(i);
	((Class151_Sub2) this).aClass656_9076.method7791(class487_sub26_sub1,
							 (byte) 3);
	return class487_sub26_sub1;
    }
    
    public final void method1992(Class487_Sub26 class487_sub26) {
	((Class151_Sub2) this).aNativeHeap8929
	    = (((Class487_Sub26_Sub1) (Class487_Sub26_Sub1) class487_sub26)
	       .aNativeHeap11283);
    }
    
    public final NativeHeapBuffer method8265(int i, boolean bool) {
	return ((Class151_Sub2) this).aNativeHeap8929.method1209(i, bool);
    }
    
    abstract void method8266(int i, Class338 class338, boolean bool);
    
    public final int method2353() {
	return anInt8932 + anInt9055 + anInt8933;
    }
    
    public abstract Class229 method8267(String string);
    
    public final Class114 method2090(Class153 class153, boolean bool) {
	Class114 class114;
	if (class153.method2474() != 0 && class153.method2441() != 0) {
	    int[] is = class153.method2455(false);
	    class114 = method2067(is, 0, class153.method2474(),
				  class153.method2474(), class153.method2441(),
				  16711680);
	} else
	    class114 = method2067(new int[] { 0 }, 0, 1, 1, 1, 16711680);
	class114.method1553(class153.method2442(), class153.method2444(),
			    class153.method2473(), class153.method2475());
	return class114;
    }
    
    public void method2382(boolean bool) {
	((Class151_Sub2) this).aBool9022 = bool;
    }
    
    public final Class114 method2154(int i, int i_40_, int i_41_, int i_42_,
				     boolean bool) {
	Class114_Sub1 class114_sub1
	    = new Class114_Sub1(this, i_41_, i_42_, bool, false);
	class114_sub1.method1499(0, 0, i_41_, i_42_, i, i_40_);
	return class114_sub1;
    }
    
    public final Class152 method2075(Class4 class4, Class153[] class153s,
				     boolean bool) {
	return new Class152_Sub3(this, class4, class153s, bool);
    }
    
    public final Class131 method2146(int i, int i_43_, int[] is,
				     int[] is_44_) {
	return Class131_Sub2.method8128(this, i, i_43_, is, is_44_);
    }
    
    public final void method2159(Class136 class136) {
	((Class151_Sub2) this).aClass136_Sub2_9039 = (Class136_Sub2) class136;
    }
    
    void method2233() {
	if (!((Class151_Sub2) this).aBool9060) {
	    method8253();
	    ((Class151_Sub2) this).aClass307_9017.method4086();
	    for (Class487 class487 = ((Class151_Sub2) this).aClass656_9076
					 .method7795((short) 8919);
		 class487 != null;
		 class487 = ((Class151_Sub2) this).aClass656_9076
				.method7798((byte) -118))
		((Class487_Sub26_Sub1) class487).method10250();
	    Class223.method3235(false, true, -434933011);
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass305Array9025.length; i++) {
		if (((Class151_Sub2) this).aClass305Array9025[i] != null) {
		    ((Class151_Sub2) this).aClass305Array9025[i].method4072();
		    ((Class151_Sub2) this).aClass305Array9025[i] = null;
		}
	    }
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass314Array9038.length; i++) {
		if (((Class151_Sub2) this).aClass314Array9038[i] != null) {
		    ((Class151_Sub2) this).aClass314Array9038[i].method4130();
		    ((Class151_Sub2) this).aClass314Array9038[i] = null;
		}
	    }
	    method8336();
	    method1993(0);
	    ((Class151_Sub2) this).aBool9060 = true;
	}
    }
    
    public final int method2337(int i, int i_45_) {
	return i | i_45_;
    }
    
    public final boolean method2147() {
	return false;
    }
    
    public final Class403 method2076() {
	return ((Class151_Sub2) this).aClass403_9085;
    }
    
    public final Class400 method2077() {
	return ((Class151_Sub2) this).aClass400_9086;
    }
    
    public final Class136 method2095(int i) {
	return new Class136_Sub2_Sub1(this, i);
    }
    
    public final void method2097(Class136 class136) {
	((Class151_Sub2) this).aClass136_Sub2_9039 = (Class136_Sub2) class136;
    }
    
    public final Interface37 method8268() {
	return (((Class151_Sub2) this).aClass136_Sub2_9039 != null
		? ((Class151_Sub2) this).aClass136_Sub2_9039.method8760()
		: null);
    }
    
    abstract void method8269();
    
    abstract Interface31 method8270(Class116 class116, int i, int i_46_,
				    boolean bool, byte[] is, int i_47_,
				    int i_48_);
    
    public void method2193(int[] is) {
	is[0] = ((Class151_Sub2) this).anInt8976;
	is[1] = ((Class151_Sub2) this).anInt8977;
	is[2] = ((Class151_Sub2) this).anInt8978;
	is[3] = ((Class151_Sub2) this).anInt8950;
    }
    
    public void method2174(float f, float f_49_) {
	((Class151_Sub2) this).aFloat8968 = f;
	((Class151_Sub2) this).aFloat8969 = f_49_;
	method8471();
    }
    
    public final void method2040(int[] is) {
	is[0] = anInt8974;
	is[1] = anInt8943;
	is[2] = anInt8975;
	is[3] = anInt8928;
    }
    
    public final void method2036() {
	if (aClass144_1857 != null) {
	    anInt8943 = 0;
	    anInt8974 = 0;
	    anInt8975 = aClass144_1857.method1943();
	    anInt8928 = aClass144_1857.method1944();
	} else {
	    anInt8928 = 0;
	    anInt8975 = 0;
	    anInt8943 = 0;
	    anInt8974 = 0;
	}
	if (aBool9087) {
	    aBool9087 = false;
	    method8272();
	}
    }
    
    public final void method2381(int i, int i_50_, int i_51_, int i_52_) {
	int i_53_;
	int i_54_;
	if (aClass144_1857 != null) {
	    i_54_ = aClass144_1857.method1943();
	    i_53_ = aClass144_1857.method1944();
	} else {
	    i_53_ = 0;
	    i_54_ = 0;
	}
	if (i <= 0 && i_51_ >= i_54_ - 1 && i_50_ <= 0 && i_52_ >= i_53_ - 1)
	    method2036();
	else {
	    anInt8974 = i >= 0 ? i : 0;
	    anInt8975 = i_51_ <= i_54_ ? i_51_ : i_54_;
	    anInt8943 = i_50_ >= 0 ? i_50_ : 0;
	    anInt8928 = i_52_ <= i_53_ ? i_52_ : i_53_;
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2038(int i, int i_55_, int i_56_, int i_57_) {
	int i_58_;
	int i_59_;
	if (aClass144_1857 != null) {
	    i_59_ = aClass144_1857.method1943();
	    i_58_ = aClass144_1857.method1944();
	} else {
	    i_58_ = 0;
	    i_59_ = 0;
	}
	i = i >= 0 ? i : 0;
	i_56_ = i_56_ <= i_59_ ? i_56_ : i_59_;
	i_55_ = i_55_ >= 0 ? i_55_ : 0;
	i_57_ = i_57_ <= i_58_ ? i_57_ : i_58_;
	boolean bool = false;
	if (anInt8974 < i) {
	    anInt8974 = i;
	    bool = true;
	}
	if (anInt8975 > i_56_) {
	    anInt8975 = i_56_;
	    bool = true;
	}
	if (anInt8943 < i_55_) {
	    anInt8943 = i_55_;
	    bool = true;
	}
	if (anInt8928 > i_57_) {
	    anInt8928 = i_57_;
	    bool = true;
	}
	if (bool) {
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2314() {
	((Class151_Sub2) this).aBool9040 = false;
    }
    
    abstract void method8271();
    
    abstract void method8272();
    
    final Class403 method8273() {
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    return aClass403_8938;
	return aClass403_9028;
    }
    
    public void method2300(float f, float f_60_, float f_61_, float f_62_,
			   float f_63_) {
	Class314_Sub2.aFloat9907 = f;
	Class314_Sub2.aFloat9905 = f_60_;
	Class314_Sub2.aFloat9906 = f_61_;
	Class314_Sub2.aFloat9909 = f_62_;
	Class314_Sub2.aFloat9908 = f_63_;
    }
    
    public final void method2392(Class400 class400) {
	((Class151_Sub2) this).aClass400_8936 = class400;
	aClass403_8938.method4865(((Class151_Sub2) this).aClass400_8936);
	((Class151_Sub2) this).aClass403_8940.method4864(aClass403_8938);
	((Class151_Sub2) this).aClass403_8940.method4883();
	((Class151_Sub2) this).aClass400_9051.method4807(class400);
	((Class151_Sub2) this).aClass400_9051.method4845();
	((Class151_Sub2) this).aClass403_8939
	    .method4865(((Class151_Sub2) this).aClass400_9051);
	method8274();
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    method8275();
    }
    
    public Class400 method2301() {
	return ((Class151_Sub2) this).aClass400_8936;
    }
    
    final void method8274() {
	((Class151_Sub2) this).aClass403_8959.method4864(aClass403_8938);
	((Class151_Sub2) this).aClass403_8959
	    .method4863(((Class151_Sub2) this).aClass403_8956);
	((Class151_Sub2) this).aClass403_8959
	    .method4907(((Class151_Sub2) this).aFloatArrayArray8961[0]);
	((Class151_Sub2) this).aClass403_8959
	    .method4882(((Class151_Sub2) this).aFloatArrayArray8961[1]);
	((Class151_Sub2) this).aClass403_8959
	    .method4878(((Class151_Sub2) this).aFloatArrayArray8961[2]);
	((Class151_Sub2) this).aClass403_8959
	    .method4879(((Class151_Sub2) this).aFloatArrayArray8961[3]);
	((Class151_Sub2) this).aClass403_8959
	    .method4905(((Class151_Sub2) this).aFloatArrayArray8961[4]);
	((Class151_Sub2) this).aClass403_8959
	    .method4875(((Class151_Sub2) this).aFloatArrayArray8961[5]);
	aClass403_8960.method4864(((Class151_Sub2) this).aClass403_8959);
	method8280(aClass403_8960);
    }
    
    final void method8275() {
	((Class151_Sub2) this).aBool8949 = false;
    }
    
    Class403 method8276() {
	return ((Class151_Sub2) this).aClass403_8910;
    }
    
    void method8277() {
	method8334(7);
	method8252();
    }
    
    final void method8278(byte i) {
	if (aByte9056 != i) {
	    aByte9056 = i;
	    if (i == 0) {
		method8332(0);
		method8348(1);
	    } else {
		method8332(3);
		method8348(3);
	    }
	    method8335();
	}
    }
    
    public final boolean method2144() {
	return true;
    }
    
    final Class403 method8279() {
	return aClass403_9045;
    }
    
    public abstract void method8280(Class403 class403);
    
    final void method8281() {
	if (((Class151_Sub2) this).aClass316_8948 != Class316.aClass316_3478) {
	    Class316 class316 = ((Class151_Sub2) this).aClass316_8948;
	    ((Class151_Sub2) this).aClass316_8948 = Class316.aClass316_3478;
	    if (class316 == Class316.aClass316_3476)
		method8275();
	    ((Class151_Sub2) this).aClass403_8957
		= ((Class151_Sub2) this).aClass403_8991;
	    method8286();
	    method8471();
	    ((Class151_Sub2) this).anInt8918 &= ~0xf;
	}
    }
    
    abstract void method8282();
    
    final void method8283() {
	if (((Class151_Sub2) this).aClass316_8948 != Class316.aClass316_3476) {
	    ((Class151_Sub2) this).aClass316_8948 = Class316.aClass316_3476;
	    method8275();
	    method8285();
	    ((Class151_Sub2) this).aClass403_8957
		= ((Class151_Sub2) this).aClass403_8956;
	    method8286();
	    method8471();
	    ((Class151_Sub2) this).anInt8918 &= ~0x7;
	}
    }
    
    public final Class131 method2310(int i, int i_64_, int[] is,
				     int[] is_65_) {
	return Class131_Sub2.method8128(this, i, i_64_, is, is_65_);
    }
    
    final void method8284() {
	if (!((Class151_Sub2) this).aBool8951) {
	    int i;
	    int i_66_;
	    if (aClass144_1857 != null) {
		i_66_ = aClass144_1857.method1943();
		i = aClass144_1857.method1944();
	    } else {
		i = 0;
		i_66_ = 0;
	    }
	    Class403 class403 = ((Class151_Sub2) this).aClass403_8944;
	    if (i_66_ != 0 && i != 0)
		class403.method4870(0.0F, (float) i_66_, 0.0F, (float) i,
				    -1.0F, 1.0F);
	    else
		class403.method4860();
	    ((Class151_Sub2) this).aClass403_8953.method4864(class403);
	    method8280(((Class151_Sub2) this).aClass403_8953);
	    ((Class151_Sub2) this).aBool8951 = true;
	}
    }
    
    final void method8285() {
	if (!((Class151_Sub2) this).aBool8967)
	    ((Class151_Sub2) this).aBool8967 = true;
    }
    
    final void method8286() {
	aClass403_9045.method4864(((Class151_Sub2) this).aClass403_8957);
	method8280(aClass403_9045);
	aFloat8971 = ((aClass403_9045.aFloatArray4592[14]
		       - aClass403_9045.aFloatArray4592[15])
		      / (aClass403_9045.aFloatArray4592[11]
			 - aClass403_9045.aFloatArray4592[10]));
	aFloat8988 = (-aClass403_9045.aFloatArray4592[14]
		      / aClass403_9045.aFloatArray4592[10]);
	method8361();
    }
    
    abstract void method8287();
    
    final void method8288(boolean bool) {
	if (bool != aBool8924) {
	    aBool8924 = bool;
	    method8290();
	    ((Class151_Sub2) this).anInt8918 &= ~0xf;
	}
    }
    
    abstract Interface33 method8289(boolean bool);
    
    abstract void method8290();
    
    public void method2184(int[] is) {
	is[0] = ((Class151_Sub2) this).anInt8976;
	is[1] = ((Class151_Sub2) this).anInt8977;
	is[2] = ((Class151_Sub2) this).anInt8978;
	is[3] = ((Class151_Sub2) this).anInt8950;
    }
    
    public void method2114(float f, float f_67_, float f_68_, float[] fs) {
	float f_69_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * f_67_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * f_68_));
	float f_70_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * f_67_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * f_68_));
	float f_71_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * f_67_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * f_68_));
	float f_72_ = (aClass403_8938.aFloatArray4592[14]
		       + aClass403_8938.aFloatArray4592[2] * f
		       + aClass403_8938.aFloatArray4592[6] * f_67_
		       + aClass403_8938.aFloatArray4592[10] * f_68_);
	fs[0] = (((Class151_Sub2) this).aFloat8962
		 + ((Class151_Sub2) this).aFloat8963 * f_70_ / f_69_);
	fs[1] = (((Class151_Sub2) this).aFloat9043
		 + ((Class151_Sub2) this).aFloat8979 * f_71_ / f_69_);
	fs[2] = f_72_;
    }
    
    public void method2113(float f, float f_73_, float f_74_, float[] fs) {
	float f_75_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		  * f_73_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		  * f_74_));
	float f_76_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * f_73_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * f_74_));
	if (f_75_ < -f_76_ || f_75_ > f_76_) {
	    float[] fs_77_ = fs;
	    float[] fs_78_ = fs;
	    fs[2] = Float.NaN;
	    fs_78_[1] = Float.NaN;
	    fs_77_[0] = Float.NaN;
	} else {
	    float f_79_
		= (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		      * f)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		      * f_73_)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		      * f_74_));
	    if (f_79_ < -f_76_ || f_79_ > f_76_) {
		float[] fs_80_ = fs;
		float[] fs_81_ = fs;
		fs[2] = Float.NaN;
		fs_81_[1] = Float.NaN;
		fs_80_[0] = Float.NaN;
	    } else {
		float f_82_ = ((((Class151_Sub2) this).aClass403_8959
				.aFloatArray4592[13])
			       + (((Class151_Sub2) this).aClass403_8959
				  .aFloatArray4592[1]) * f
			       + (((Class151_Sub2) this).aClass403_8959
				  .aFloatArray4592[5]) * f_73_
			       + (((Class151_Sub2) this).aClass403_8959
				  .aFloatArray4592[9]) * f_74_);
		if (f_82_ < -f_76_ || f_82_ > f_76_) {
		    float[] fs_83_ = fs;
		    float[] fs_84_ = fs;
		    fs[2] = Float.NaN;
		    fs_84_[1] = Float.NaN;
		    fs_83_[0] = Float.NaN;
		} else {
		    float f_85_
			= (aClass403_8938.aFloatArray4592[14]
			   + aClass403_8938.aFloatArray4592[2] * f
			   + aClass403_8938.aFloatArray4592[6] * f_73_
			   + aClass403_8938.aFloatArray4592[10] * f_74_);
		    fs[0] = (((Class151_Sub2) this).aFloat8962
			     + (((Class151_Sub2) this).aFloat8963 * f_79_
				/ f_76_));
		    fs[1] = (((Class151_Sub2) this).aFloat9043
			     + (((Class151_Sub2) this).aFloat8979 * f_82_
				/ f_76_));
		    fs[2] = f_85_;
		}
	    }
	}
    }
    
    abstract void method8291(Interface39 interface39, Class342 class342, int i,
			     int i_86_, int i_87_, int i_88_);
    
    public void method2027(int i, int i_89_, int i_90_, int i_91_) {
	((Class151_Sub2) this).anInt8976 = i;
	((Class151_Sub2) this).anInt8977 = i_89_;
	((Class151_Sub2) this).anInt8978 = i_90_;
	((Class151_Sub2) this).anInt8950 = i_91_;
	method8471();
    }
    
    public void method2061(Class400 class400, Class150 class150,
			   Class375 class375) {
	Class403 class403 = aClass403_9081;
	class403.method4865(class400);
	class403.method4863(((Class151_Sub2) this).aClass403_8959);
	class150.method1984(class375, ((Class151_Sub2) this).aClass403_8956,
			    class403, ((Class151_Sub2) this).aFloat8962,
			    ((Class151_Sub2) this).aFloat9043,
			    ((Class151_Sub2) this).aFloat8963,
			    ((Class151_Sub2) this).aFloat8979);
    }
    
    public final int method2276() {
	return anInt8964 - 2;
    }
    
    final void method8292(boolean bool) {
	if (bool != aBool8987) {
	    aBool8987 = bool;
	    method8294();
	    ((Class151_Sub2) this).anInt8918 &= ~0x7;
	}
    }
    
    public final void method2208(int i, Class487_Sub16[] class487_sub16s) {
	for (int i_92_ = 0; i_92_ < i; i_92_++)
	    aClass487_Sub16Array9003[i_92_] = class487_sub16s[i_92_];
	anInt9008 = i;
    }
    
    public final void method2089(float f) {
	if (aFloat9000 != f) {
	    aFloat9000 = f;
	    method8295();
	    method8264();
	}
    }
    
    abstract boolean method8293(Class116 class116, Class155 class155);
    
    public final void method2091(int i) {
	((Class151_Sub2) this).anInt9007 = 0;
	for (/**/; i > 1; i >>= 1)
	    ((Class151_Sub2) this).anInt9007++;
	((Class151_Sub2) this).anInt9006
	    = 1 << ((Class151_Sub2) this).anInt9007;
    }
    
    abstract void method8294();
    
    abstract void method8295();
    
    public final int method8296() {
	return anInt9010;
    }
    
    abstract void method8297();
    
    abstract boolean method8298(Class116 class116, Class155 class155);
    
    abstract void method8299();
    
    final void method8300() {
	if (method8241())
	    method8382();
	anInt9034 = anInt9008;
    }
    
    final void method8301() {
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476) {
	    anInt8981 = ((Class151_Sub2) this).anInt8976;
	    anInt9002 = ((Class151_Sub2) this).anInt8977;
	    anInt9062 = ((Class151_Sub2) this).anInt8978;
	    anInt8983 = ((Class151_Sub2) this).anInt8950;
	    aFloat8966 = ((Class151_Sub2) this).aFloat8968;
	    aFloat9004 = ((Class151_Sub2) this).aFloat8969;
	} else {
	    anInt8981 = 0;
	    anInt9002 = 0;
	    anInt9062 = aClass144_1857.method1943();
	    anInt8983 = aClass144_1857.method1944();
	    aFloat8966 = 0.0F;
	    aFloat9004 = 1.0F;
	}
	method8326();
	((Class151_Sub2) this).aFloat8963
	    = (float) ((Class151_Sub2) this).anInt8978 / 2.0F;
	((Class151_Sub2) this).aFloat8979
	    = (float) ((Class151_Sub2) this).anInt8950 / 2.0F;
	((Class151_Sub2) this).aFloat8962
	    = ((float) ((Class151_Sub2) this).anInt8976
	       + ((Class151_Sub2) this).aFloat8963);
	((Class151_Sub2) this).aFloat9043
	    = ((float) ((Class151_Sub2) this).anInt8977
	       + ((Class151_Sub2) this).aFloat8979);
    }
    
    abstract boolean method8302(Class116 class116, Class155 class155);
    
    void method8303() {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4166();
	if (((Class151_Sub2) this).anInterface33_9074 != null)
	    ((Class151_Sub2) this).anInterface33_9074.method80();
	if (((Class151_Sub2) this).anInterface33_8945 != null)
	    ((Class151_Sub2) this).anInterface33_8945.method80();
	if (((Class151_Sub2) this).anInterface33_9075 != null)
	    ((Class151_Sub2) this).anInterface33_9075.method80();
	for (int i = 0; i < 8; i++) {
	    if (((Class151_Sub2) this).aClass134_Sub3Array9084[i] != null)
		((Class151_Sub2) this).aClass134_Sub3Array9084[i].method8730();
	}
	if (((Class151_Sub2) this).aClass322_9059 != null)
	    ((Class151_Sub2) this).aClass322_9059.method4290();
	if (((Class151_Sub2) this).anInterface39_9082 != null)
	    ((Class151_Sub2) this).anInterface39_9082.method80();
	if (((Class151_Sub2) this).aClass348_9023 != null) {
	    ((Class151_Sub2) this).aClass348_9023.method4402();
	    ((Class151_Sub2) this).aClass348_9023 = null;
	}
    }
    
    final Interface31 method8304(int i, int i_93_, boolean bool, int[] is) {
	return method8496(i, i_93_, bool, is, 0, 0);
    }
    
    final Interface31 method8305(Class116 class116, int i, int i_94_,
				 boolean bool, byte[] is) {
	return method8270(class116, i, i_94_, bool, is, 0, 0);
    }
    
    final Interface31 method8306(Class116 class116, int i, int i_95_,
				 boolean bool, float[] fs) {
	return method8422(class116, i, i_95_, bool, fs, 0, 0);
    }
    
    abstract Interface31 method8307(Class116 class116, Class155 class155,
				    int i, int i_96_);
    
    abstract void method8308();
    
    public final int method2251(int i, int i_97_) {
	return i | i_97_;
    }
    
    abstract Interface37 method8309(int i, boolean bool, int[][] is);
    
    abstract Interface29 method8310(Class116 class116, int i, int i_98_,
				    int i_99_, boolean bool, byte[] is);
    
    abstract Interface34 method8311(Class116 class116, Class155 class155,
				    int i, int i_100_);
    
    public abstract void method8312(Class403 class403, Class403 class403_101_,
				    Class403 class403_102_);
    
    public final void method8313(int i) {
	if (anInt9010 != i) {
	    anInt9010 = i;
	    method8328();
	}
    }
    
    public final void method8314(Interface40 interface40) {
	if (((Class151_Sub2) this).anInterface40Array9011[anInt9010]
	    != interface40) {
	    ((Class151_Sub2) this).anInterface40Array9011[anInt9010]
		= interface40;
	    if (interface40 != null)
		interface40.method285();
	    else
		anInterface31_8980.method285();
	    ((Class151_Sub2) this).anInt8918 &= ~0x1;
	}
    }
    
    public abstract void method8315();
    
    public final void method8316(int i) {
	switch (i) {
	case 0:
	    method8371(Class345.aClass345_3669, Class345.aClass345_3669);
	    break;
	case 1:
	    method8371(Class345.aClass345_3672, Class345.aClass345_3672);
	    break;
	case 4:
	    method8371(Class345.aClass345_3668, Class345.aClass345_3668);
	    break;
	case 2:
	    method8371(Class345.aClass345_3673, Class345.aClass345_3672);
	    break;
	case 3:
	    method8371(Class345.aClass345_3670, Class345.aClass345_3669);
	    break;
	}
    }
    
    public abstract void method8317(int i, Interface33 interface33);
    
    abstract void method8318();
    
    abstract void method8319(int i, Class338 class338, boolean bool,
			     boolean bool_103_);
    
    public final void method8320(int i, Class338 class338) {
	method8266(i, class338, false);
    }
    
    public final Class114 method2066(int[] is, int i, int i_104_, int i_105_,
				     int i_106_, boolean bool) {
	return new Class114_Sub1(this, i_105_, i_106_, is, i, i_104_);
    }
    
    public void method8321(int i) {
	if (i != anInt9016) {
	    anInt9016 = i;
	    method8339();
	}
    }
    
    public final void method2199(int i, int i_107_, int i_108_, int i_109_) {
	int i_110_;
	int i_111_;
	if (aClass144_1857 != null) {
	    i_111_ = aClass144_1857.method1943();
	    i_110_ = aClass144_1857.method1944();
	} else {
	    i_110_ = 0;
	    i_111_ = 0;
	}
	i = i >= 0 ? i : 0;
	i_108_ = i_108_ <= i_111_ ? i_108_ : i_111_;
	i_107_ = i_107_ >= 0 ? i_107_ : 0;
	i_109_ = i_109_ <= i_110_ ? i_109_ : i_110_;
	boolean bool = false;
	if (anInt8974 < i) {
	    anInt8974 = i;
	    bool = true;
	}
	if (anInt8975 > i_108_) {
	    anInt8975 = i_108_;
	    bool = true;
	}
	if (anInt8943 < i_107_) {
	    anInt8943 = i_107_;
	    bool = true;
	}
	if (anInt8928 > i_109_) {
	    anInt8928 = i_109_;
	    bool = true;
	}
	if (bool) {
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final Class403 method8322() {
	return aClass403Array9033[anInt9010];
    }
    
    public final void method8323(Class340 class340) {
	aClass340Array9031[anInt9010] = class340;
	method8325();
    }
    
    final void method8324() {
	if (aClass340Array9031[anInt9010] != Class340.aClass340_3636) {
	    aClass340Array9031[anInt9010] = Class340.aClass340_3636;
	    aClass403Array9033[anInt9010].method4860();
	    method8325();
	}
    }
    
    final void method8325() {
	method8327();
    }
    
    abstract void method8326();
    
    abstract void method8327();
    
    abstract void method8328();
    
    public abstract Class229 method8329(String string);
    
    abstract void method8330();
    
    Class138 method8331() {
	return ((Class151_Sub2) this).aClass138_9015;
    }
    
    public final void method2110(int i, Class138 class138) {
	((Class151_Sub2) this).anInt9042 = i;
	((Class151_Sub2) this).aClass138_9015 = class138;
	((Class151_Sub2) this).aBool9040 = true;
    }
    
    public final void method2111(int i, Class138 class138) {
	if (!((Class151_Sub2) this).aBool9040)
	    throw new RuntimeException("");
	((Class151_Sub2) this).anInt9042 = i;
	((Class151_Sub2) this).aClass138_9015 = class138;
	if (((Class151_Sub2) this).aBool9061) {
	    ((Class151_Sub2) this).aClass305Array9025[3].method4070();
	    ((Class151_Sub2) this).aClass305Array9025[3].method4071();
	}
    }
    
    public final void method2327() {
	((Class151_Sub2) this).aBool9040 = false;
    }
    
    public final void method2215(int i, int i_112_, int i_113_, int i_114_,
				 int i_115_, int i_116_, Class131 class131,
				 int i_117_, int i_118_) {
	/* empty */
    }
    
    final void method8332(int i) {
	if (anInt8937 != i) {
	    anInt8937 = i;
	    method8357();
	}
    }
    
    final void method8333(int i, int i_119_) {
	anInt8984 = i;
	anInt8995 = i_119_;
	method8326();
	if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			   || method8476() == Class312.aClass312_3465)) {
	    aBool9087 = true;
	    method8272();
	}
	if (aBool9087)
	    method8271();
    }
    
    abstract void method8334(int i);
    
    abstract void method8335();
    
    void method8336() {
	ArrayList arraylist
	    = ((Class151_Sub2) this).aClass39_8911.method821((byte) -97);
	Iterator iterator = arraylist.iterator();
	while (iterator.hasNext()) {
	    Interface30 interface30 = (Interface30) iterator.next();
	    interface30.method80();
	}
    }
    
    abstract void method8337();
    
    final void method8338(boolean bool) {
	if (bool != aBool9044) {
	    aBool9044 = bool;
	    method8441();
	    ((Class151_Sub2) this).anInt8918 &= ~0xf;
	}
    }
    
    public final void method2377(int i) {
	((Class151_Sub2) this).anInt9007 = 0;
	for (/**/; i > 1; i >>= 1)
	    ((Class151_Sub2) this).anInt9007++;
	((Class151_Sub2) this).anInt9006
	    = 1 << ((Class151_Sub2) this).anInt9007;
    }
    
    abstract void method8339();
    
    public boolean method2350() {
	return (((Class151_Sub2) this).aClass314Array9038[1] != null
		&& ((Class151_Sub2) this).aClass314Array9038[1].method4128());
    }
    
    public final void method2069(int i) {
	/* empty */
    }
    
    abstract void method8340(boolean bool);
    
    abstract Interface39 method8341(boolean bool);
    
    public final Class114 method2312(int i, int i_120_, boolean bool,
				     boolean bool_121_) {
	return new Class114_Sub1(this, i, i_120_, bool, bool_121_);
    }
    
    abstract Class325 method8342(Class311[] class311s);
    
    public final void method2087(Class403 class403) {
	((Class151_Sub2) this).aClass403_8956.method4864(class403);
	method8274();
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    method8286();
    }
    
    abstract void method8343();
    
    abstract void method8344(Interface39 interface39);
    
    public final void method2074(int i, Class131 class131, int i_122_,
				 int i_123_) {
	method2297(false);
	((Class151_Sub2) this).aClass114_Sub1_9021.method1514
	    (0.0F, 0.0F, (float) method2302((short) -6032).method1943(), 0.0F,
	     0.0F, (float) method2302((short) -4630).method1944(), 0, class131,
	     i_122_, i_123_);
	method2297(true);
    }
    
    abstract Interface31 method8345(Class116 class116, int i, int i_124_,
				    boolean bool, byte[] is, int i_125_,
				    int i_126_);
    
    public abstract String method2148();
    
    public final boolean method1998() {
	return true;
    }
    
    void method8346() {
	method8334(7);
	method8252();
    }
    
    final void method2051(int i, int i_127_, int i_128_, int i_129_,
			  int i_130_) {
	method2093(i, i_127_, i + i_128_, i_127_, i_129_, i_130_);
    }
    
    final void method2395(int i, int i_131_, int i_132_, int i_133_,
			  int i_134_) {
	method2093(i, i_131_, i, i_131_ + i_132_, i_133_, i_134_);
    }
    
    public final void method2093(int i, int i_135_, int i_136_, int i_137_,
				 int i_138_, int i_139_) {
	method2057(i, i_135_, i_136_, i_137_, i_138_, 1, i_139_);
    }
    
    public void method2055(int i, int i_140_, int i_141_, int i_142_,
			   int i_143_, int i_144_, int i_145_, int i_146_,
			   int i_147_) {
	float f = (float) i_141_ - (float) i;
	float f_148_ = (float) i_142_ - (float) i_140_;
	if (f == 0.0F && f_148_ == 0.0F)
	    f = 1.0F;
	else {
	    float f_149_
		= (float) (1.0
			   / Math.sqrt((double) (f * f + f_148_ * f_148_)));
	    f *= f_149_;
	    f_148_ *= f_149_;
	}
	method8369();
	Class305 class305 = ((Class151_Sub2) this).aClass305Array9025[13];
	class305.method4069();
	class305.method4078(i_143_);
	method8348(i_144_);
	class305.method4073();
	method8340(false);
	i_147_ %= i_146_ + i_145_;
	float f_150_ = f * (float) i_145_;
	float f_151_ = f_148_ * (float) i_145_;
	float f_152_ = 0.0F;
	float f_153_ = 0.0F;
	float f_154_ = f_150_;
	float f_155_ = f_151_;
	if (i_147_ > i_145_) {
	    f_152_ = f * (float) (i_145_ + i_146_ - i_147_);
	    f_153_ = f_148_ * (float) (i_145_ + i_146_ - i_147_);
	} else {
	    f_154_ = f * (float) (i_145_ - i_147_);
	    f_155_ = f_148_ * (float) (i_145_ - i_147_);
	}
	float f_156_ = (float) i + f_152_;
	float f_157_ = (float) i_140_ + f_153_;
	float f_158_ = f * (float) i_146_;
	float f_159_ = f_148_ * (float) i_146_;
	for (;;) {
	    if (i_141_ > i) {
		if (f_156_ > (float) i_141_)
		    break;
		if (f_156_ + f_154_ > (float) i_141_)
		    f_154_ = (float) i_141_ - f_156_;
	    } else {
		if (f_156_ < (float) i_141_)
		    break;
		if (f_156_ + f_154_ < (float) i_141_)
		    f_154_ = (float) i_141_ - f_156_;
	    }
	    if (i_142_ > i_140_) {
		if (f_157_ > (float) i_142_)
		    break;
		if (f_157_ + f_155_ > (float) i_142_)
		    f_155_ = (float) i_142_ - f_157_;
	    } else {
		if (f_157_ < (float) i_142_)
		    break;
		if (f_157_ + f_155_ < (float) i_142_)
		    f_155_ = (float) i_142_ - f_157_;
	    }
	    if (!method8256(f_156_, f_157_, 0.0F, f_156_ + f_154_,
			    f_157_ + f_155_, 0.0F))
		return;
	    method8459();
	    f_156_ += f_158_ + f_154_;
	    f_157_ += f_159_ + f_155_;
	    f_154_ = f_150_;
	    f_155_ = f_151_;
	}
	method8340(true);
	class305.method4068();
    }
    
    public void method2056(int i, int i_160_, int i_161_, int i_162_,
			   int i_163_, int i_164_, Class131 class131,
			   int i_165_, int i_166_, int i_167_, int i_168_,
			   int i_169_) {
	/* empty */
    }
    
    public final void method2054(int i, int i_170_, int i_171_, int i_172_,
				 int i_173_, int i_174_, Class131 class131,
				 int i_175_, int i_176_) {
	/* empty */
    }
    
    public final void method2057(int i, int i_177_, int i_178_, int i_179_,
				 int i_180_, int i_181_, int i_182_) {
	i += 1.0F;
	i_177_ += 1.0F;
	i_178_ += 1.0F;
	i_179_ += 1.0F;
	float f = (float) (i_178_ - i);
	float f_183_ = (float) (i_179_ - i_177_);
	float f_184_
	    = 1.0F / (float) Math.sqrt((double) (f * f + f_183_ * f_183_));
	f *= f_184_;
	f_183_ *= f_184_;
	i -= f;
	i_177_ -= f_183_;
	float f_185_ = -f_183_;
	float f_186_ = f;
	f_185_ *= 0.5F * (float) i_181_;
	f_186_ *= 0.5F * (float) i_181_;
	((Class151_Sub2) this).aClass114_Sub1_9020.method1548
	    ((float) i - f_185_, (float) i_177_ - f_186_,
	     (float) i_178_ - f_185_, (float) i_179_ - f_186_,
	     (float) i + f_185_, (float) i_177_ + f_186_, 0, i_180_, i_182_);
    }
    
    void method8347() {
	method8372();
	method8262();
	method8281();
	method2221();
	method2036();
    }
    
    final void method8348(int i) {
	if (((Class151_Sub2) this).anInt8952 != i) {
	    Class337 class337;
	    boolean bool;
	    boolean bool_187_;
	    if (i == 1) {
		class337 = Class337.aClass337_3618;
		bool = true;
		bool_187_ = true;
	    } else if (i == 2) {
		class337 = Class337.aClass337_3616;
		bool = false;
		bool_187_ = true;
	    } else if (i == 128) {
		class337 = Class337.aClass337_3617;
		bool = true;
		bool_187_ = true;
	    } else if (i == 3) {
		class337 = Class337.aClass337_3615;
		bool = true;
		bool_187_ = false;
	    } else {
		class337 = Class337.aClass337_3615;
		bool = false;
		bool_187_ = false;
	    }
	    if (bool != aBool8972) {
		aBool8972 = bool;
		method8335();
	    }
	    if (bool_187_ != aBool9054) {
		aBool9054 = bool_187_;
		method8337();
	    }
	    if (class337 != aClass337_9053) {
		aClass337_9053 = class337;
		method8357();
	    }
	    ((Class151_Sub2) this).anInt8952 = i;
	    ((Class151_Sub2) this).anInt8918 &= ~0xc;
	}
    }
    
    final void method8349(Class342 class342, int i) {
	method8380(0, ((Class151_Sub2) this).anInterface33_9074);
	method8463(((Class151_Sub2) this).aClass325_9077);
	method8462(class342, 0, i);
    }
    
    public final void method2378(int i, Class487_Sub16[] class487_sub16s) {
	for (int i_188_ = 0; i_188_ < i; i_188_++)
	    aClass487_Sub16Array9003[i_188_] = class487_sub16s[i_188_];
	anInt9008 = i;
    }
    
    abstract void method8350(Interface39 interface39, Class342 class342, int i,
			     int i_189_, int i_190_, int i_191_);
    
    public abstract void method8351(Class342 class342, int i, int i_192_,
				    int i_193_, int i_194_);
    
    abstract void method8352();
    
    final void method8353() {
	if (((Class151_Sub2) this).anInt8918 != 8) {
	    method8283();
	    method8338(true);
	    method8288(true);
	    method8404(true);
	    method8348(1);
	    method8278((byte) 0);
	    ((Class151_Sub2) this).anInt8918 = 8;
	}
    }
    
    abstract void method8354();
    
    static int method8355(char c, char c_195_, char c_196_, char c_197_) {
	return ((c & 0xff) << 0 | (c_195_ & 0xff) << 8 | (c_196_ & 0xff) << 16
		| (c_197_ & 0xff) << 24);
    }
    
    final void method8356() {
	((Class151_Sub2) this).anInterface33_9074 = method8289(false);
	int i = 160;
	((Class151_Sub2) this).anInterface33_9074.method216(i, 32);
	aByteBuffer9026.clear();
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putInt(-1);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putInt(-1);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putInt(-1);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putInt(-1);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(1.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putInt(-1);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	aByteBuffer9026.putFloat(0.0F);
	((Class151_Sub2) this).anInterface33_9074
	    .method209(0, aByteBuffer9026.position(), aLong8955);
	((Class151_Sub2) this).aClass325_9077
	    = method8342(new Class311[]
			 { new Class311(new Class324[]
					{ Class324.aClass324_3561,
					  Class324.aClass324_3562,
					  Class324.aClass324_3552,
					  Class324.aClass324_3552 }) });
    }
    
    public void method2125(int i) {
	if (((Class151_Sub2) this).aClass307_9017 != null)
	    ((Class151_Sub2) this).aClass307_9017.method4090();
	anInt9058 = i & 0x7fffffff;
    }
    
    public void method2126(int i) {
	if (((Class151_Sub2) this).aClass307_9017 != null)
	    ((Class151_Sub2) this).aClass307_9017.method4090();
	anInt9058 = i & 0x7fffffff;
    }
    
    public final int method2127() {
	return anInt8932 + anInt9055 + anInt8933;
    }
    
    public final int method2128() {
	return anInt8932 + anInt9055 + anInt8933;
    }
    
    public final int method2256() {
	return anInt8964 - 2;
    }
    
    public final boolean method2404() {
	return true;
    }
    
    public final boolean method2373() {
	return true;
    }
    
    public final boolean method2132() {
	return true;
    }
    
    public final boolean method2133() {
	return true;
    }
    
    abstract void method8357();
    
    public final boolean method2136() {
	return ((Class151_Sub2) this).aClass314Array9038[3] != null;
    }
    
    public final void method2261(Class147 class147) {
	((Class151_Sub2) this).aClass322_9059.method4288(this, class147);
    }
    
    public final boolean method2387() {
	return true;
    }
    
    abstract boolean method8358(Class116 class116, Class155 class155);
    
    public final boolean method2219() {
	return true;
    }
    
    public final boolean method2141() {
	return aBool9068;
    }
    
    public final boolean method2142() {
	return true;
    }
    
    abstract Interface39 method8359(boolean bool);
    
    final Class403 method8360() {
	return aClass403Array9033[anInt9010];
    }
    
    public final boolean method2170() {
	return true;
    }
    
    public final boolean method2079() {
	return false;
    }
    
    final void method2388(int i, int i_198_, int i_199_, int i_200_,
			  int i_201_) {
	method2093(i, i_198_, i, i_198_ + i_199_, i_200_, i_201_);
    }
    
    final void method8361() {
	if (((Class151_Sub2) this).aClass305_9024 != null)
	    ((Class151_Sub2) this).aClass305_9024.method4071();
	method8343();
    }
    
    public final int[] method2151() {
	return null;
    }
    
    public final void method2259(int i, int i_202_, int i_203_, int i_204_) {
	if (((Class151_Sub2) this).aClass317_8947 != null) {
	    for (int i_205_ = 0;
		 i_205_ < ((Class151_Sub2) this).aClass314Array9038.length;
		 i_205_++) {
		if (((Class151_Sub2) this).aClass314Array9038[i_205_] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i_205_]
			   .method4128()
		    && !((Class151_Sub2) this).aClass314Array9038[i_205_]
			    .method4116()) {
		    if (!((Class151_Sub2) this).aClass317_8947
			     .method4163(i, i_202_, i_203_, i_204_)) {
			((Class151_Sub2) this).aClass317_8947.method4166();
			((Class151_Sub2) this).aClass317_8947 = null;
		    }
		    break;
		}
	    }
	}
    }
    
    public final void method2179(boolean bool) {
	aBool8973 = bool;
	method8419();
    }
    
    public void method2390(int i, int i_206_, int i_207_, int i_208_) {
	((Class151_Sub2) this).anInt8976 = i;
	((Class151_Sub2) this).anInt8977 = i_206_;
	((Class151_Sub2) this).anInt8978 = i_207_;
	((Class151_Sub2) this).anInt8950 = i_208_;
	method8471();
    }
    
    public void method2181(int i, int i_209_, int i_210_, int i_211_) {
	((Class151_Sub2) this).anInt8976 = i;
	((Class151_Sub2) this).anInt8977 = i_209_;
	((Class151_Sub2) this).anInt8978 = i_210_;
	((Class151_Sub2) this).anInt8950 = i_211_;
	method8471();
    }
    
    public final void method2290(int i, int i_212_) {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4164(i, i_212_);
    }
    
    public void method2183(int i, int i_213_, int i_214_, int i_215_) {
	((Class151_Sub2) this).anInt8976 = i;
	((Class151_Sub2) this).anInt8977 = i_213_;
	((Class151_Sub2) this).anInt8978 = i_214_;
	((Class151_Sub2) this).anInt8950 = i_215_;
	method8471();
    }
    
    public void method2185(int[] is) {
	is[0] = ((Class151_Sub2) this).anInt8976;
	is[1] = ((Class151_Sub2) this).anInt8977;
	is[2] = ((Class151_Sub2) this).anInt8978;
	is[3] = ((Class151_Sub2) this).anInt8950;
    }
    
    public void method2186(float f, float f_216_) {
	((Class151_Sub2) this).aFloat8968 = f;
	((Class151_Sub2) this).aFloat8969 = f_216_;
	method8471();
    }
    
    public void method2372(float f, float f_217_) {
	((Class151_Sub2) this).aFloat8968 = f;
	((Class151_Sub2) this).aFloat8969 = f_217_;
	method8471();
    }
    
    public final void method1996() {
	if (aClass144_1857 != null) {
	    anInt8943 = 0;
	    anInt8974 = 0;
	    anInt8975 = aClass144_1857.method1943();
	    anInt8928 = aClass144_1857.method1944();
	} else {
	    anInt8928 = 0;
	    anInt8975 = 0;
	    anInt8943 = 0;
	    anInt8974 = 0;
	}
	if (aBool9087) {
	    aBool9087 = false;
	    method8272();
	}
    }
    
    public final void method2130() {
	if (aClass144_1857 != null) {
	    anInt8943 = 0;
	    anInt8974 = 0;
	    anInt8975 = aClass144_1857.method1943();
	    anInt8928 = aClass144_1857.method1944();
	} else {
	    anInt8928 = 0;
	    anInt8975 = 0;
	    anInt8943 = 0;
	    anInt8974 = 0;
	}
	if (aBool9087) {
	    aBool9087 = false;
	    method8272();
	}
    }
    
    public final void method2085() {
	if (aClass144_1857 != null) {
	    anInt8943 = 0;
	    anInt8974 = 0;
	    anInt8975 = aClass144_1857.method1943();
	    anInt8928 = aClass144_1857.method1944();
	} else {
	    anInt8928 = 0;
	    anInt8975 = 0;
	    anInt8943 = 0;
	    anInt8974 = 0;
	}
	if (aBool9087) {
	    aBool9087 = false;
	    method8272();
	}
    }
    
    public final void method2131() {
	if (aClass144_1857 != null) {
	    anInt8943 = 0;
	    anInt8974 = 0;
	    anInt8975 = aClass144_1857.method1943();
	    anInt8928 = aClass144_1857.method1944();
	} else {
	    anInt8928 = 0;
	    anInt8975 = 0;
	    anInt8943 = 0;
	    anInt8974 = 0;
	}
	if (aBool9087) {
	    aBool9087 = false;
	    method8272();
	}
    }
    
    public final void method2369() {
	if (aClass144_1857 != null) {
	    anInt8943 = 0;
	    anInt8974 = 0;
	    anInt8975 = aClass144_1857.method1943();
	    anInt8928 = aClass144_1857.method1944();
	} else {
	    anInt8928 = 0;
	    anInt8975 = 0;
	    anInt8943 = 0;
	    anInt8974 = 0;
	}
	if (aBool9087) {
	    aBool9087 = false;
	    method8272();
	}
    }
    
    public final void method2072() {
	if (aClass144_1857 != null) {
	    anInt8943 = 0;
	    anInt8974 = 0;
	    anInt8975 = aClass144_1857.method1943();
	    anInt8928 = aClass144_1857.method1944();
	} else {
	    anInt8928 = 0;
	    anInt8975 = 0;
	    anInt8943 = 0;
	    anInt8974 = 0;
	}
	if (aBool9087) {
	    aBool9087 = false;
	    method8272();
	}
    }
    
    public final void method2194(int i, int i_218_, int i_219_, int i_220_) {
	int i_221_;
	int i_222_;
	if (aClass144_1857 != null) {
	    i_222_ = aClass144_1857.method1943();
	    i_221_ = aClass144_1857.method1944();
	} else {
	    i_221_ = 0;
	    i_222_ = 0;
	}
	if (i <= 0 && i_219_ >= i_222_ - 1 && i_218_ <= 0
	    && i_220_ >= i_221_ - 1)
	    method2036();
	else {
	    anInt8974 = i >= 0 ? i : 0;
	    anInt8975 = i_219_ <= i_222_ ? i_219_ : i_222_;
	    anInt8943 = i_218_ >= 0 ? i_218_ : 0;
	    anInt8928 = i_220_ <= i_221_ ? i_220_ : i_221_;
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2195(int i, int i_223_, int i_224_, int i_225_) {
	int i_226_;
	int i_227_;
	if (aClass144_1857 != null) {
	    i_227_ = aClass144_1857.method1943();
	    i_226_ = aClass144_1857.method1944();
	} else {
	    i_226_ = 0;
	    i_227_ = 0;
	}
	if (i <= 0 && i_224_ >= i_227_ - 1 && i_223_ <= 0
	    && i_225_ >= i_226_ - 1)
	    method2036();
	else {
	    anInt8974 = i >= 0 ? i : 0;
	    anInt8975 = i_224_ <= i_227_ ? i_224_ : i_227_;
	    anInt8943 = i_223_ >= 0 ? i_223_ : 0;
	    anInt8928 = i_225_ <= i_226_ ? i_225_ : i_226_;
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2187(int i, int i_228_, int i_229_, int i_230_) {
	int i_231_;
	int i_232_;
	if (aClass144_1857 != null) {
	    i_232_ = aClass144_1857.method1943();
	    i_231_ = aClass144_1857.method1944();
	} else {
	    i_231_ = 0;
	    i_232_ = 0;
	}
	if (i <= 0 && i_229_ >= i_232_ - 1 && i_228_ <= 0
	    && i_230_ >= i_231_ - 1)
	    method2036();
	else {
	    anInt8974 = i >= 0 ? i : 0;
	    anInt8975 = i_229_ <= i_232_ ? i_229_ : i_232_;
	    anInt8943 = i_228_ >= 0 ? i_228_ : 0;
	    anInt8928 = i_230_ <= i_231_ ? i_230_ : i_231_;
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2197(int i, int i_233_, int i_234_, int i_235_) {
	int i_236_;
	int i_237_;
	if (aClass144_1857 != null) {
	    i_237_ = aClass144_1857.method1943();
	    i_236_ = aClass144_1857.method1944();
	} else {
	    i_236_ = 0;
	    i_237_ = 0;
	}
	if (i <= 0 && i_234_ >= i_237_ - 1 && i_233_ <= 0
	    && i_235_ >= i_236_ - 1)
	    method2036();
	else {
	    anInt8974 = i >= 0 ? i : 0;
	    anInt8975 = i_234_ <= i_237_ ? i_234_ : i_237_;
	    anInt8943 = i_233_ >= 0 ? i_233_ : 0;
	    anInt8928 = i_235_ <= i_236_ ? i_235_ : i_236_;
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2198(int i, int i_238_, int i_239_, int i_240_) {
	int i_241_;
	int i_242_;
	if (aClass144_1857 != null) {
	    i_242_ = aClass144_1857.method1943();
	    i_241_ = aClass144_1857.method1944();
	} else {
	    i_241_ = 0;
	    i_242_ = 0;
	}
	i = i >= 0 ? i : 0;
	i_239_ = i_239_ <= i_242_ ? i_239_ : i_242_;
	i_238_ = i_238_ >= 0 ? i_238_ : 0;
	i_240_ = i_240_ <= i_241_ ? i_240_ : i_241_;
	boolean bool = false;
	if (anInt8974 < i) {
	    anInt8974 = i;
	    bool = true;
	}
	if (anInt8975 > i_239_) {
	    anInt8975 = i_239_;
	    bool = true;
	}
	if (anInt8943 < i_238_) {
	    anInt8943 = i_238_;
	    bool = true;
	}
	if (anInt8928 > i_240_) {
	    anInt8928 = i_240_;
	    bool = true;
	}
	if (bool) {
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2313(int i, Class138 class138) {
	((Class151_Sub2) this).anInt9042 = i;
	((Class151_Sub2) this).aClass138_9015 = class138;
	((Class151_Sub2) this).aBool9040 = true;
    }
    
    public final void method2200(int i, int i_243_, int i_244_, int i_245_) {
	int i_246_;
	int i_247_;
	if (aClass144_1857 != null) {
	    i_247_ = aClass144_1857.method1943();
	    i_246_ = aClass144_1857.method1944();
	} else {
	    i_246_ = 0;
	    i_247_ = 0;
	}
	i = i >= 0 ? i : 0;
	i_244_ = i_244_ <= i_247_ ? i_244_ : i_247_;
	i_243_ = i_243_ >= 0 ? i_243_ : 0;
	i_245_ = i_245_ <= i_246_ ? i_245_ : i_246_;
	boolean bool = false;
	if (anInt8974 < i) {
	    anInt8974 = i;
	    bool = true;
	}
	if (anInt8975 > i_244_) {
	    anInt8975 = i_244_;
	    bool = true;
	}
	if (anInt8943 < i_243_) {
	    anInt8943 = i_243_;
	    bool = true;
	}
	if (anInt8928 > i_245_) {
	    anInt8928 = i_245_;
	    bool = true;
	}
	if (bool) {
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2201(int i, int i_248_, int i_249_, int i_250_) {
	int i_251_;
	int i_252_;
	if (aClass144_1857 != null) {
	    i_252_ = aClass144_1857.method1943();
	    i_251_ = aClass144_1857.method1944();
	} else {
	    i_251_ = 0;
	    i_252_ = 0;
	}
	i = i >= 0 ? i : 0;
	i_249_ = i_249_ <= i_252_ ? i_249_ : i_252_;
	i_248_ = i_248_ >= 0 ? i_248_ : 0;
	i_250_ = i_250_ <= i_251_ ? i_250_ : i_251_;
	boolean bool = false;
	if (anInt8974 < i) {
	    anInt8974 = i;
	    bool = true;
	}
	if (anInt8975 > i_249_) {
	    anInt8975 = i_249_;
	    bool = true;
	}
	if (anInt8943 < i_248_) {
	    anInt8943 = i_248_;
	    bool = true;
	}
	if (anInt8928 > i_250_) {
	    anInt8928 = i_250_;
	    bool = true;
	}
	if (bool) {
	    if (!aBool9087 && (((Class151_Sub2) this).aBool9022
			       || method8476() == Class312.aClass312_3465)) {
		aBool9087 = true;
		method8272();
	    }
	    if (aBool9087)
		method8271();
	}
    }
    
    public final void method2202(int[] is) {
	is[0] = anInt8974;
	is[1] = anInt8943;
	is[2] = anInt8975;
	is[3] = anInt8928;
    }
    
    public final Class403 method2068() {
	return ((Class151_Sub2) this).aClass403_9085;
    }
    
    public final void method2205(int i, int i_253_, int i_254_, int i_255_,
				 int i_256_, int i_257_) {
	i_254_--;
	i_255_--;
	int i_258_ = 0;
	if (this instanceof Class151_Sub2_Sub2)
	    i_258_ = -1;
	if (aBool9068 && anInt9057 != 0)
	    method8340(false);
	method2093(i, i_253_ + i_258_, i + i_254_, i_253_ + i_258_, i_256_,
		   i_257_);
	method2093(i, i_253_ + i_255_ + i_258_, i + i_254_,
		   i_253_ + i_255_ + i_258_, i_256_, i_257_);
	method2093(i, i_253_, i, i_253_ + i_255_, i_256_, i_257_);
	method2093(i + i_254_, i_253_, i + i_254_, i_253_ + i_255_, i_256_,
		   i_257_);
	if (aBool9068 && anInt9057 != 0)
	    method8340(true);
    }
    
    public final void method2206(int i, int i_259_, int i_260_, int i_261_,
				 int i_262_, int i_263_) {
	i_260_--;
	i_261_--;
	int i_264_ = 0;
	if (this instanceof Class151_Sub2_Sub2)
	    i_264_ = -1;
	if (aBool9068 && anInt9057 != 0)
	    method8340(false);
	method2093(i, i_259_ + i_264_, i + i_260_, i_259_ + i_264_, i_262_,
		   i_263_);
	method2093(i, i_259_ + i_261_ + i_264_, i + i_260_,
		   i_259_ + i_261_ + i_264_, i_262_, i_263_);
	method2093(i, i_259_, i, i_259_ + i_261_, i_262_, i_263_);
	method2093(i + i_260_, i_259_, i + i_260_, i_259_ + i_261_, i_262_,
		   i_263_);
	if (aBool9068 && anInt9057 != 0)
	    method8340(true);
    }
    
    final void method2207(int i, int i_265_, int i_266_, int i_267_,
			  int i_268_) {
	method2093(i, i_265_, i + i_266_, i_265_, i_267_, i_268_);
    }
    
    public final void method2209(int i, int i_269_, int i_270_, int i_271_,
				 int i_272_, int i_273_) {
	method2057(i, i_269_, i_270_, i_271_, i_272_, 1, i_273_);
    }
    
    public final void method2023(int i, int i_274_, int i_275_, int i_276_,
				 int i_277_, int i_278_) {
	method2057(i, i_274_, i_275_, i_276_, i_277_, 1, i_278_);
    }
    
    public final void method2211(int i, int i_279_, int i_280_, int i_281_,
				 int i_282_, int i_283_) {
	method2057(i, i_279_, i_280_, i_281_, i_282_, 1, i_283_);
    }
    
    public final void method2212(int i, int i_284_, int i_285_, int i_286_,
				 int i_287_, int i_288_) {
	method2057(i, i_284_, i_285_, i_286_, i_287_, 1, i_288_);
    }
    
    public void method2213(int i, int i_289_, int i_290_, int i_291_,
			   int i_292_, int i_293_, int i_294_, int i_295_,
			   int i_296_) {
	float f = (float) i_290_ - (float) i;
	float f_297_ = (float) i_291_ - (float) i_289_;
	if (f == 0.0F && f_297_ == 0.0F)
	    f = 1.0F;
	else {
	    float f_298_
		= (float) (1.0
			   / Math.sqrt((double) (f * f + f_297_ * f_297_)));
	    f *= f_298_;
	    f_297_ *= f_298_;
	}
	method8369();
	Class305 class305 = ((Class151_Sub2) this).aClass305Array9025[13];
	class305.method4069();
	class305.method4078(i_292_);
	method8348(i_293_);
	class305.method4073();
	method8340(false);
	i_296_ %= i_295_ + i_294_;
	float f_299_ = f * (float) i_294_;
	float f_300_ = f_297_ * (float) i_294_;
	float f_301_ = 0.0F;
	float f_302_ = 0.0F;
	float f_303_ = f_299_;
	float f_304_ = f_300_;
	if (i_296_ > i_294_) {
	    f_301_ = f * (float) (i_294_ + i_295_ - i_296_);
	    f_302_ = f_297_ * (float) (i_294_ + i_295_ - i_296_);
	} else {
	    f_303_ = f * (float) (i_294_ - i_296_);
	    f_304_ = f_297_ * (float) (i_294_ - i_296_);
	}
	float f_305_ = (float) i + f_301_;
	float f_306_ = (float) i_289_ + f_302_;
	float f_307_ = f * (float) i_295_;
	float f_308_ = f_297_ * (float) i_295_;
	for (;;) {
	    if (i_290_ > i) {
		if (f_305_ > (float) i_290_)
		    break;
		if (f_305_ + f_303_ > (float) i_290_)
		    f_303_ = (float) i_290_ - f_305_;
	    } else {
		if (f_305_ < (float) i_290_)
		    break;
		if (f_305_ + f_303_ < (float) i_290_)
		    f_303_ = (float) i_290_ - f_305_;
	    }
	    if (i_291_ > i_289_) {
		if (f_306_ > (float) i_291_)
		    break;
		if (f_306_ + f_304_ > (float) i_291_)
		    f_304_ = (float) i_291_ - f_306_;
	    } else {
		if (f_306_ < (float) i_291_)
		    break;
		if (f_306_ + f_304_ < (float) i_291_)
		    f_304_ = (float) i_291_ - f_306_;
	    }
	    if (!method8256(f_305_, f_306_, 0.0F, f_305_ + f_303_,
			    f_306_ + f_304_, 0.0F))
		return;
	    method8459();
	    f_305_ += f_307_ + f_303_;
	    f_306_ += f_308_ + f_304_;
	    f_303_ = f_299_;
	    f_304_ = f_300_;
	}
	method8340(true);
	class305.method4068();
    }
    
    public void method2034(int i, int i_309_, int i_310_, int i_311_) {
	((Class151_Sub2) this).anInt8976 = i;
	((Class151_Sub2) this).anInt8977 = i_309_;
	((Class151_Sub2) this).anInt8978 = i_310_;
	((Class151_Sub2) this).anInt8950 = i_311_;
	method8471();
    }
    
    public final void method8362() {
	method8349(Class342.aClass342_3641, 2);
    }
    
    abstract void method8363();
    
    public void method2217(int i, int i_312_, int i_313_, int i_314_,
			   int i_315_, int i_316_, Class131 class131,
			   int i_317_, int i_318_, int i_319_, int i_320_,
			   int i_321_) {
	/* empty */
    }
    
    public void method2218(int i, int i_322_, int i_323_, int i_324_,
			   int i_325_, int i_326_, Class131 class131,
			   int i_327_, int i_328_, int i_329_, int i_330_,
			   int i_331_) {
	/* empty */
    }
    
    public final void method2238(int i, int i_332_, int i_333_, int i_334_,
				 int i_335_, int i_336_, int i_337_) {
	i += 1.0F;
	i_332_ += 1.0F;
	i_333_ += 1.0F;
	i_334_ += 1.0F;
	float f = (float) (i_333_ - i);
	float f_338_ = (float) (i_334_ - i_332_);
	float f_339_
	    = 1.0F / (float) Math.sqrt((double) (f * f + f_338_ * f_338_));
	f *= f_339_;
	f_338_ *= f_339_;
	i -= f;
	i_332_ -= f_338_;
	float f_340_ = -f_338_;
	float f_341_ = f;
	f_340_ *= 0.5F * (float) i_336_;
	f_341_ *= 0.5F * (float) i_336_;
	((Class151_Sub2) this).aClass114_Sub1_9020.method1548
	    ((float) i - f_340_, (float) i_332_ - f_341_,
	     (float) i_333_ - f_340_, (float) i_334_ - f_341_,
	     (float) i + f_340_, (float) i_332_ + f_341_, 0, i_335_, i_337_);
    }
    
    public int method2265(int i, int i_342_, int i_343_, int i_344_,
			  int i_345_, int i_346_) {
	int i_347_ = 0;
	float f = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2]
		      * (float) i)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		      * (float) i_342_)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		      * (float) i_343_));
	float f_348_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2]
		  * (float) i_344_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		  * (float) i_345_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		  * (float) i_346_));
	float f_349_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * (float) i_342_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * (float) i_343_));
	float f_350_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3]
		  * (float) i_344_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * (float) i_345_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * (float) i_346_));
	if (f < -f_349_ && f_348_ < -f_350_)
	    i_347_ |= 0x10;
	else if (f > f_349_ && f_348_ > f_350_)
	    i_347_ |= 0x20;
	float f_351_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * (float) i_342_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * (float) i_343_));
	float f_352_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		  * (float) i_344_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * (float) i_345_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * (float) i_346_));
	if (f_351_ < -f_349_ && f_352_ < -f_350_)
	    i_347_ |= 0x1;
	if (f_351_ > f_349_ && f_352_ > f_350_)
	    i_347_ |= 0x2;
	float f_353_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * (float) i_342_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * (float) i_343_));
	float f_354_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1]
		  * (float) i_344_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * (float) i_345_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * (float) i_346_));
	if (f_353_ < -f_349_ && f_354_ < -f_350_)
	    i_347_ |= 0x4;
	if (f_353_ > f_349_ && f_354_ > f_350_)
	    i_347_ |= 0x8;
	return i_347_;
    }
    
    public int method2123(int i, int i_355_, int i_356_, int i_357_,
			  int i_358_, int i_359_) {
	int i_360_ = 0;
	float f = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2]
		      * (float) i)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		      * (float) i_355_)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		      * (float) i_356_));
	float f_361_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2]
		  * (float) i_357_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		  * (float) i_358_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		  * (float) i_359_));
	float f_362_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * (float) i_355_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * (float) i_356_));
	float f_363_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3]
		  * (float) i_357_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * (float) i_358_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * (float) i_359_));
	if (f < -f_362_ && f_361_ < -f_363_)
	    i_360_ |= 0x10;
	else if (f > f_362_ && f_361_ > f_363_)
	    i_360_ |= 0x20;
	float f_364_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * (float) i_355_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * (float) i_356_));
	float f_365_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		  * (float) i_357_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * (float) i_358_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * (float) i_359_));
	if (f_364_ < -f_362_ && f_365_ < -f_363_)
	    i_360_ |= 0x1;
	if (f_364_ > f_362_ && f_365_ > f_363_)
	    i_360_ |= 0x2;
	float f_366_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * (float) i_355_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * (float) i_356_));
	float f_367_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1]
		  * (float) i_357_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * (float) i_358_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * (float) i_359_));
	if (f_366_ < -f_362_ && f_367_ < -f_363_)
	    i_360_ |= 0x4;
	if (f_366_ > f_362_ && f_367_ > f_363_)
	    i_360_ |= 0x8;
	return i_360_;
    }
    
    abstract Class325 method8364(Class311[] class311s);
    
    public void method2224(Class400 class400, Class150 class150,
			   Class375 class375) {
	Class403 class403 = aClass403_9081;
	class403.method4865(class400);
	class403.method4863(((Class151_Sub2) this).aClass403_8959);
	class150.method1984(class375, ((Class151_Sub2) this).aClass403_8956,
			    class403, ((Class151_Sub2) this).aFloat8962,
			    ((Class151_Sub2) this).aFloat9043,
			    ((Class151_Sub2) this).aFloat8963,
			    ((Class151_Sub2) this).aFloat8979);
    }
    
    public void method2121(Class400 class400, Class150 class150,
			   Class375 class375) {
	Class403 class403 = aClass403_9081;
	class403.method4865(class400);
	class403.method4863(((Class151_Sub2) this).aClass403_8959);
	class150.method1984(class375, ((Class151_Sub2) this).aClass403_8956,
			    class403, ((Class151_Sub2) this).aFloat8962,
			    ((Class151_Sub2) this).aFloat9043,
			    ((Class151_Sub2) this).aFloat8963,
			    ((Class151_Sub2) this).aFloat8979);
    }
    
    public final void method2225(Class487_Sub26 class487_sub26) {
	((Class151_Sub2) this).aNativeHeap8929
	    = (((Class487_Sub26_Sub1) (Class487_Sub26_Sub1) class487_sub26)
	       .aNativeHeap11283);
    }
    
    public final void method2226(Class487_Sub26 class487_sub26) {
	((Class151_Sub2) this).aNativeHeap8929
	    = (((Class487_Sub26_Sub1) (Class487_Sub26_Sub1) class487_sub26)
	       .aNativeHeap11283);
    }
    
    public final void method2227(Class487_Sub26 class487_sub26) {
	((Class151_Sub2) this).aNativeHeap8929
	    = (((Class487_Sub26_Sub1) (Class487_Sub26_Sub1) class487_sub26)
	       .aNativeHeap11283);
    }
    
    final void method2216(int i, int i_368_, int i_369_, int i_370_,
			  int i_371_) {
	/* empty */
    }
    
    public final Class114 method2242(int i, int i_372_, boolean bool,
				     boolean bool_373_) {
	return new Class114_Sub1(this, i, i_372_, bool, bool_373_);
    }
    
    public final Class114 method2230(int i, int i_374_, boolean bool,
				     boolean bool_375_) {
	return new Class114_Sub1(this, i, i_374_, bool, bool_375_);
    }
    
    public abstract float method8365();
    
    public final Class114 method2232(int[] is, int i, int i_376_, int i_377_,
				     int i_378_, boolean bool) {
	return new Class114_Sub1(this, i_377_, i_378_, is, i, i_376_);
    }
    
    public final Class114 method2081(Class153 class153, boolean bool) {
	Class114 class114;
	if (class153.method2474() != 0 && class153.method2441() != 0) {
	    int[] is = class153.method2455(false);
	    class114 = method2067(is, 0, class153.method2474(),
				  class153.method2474(), class153.method2441(),
				  16711680);
	} else
	    class114 = method2067(new int[] { 0 }, 0, 1, 1, 1, 16711680);
	class114.method1553(class153.method2442(), class153.method2444(),
			    class153.method2473(), class153.method2475());
	return class114;
    }
    
    public final Class114 method2234(Class153 class153, boolean bool) {
	Class114 class114;
	if (class153.method2474() != 0 && class153.method2441() != 0) {
	    int[] is = class153.method2455(false);
	    class114 = method2067(is, 0, class153.method2474(),
				  class153.method2474(), class153.method2441(),
				  16711680);
	} else
	    class114 = method2067(new int[] { 0 }, 0, 1, 1, 1, 16711680);
	class114.method1553(class153.method2442(), class153.method2444(),
			    class153.method2473(), class153.method2475());
	return class114;
    }
    
    public final Class114 method2235(Class153 class153, boolean bool) {
	Class114 class114;
	if (class153.method2474() != 0 && class153.method2441() != 0) {
	    int[] is = class153.method2455(false);
	    class114 = method2067(is, 0, class153.method2474(),
				  class153.method2474(), class153.method2441(),
				  16711680);
	} else
	    class114 = method2067(new int[] { 0 }, 0, 1, 1, 1, 16711680);
	class114.method1553(class153.method2442(), class153.method2444(),
			    class153.method2473(), class153.method2475());
	return class114;
    }
    
    public final Class114 method2323(Class153 class153, boolean bool) {
	Class114 class114;
	if (class153.method2474() != 0 && class153.method2441() != 0) {
	    int[] is = class153.method2455(false);
	    class114 = method2067(is, 0, class153.method2474(),
				  class153.method2474(), class153.method2441(),
				  16711680);
	} else
	    class114 = method2067(new int[] { 0 }, 0, 1, 1, 1, 16711680);
	class114.method1553(class153.method2442(), class153.method2444(),
			    class153.method2473(), class153.method2475());
	return class114;
    }
    
    public abstract boolean method8366();
    
    public final Class131 method2239(int i, int i_379_, int[] is,
				     int[] is_380_) {
	return Class131_Sub2.method8128(this, i, i_379_, is, is_380_);
    }
    
    public final void method2365(int i, Class131 class131, int i_381_,
				 int i_382_) {
	method2297(false);
	((Class151_Sub2) this).aClass114_Sub1_9021.method1514
	    (0.0F, 0.0F, (float) method2302((short) -24824).method1943(), 0.0F,
	     0.0F, (float) method2302((short) -22375).method1944(), 0,
	     class131, i_381_, i_382_);
	method2297(true);
    }
    
    public final void method1999(int i, Class131 class131, int i_383_,
				 int i_384_) {
	method2297(false);
	((Class151_Sub2) this).aClass114_Sub1_9021.method1514
	    (0.0F, 0.0F, (float) method2302((short) -16971).method1943(), 0.0F,
	     0.0F, (float) method2302((short) -14818).method1944(), 0,
	     class131, i_383_, i_384_);
	method2297(true);
    }
    
    public final Class152 method2039(Class4 class4, Class153[] class153s,
				     boolean bool) {
	return new Class152_Sub3(this, class4, class153s, bool);
    }
    
    public final Class152 method2243(Class4 class4, Class153[] class153s,
				     boolean bool) {
	return new Class152_Sub3(this, class4, class153s, bool);
    }
    
    public final void method2244(int i) {
	/* empty */
    }
    
    public final Class134 method2245(Class139 class139, int i, int i_385_,
				     int i_386_, int i_387_) {
	return new Class134_Sub3(this, class139, i, i_386_, i_387_, i_385_);
    }
    
    boolean method2222(int i, int i_388_, int i_389_, int i_390_,
		       Class400 class400, Class375 class375) {
	Class403 class403 = aClass403_9081;
	class403.method4865(class400);
	class403.method4863(((Class151_Sub2) this).aClass403_8959);
	return class375.method4596(i, i_388_, i_389_, i_390_, class403,
				   ((Class151_Sub2) this).aFloat8962,
				   ((Class151_Sub2) this).aFloat9043,
				   ((Class151_Sub2) this).aFloat8963,
				   ((Class151_Sub2) this).aFloat8979);
    }
    
    final void method2348(int i, int i_391_, int i_392_, int i_393_,
			  int i_394_) {
	/* empty */
    }
    
    public final Class134 method2248(Class139 class139, int i, int i_395_,
				     int i_396_, int i_397_) {
	return new Class134_Sub3(this, class139, i, i_396_, i_397_, i_395_);
    }
    
    public final boolean method2293() {
	return (((Class151_Sub2) this).aClass317_8947 != null
		&& (((Class317) ((Class151_Sub2) this).aClass317_8947)
		    .aBool3496));
    }
    
    public final int method2250(int i, int i_398_) {
	return i | i_398_;
    }
    
    public final void method2406(int i, int i_399_, float f, int i_400_,
				 int i_401_, float f_402_, int i_403_,
				 int i_404_, float f_405_, int i_406_,
				 int i_407_, int i_408_, int i_409_) {
	/* empty */
    }
    
    public final int method2252(int i, int i_410_) {
	return i | i_410_;
    }
    
    public final int method2135(int i, int i_411_) {
	return i | i_411_;
    }
    
    public abstract void method8367(int i, Interface33 interface33);
    
    public final Class403 method2008() {
	return ((Class151_Sub2) this).aClass403_9085;
    }
    
    public final Class400 method2255() {
	return ((Class151_Sub2) this).aClass400_9086;
    }
    
    public final int method2257() {
	return anInt8964 - 2;
    }
    
    public final void method1997(Class147 class147) {
	((Class151_Sub2) this).aClass322_9059.method4288(this, class147);
    }
    
    public final void method2260(Class147 class147) {
	((Class151_Sub2) this).aClass322_9059.method4288(this, class147);
    }
    
    final void method8368() {
	((Class151_Sub2) this).aBool8949 = false;
    }
    
    public final void method2192(Class400 class400) {
	((Class151_Sub2) this).aClass400_8936 = class400;
	aClass403_8938.method4865(((Class151_Sub2) this).aClass400_8936);
	((Class151_Sub2) this).aClass403_8940.method4864(aClass403_8938);
	((Class151_Sub2) this).aClass403_8940.method4883();
	((Class151_Sub2) this).aClass400_9051.method4807(class400);
	((Class151_Sub2) this).aClass400_9051.method4845();
	((Class151_Sub2) this).aClass403_8939
	    .method4865(((Class151_Sub2) this).aClass400_9051);
	method8274();
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    method8275();
    }
    
    public final void method2262(Class400 class400) {
	((Class151_Sub2) this).aClass400_8936 = class400;
	aClass403_8938.method4865(((Class151_Sub2) this).aClass400_8936);
	((Class151_Sub2) this).aClass403_8940.method4864(aClass403_8938);
	((Class151_Sub2) this).aClass403_8940.method4883();
	((Class151_Sub2) this).aClass400_9051.method4807(class400);
	((Class151_Sub2) this).aClass400_9051.method4845();
	((Class151_Sub2) this).aClass403_8939
	    .method4865(((Class151_Sub2) this).aClass400_9051);
	method8274();
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    method8275();
    }
    
    public Class400 method2264() {
	return ((Class151_Sub2) this).aClass400_8936;
    }
    
    public Class400 method2166() {
	return ((Class151_Sub2) this).aClass400_8936;
    }
    
    final void method8369() {
	if (((Class151_Sub2) this).aClass316_8948 != Class316.aClass316_3477) {
	    Class316 class316 = ((Class151_Sub2) this).aClass316_8948;
	    ((Class151_Sub2) this).aClass316_8948 = Class316.aClass316_3477;
	    if (class316 == Class316.aClass316_3476)
		method8275();
	    method8284();
	    ((Class151_Sub2) this).aClass403_8957
		= ((Class151_Sub2) this).aClass403_8944;
	    method8286();
	    method8471();
	    ((Class151_Sub2) this).anInt8918 &= ~0x8;
	}
    }
    
    public final Class403 method2268() {
	return ((Class151_Sub2) this).aClass403_8956;
    }
    
    public final Class403 method2269() {
	return ((Class151_Sub2) this).aClass403_8956;
    }
    
    public int method2058(int i, int i_412_, int i_413_, int i_414_,
			  int i_415_, int i_416_) {
	int i_417_ = 0;
	float f = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2]
		      * (float) i)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		      * (float) i_412_)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		      * (float) i_413_));
	float f_418_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2]
		  * (float) i_414_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		  * (float) i_415_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		  * (float) i_416_));
	float f_419_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * (float) i_412_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * (float) i_413_));
	float f_420_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3]
		  * (float) i_414_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * (float) i_415_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * (float) i_416_));
	if (f < -f_419_ && f_418_ < -f_420_)
	    i_417_ |= 0x10;
	else if (f > f_419_ && f_418_ > f_420_)
	    i_417_ |= 0x20;
	float f_421_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * (float) i_412_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * (float) i_413_));
	float f_422_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		  * (float) i_414_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * (float) i_415_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * (float) i_416_));
	if (f_421_ < -f_419_ && f_422_ < -f_420_)
	    i_417_ |= 0x1;
	if (f_421_ > f_419_ && f_422_ > f_420_)
	    i_417_ |= 0x2;
	float f_423_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1]
		  * (float) i)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * (float) i_412_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * (float) i_413_));
	float f_424_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1]
		  * (float) i_414_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * (float) i_415_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * (float) i_416_));
	if (f_423_ < -f_419_ && f_424_ < -f_420_)
	    i_417_ |= 0x4;
	if (f_423_ > f_419_ && f_424_ > f_420_)
	    i_417_ |= 0x8;
	return i_417_;
    }
    
    public final void method2271(float f) {
	if (aFloat9000 != f) {
	    aFloat9000 = f;
	    method8295();
	    method8264();
	}
    }
    
    public final void method2007(float f) {
	if (aFloat9000 != f) {
	    aFloat9000 = f;
	    method8295();
	    method8264();
	}
    }
    
    public final void method2273(int i, float f, float f_425_, float f_426_,
				 float f_427_, float f_428_) {
	boolean bool = ((Class151_Sub2) this).anInt8996 != i;
	f *= 0.5F;
	f_425_ *= 0.5F;
	if (bool || aFloat9001 != f || aFloat8986 != f_425_) {
	    ((Class151_Sub2) this).anInt8996 = i;
	    aFloat9001 = f;
	    aFloat8986 = f_425_;
	    if (bool) {
		aFloat8997 = (float) (((Class151_Sub2) this).anInt8996
				      & 0xff0000) / 1.671168E7F;
		aFloat8998 = (float) (((Class151_Sub2) this).anInt8996
				      & 0xff00) / 65280.0F;
		aFloat8999 = ((float) (((Class151_Sub2) this).anInt8996 & 0xff)
			      / 255.0F);
		method8295();
	    }
	    method8363();
	}
	if (((Class151_Sub2) this).aFloatArray8994[0] != f_426_
	    || ((Class151_Sub2) this).aFloatArray8994[1] != f_427_
	    || ((Class151_Sub2) this).aFloatArray8994[2] != f_428_) {
	    ((Class151_Sub2) this).aFloatArray8994[0] = f_426_;
	    ((Class151_Sub2) this).aFloatArray8994[1] = f_427_;
	    ((Class151_Sub2) this).aFloatArray8994[2] = f_428_;
	    ((Class151_Sub2) this).aFloatArray8970[0] = -f_426_;
	    ((Class151_Sub2) this).aFloatArray8970[1] = -f_427_;
	    ((Class151_Sub2) this).aFloatArray8970[2] = -f_428_;
	    float f_429_
		= (float) (1.0 / Math.sqrt((double) (f_426_ * f_426_
						     + f_427_ * f_427_
						     + f_428_ * f_428_)));
	    aFloatArray8992[0] = f_426_ * f_429_;
	    aFloatArray8992[1] = f_427_ * f_429_;
	    aFloatArray8992[2] = f_428_ * f_429_;
	    aFloatArray9005[0] = -aFloatArray8992[0];
	    aFloatArray9005[1] = -aFloatArray8992[1];
	    aFloatArray9005[2] = -aFloatArray8992[2];
	    method8297();
	    ((Class151_Sub2) this).anInt8982
		= (int) (f_426_ * 256.0F / f_427_);
	    ((Class151_Sub2) this).anInt9009
		= (int) (f_428_ * 256.0F / f_427_);
	}
	method8264();
    }
    
    public final void method2316(int i, float f, float f_430_, float f_431_,
				 float f_432_, float f_433_) {
	boolean bool = ((Class151_Sub2) this).anInt8996 != i;
	f *= 0.5F;
	f_430_ *= 0.5F;
	if (bool || aFloat9001 != f || aFloat8986 != f_430_) {
	    ((Class151_Sub2) this).anInt8996 = i;
	    aFloat9001 = f;
	    aFloat8986 = f_430_;
	    if (bool) {
		aFloat8997 = (float) (((Class151_Sub2) this).anInt8996
				      & 0xff0000) / 1.671168E7F;
		aFloat8998 = (float) (((Class151_Sub2) this).anInt8996
				      & 0xff00) / 65280.0F;
		aFloat8999 = ((float) (((Class151_Sub2) this).anInt8996 & 0xff)
			      / 255.0F);
		method8295();
	    }
	    method8363();
	}
	if (((Class151_Sub2) this).aFloatArray8994[0] != f_431_
	    || ((Class151_Sub2) this).aFloatArray8994[1] != f_432_
	    || ((Class151_Sub2) this).aFloatArray8994[2] != f_433_) {
	    ((Class151_Sub2) this).aFloatArray8994[0] = f_431_;
	    ((Class151_Sub2) this).aFloatArray8994[1] = f_432_;
	    ((Class151_Sub2) this).aFloatArray8994[2] = f_433_;
	    ((Class151_Sub2) this).aFloatArray8970[0] = -f_431_;
	    ((Class151_Sub2) this).aFloatArray8970[1] = -f_432_;
	    ((Class151_Sub2) this).aFloatArray8970[2] = -f_433_;
	    float f_434_
		= (float) (1.0 / Math.sqrt((double) (f_431_ * f_431_
						     + f_432_ * f_432_
						     + f_433_ * f_433_)));
	    aFloatArray8992[0] = f_431_ * f_434_;
	    aFloatArray8992[1] = f_432_ * f_434_;
	    aFloatArray8992[2] = f_433_ * f_434_;
	    aFloatArray9005[0] = -aFloatArray8992[0];
	    aFloatArray9005[1] = -aFloatArray8992[1];
	    aFloatArray9005[2] = -aFloatArray8992[2];
	    method8297();
	    ((Class151_Sub2) this).anInt8982
		= (int) (f_431_ * 256.0F / f_432_);
	    ((Class151_Sub2) this).anInt9009
		= (int) (f_433_ * 256.0F / f_432_);
	}
	method8264();
    }
    
    public final boolean method1994() {
	return true;
    }
    
    public final void method2370(int i) {
	((Class151_Sub2) this).anInt9007 = 0;
	for (/**/; i > 1; i >>= 1)
	    ((Class151_Sub2) this).anInt9007++;
	((Class151_Sub2) this).anInt9006
	    = 1 << ((Class151_Sub2) this).anInt9007;
    }
    
    public final boolean method2294() {
	return (((Class151_Sub2) this).aClass317_8947 != null
		&& (((Class317) ((Class151_Sub2) this).aClass317_8947)
		    .aBool3496));
    }
    
    public final void method2278(int i, int i_435_, int i_436_) {
	if (anInt9046 != i || anInt9047 != i_435_ || anInt9048 != i_436_) {
	    anInt9046 = i;
	    anInt9047 = i_435_;
	    anInt9048 = i_436_;
	    method8361();
	    method8441();
	}
    }
    
    public final Class136 method2279(int i) {
	return new Class136_Sub2_Sub1(this, i);
    }
    
    public final Class136 method2379(int i) {
	return new Class136_Sub2_Sub1(this, i);
    }
    
    public final Class136 method2280(int i) {
	return new Class136_Sub2_Sub1(this, i);
    }
    
    public final void method2253(Class136 class136) {
	((Class151_Sub2) this).aClass136_Sub2_9039 = (Class136_Sub2) class136;
    }
    
    public final void method2013() {
	if (((Class151_Sub2) this).aClass314Array9038[3] != null
	    && ((Class151_Sub2) this).aClass314Array9038[3].method4128()) {
	    ((Class151_Sub2) this).aClass317_8947
		.method4168(((Class151_Sub2) this).aClass314Array9038[3]);
	    ((Class151_Sub2) this).aClass307_9017.method4086();
	}
    }
    
    Class403 method8370() {
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476) {
	    if (!((Class151_Sub2) this).aBool8949)
		method8375();
	    return ((Class151_Sub2) this).aClass403_8942;
	}
	return ((Class151_Sub2) this).aClass403_8910;
    }
    
    public final void method8371(Class345 class345, Class345 class345_437_) {
	boolean bool = false;
	if (aClass345Array9014[anInt9010] != class345) {
	    aClass345Array9014[anInt9010] = class345;
	    method8287();
	    bool = true;
	}
	if (aClass345Array8917[anInt9010] != class345_437_) {
	    aClass345Array8917[anInt9010] = class345_437_;
	    method8330();
	    bool = true;
	}
	if (bool)
	    ((Class151_Sub2) this).anInt8918 &= ~0xd;
    }
    
    public final void method2229(int i, int i_438_, int i_439_, int i_440_) {
	if (((Class151_Sub2) this).aClass317_8947 != null) {
	    for (int i_441_ = 0;
		 i_441_ < ((Class151_Sub2) this).aClass314Array9038.length;
		 i_441_++) {
		if (((Class151_Sub2) this).aClass314Array9038[i_441_] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i_441_]
			   .method4128()
		    && !((Class151_Sub2) this).aClass314Array9038[i_441_]
			    .method4116()) {
		    if (!((Class151_Sub2) this).aClass317_8947
			     .method4163(i, i_438_, i_439_, i_440_)) {
			((Class151_Sub2) this).aClass317_8947.method4166();
			((Class151_Sub2) this).aClass317_8947 = null;
		    }
		    break;
		}
	    }
	}
    }
    
    final void method8372() {
	((Class151_Sub2) this).aBool8951 = false;
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3477) {
	    method8284();
	    method8286();
	}
    }
    
    public final void method2277(int i, int i_442_) {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4164(i, i_442_);
    }
    
    public final boolean method2292() {
	return (((Class151_Sub2) this).aClass317_8947 != null
		&& (((Class317) ((Class151_Sub2) this).aClass317_8947)
		    .aBool3496));
    }
    
    abstract void method8373(int i, Class338 class338, boolean bool,
			     boolean bool_443_);
    
    public final boolean method2295() {
	return (((Class151_Sub2) this).aClass317_8947 != null
		&& (((Class317) ((Class151_Sub2) this).aClass317_8947)
		    .aBool3496));
    }
    
    public final boolean method2010() {
	return true;
    }
    
    public boolean method2296() {
	return (((Class151_Sub2) this).aClass314Array9038[1] != null
		&& ((Class151_Sub2) this).aClass314Array9038[1].method4128());
    }
    
    public boolean method2145() {
	return (((Class151_Sub2) this).aClass314Array9038[1] != null
		&& ((Class151_Sub2) this).aClass314Array9038[1].method4128());
    }
    
    public void method2299(float f, float f_444_, float f_445_, float f_446_,
			   float f_447_) {
	Class314_Sub2.aFloat9907 = f;
	Class314_Sub2.aFloat9905 = f_444_;
	Class314_Sub2.aFloat9906 = f_445_;
	Class314_Sub2.aFloat9909 = f_446_;
	Class314_Sub2.aFloat9908 = f_447_;
    }
    
    public final Class114 method2065(int i, int i_448_, boolean bool,
				     boolean bool_449_) {
	return new Class114_Sub1(this, i, i_448_, bool, bool_449_);
    }
    
    public boolean method2368() {
	return (((Class151_Sub2) this).aClass314Array9038[2] != null
		&& ((Class151_Sub2) this).aClass314Array9038[2].method4128());
    }
    
    abstract void method8374();
    
    public void method2303(Class149 class149, float f, Class149 class149_450_,
			   float f_451_, Class149 class149_452_,
			   float f_453_) {
	int i = 0;
	if (class149_452_ == null && f_453_ > 0.0F)
	    f_453_ = 0.0F;
	if (class149_450_ == null && f_451_ > 0.0F) {
	    class149_450_ = class149_452_;
	    class149_452_ = null;
	    f_451_ = f_453_;
	    f_453_ = 0.0F;
	}
	if (class149 == null && f > 0.0F) {
	    class149 = class149_450_;
	    class149_450_ = class149_452_;
	    class149_452_ = null;
	    f = f_451_;
	    f_451_ = f_453_;
	    f_453_ = 0.0F;
	}
	Class314_Sub3.aClass149_Sub2Array9937[0] = (Class149_Sub2) class149;
	Class314_Sub3.aFloatArray9945[0] = f;
	if (f > 0.0F)
	    i++;
	Class314_Sub3.aClass149_Sub2Array9937[1]
	    = (Class149_Sub2) class149_450_;
	Class314_Sub3.aFloatArray9945[1] = f_451_;
	if (f_451_ > 0.0F)
	    i++;
	Class314_Sub3.aClass149_Sub2Array9937[2]
	    = (Class149_Sub2) class149_452_;
	Class314_Sub3.aFloatArray9945[2] = f_453_;
	if (f_453_ > 0.0F)
	    i++;
	Class314_Sub3.anInt9936 = i;
	Class314_Sub3.aFloat9935 = 1.0F - (f + f_451_ + f_453_);
    }
    
    public final boolean method2304() {
	if (((Class151_Sub2) this).aClass314Array9038[3] != null
	    && !((Class151_Sub2) this).aClass314Array9038[3].method4128()) {
	    boolean bool = (((Class151_Sub2) this).aClass317_8947.method4159
			    (((Class151_Sub2) this).aClass314Array9038[3]));
	    if (bool)
		((Class151_Sub2) this).aClass307_9017.method4086();
	    return bool;
	}
	return false;
    }
    
    public final void method2305() {
	if (((Class151_Sub2) this).aClass314Array9038[3] != null
	    && ((Class151_Sub2) this).aClass314Array9038[3].method4128()) {
	    ((Class151_Sub2) this).aClass317_8947
		.method4168(((Class151_Sub2) this).aClass314Array9038[3]);
	    ((Class151_Sub2) this).aClass307_9017.method4086();
	}
    }
    
    Class400 method8375() {
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476) {
	    if (!((Class151_Sub2) this).aBool8949) {
		((Class151_Sub2) this).aClass400_8989
		    .method4807(((Class151_Sub2) this).aClass400_8934);
		((Class151_Sub2) this).aClass400_8989
		    .method4820(((Class151_Sub2) this).aClass400_8936);
		((Class151_Sub2) this).aClass403_8942
		    .method4865(((Class151_Sub2) this).aClass400_8989);
		((Class151_Sub2) this).aBool8949 = true;
	    }
	    return ((Class151_Sub2) this).aClass400_8989;
	}
	return ((Class151_Sub2) this).aClass400_8934;
    }
    
    abstract void method8376();
    
    abstract Interface39 method8377(boolean bool);
    
    public final void method2048(Class136 class136) {
	((Class151_Sub2) this).aClass136_Sub2_9039 = (Class136_Sub2) class136;
    }
    
    final void method2073(float f, float f_454_, float f_455_, float f_456_,
			  float f_457_, float f_458_) {
	Class314_Sub1.aFloat9748 = f;
	Class314_Sub1.aFloat9736 = f_454_;
	Class314_Sub1.aFloat9739 = f_455_;
	Class314_Sub1.aFloat9735 = f_458_;
    }
    
    final void method2311(float f, float f_459_, float f_460_, float f_461_,
			  float f_462_, float f_463_) {
	Class314_Sub1.aFloat9748 = f;
	Class314_Sub1.aFloat9736 = f_459_;
	Class314_Sub1.aFloat9739 = f_460_;
	Class314_Sub1.aFloat9735 = f_463_;
    }
    
    public final void method2116(int i, Class131 class131, int i_464_,
				 int i_465_) {
	method2297(false);
	((Class151_Sub2) this).aClass114_Sub1_9021.method1514
	    (0.0F, 0.0F, (float) method2302((short) -31677).method1943(), 0.0F,
	     0.0F, (float) method2302((short) -23949).method1944(), 0,
	     class131, i_464_, i_465_);
	method2297(true);
    }
    
    public final void method2049(int i, int i_466_, float f, int i_467_,
				 int i_468_, float f_469_, int i_470_,
				 int i_471_, float f_472_, int i_473_,
				 int i_474_, int i_475_, int i_476_) {
	/* empty */
    }
    
    public Class149 method2361(int[] is) {
	return new Class149_Sub2(this, is);
    }
    
    public final void method2182(int i, int i_477_, int i_478_, int i_479_,
				 int i_480_, int i_481_, Class131 class131,
				 int i_482_, int i_483_) {
	/* empty */
    }
    
    final void method2263(int i, int i_484_, int i_485_, int i_486_,
			  int i_487_) {
	method2093(i, i_484_, i + i_485_, i_484_, i_486_, i_487_);
    }
    
    public final void method2084(Class147 class147) {
	((Class151_Sub2) this).aClass322_9059.method4288(this, class147);
    }
    
    public void method2318(float f, float f_488_, float f_489_, float[] fs) {
	float f_490_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		  * f_488_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		  * f_489_));
	float f_491_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * f_488_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * f_489_));
	if (f_490_ < -f_491_ || f_490_ > f_491_) {
	    float[] fs_492_ = fs;
	    float[] fs_493_ = fs;
	    fs[2] = Float.NaN;
	    fs_493_[1] = Float.NaN;
	    fs_492_[0] = Float.NaN;
	} else {
	    float f_494_
		= (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		      * f)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		      * f_488_)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		      * f_489_));
	    if (f_494_ < -f_491_ || f_494_ > f_491_) {
		float[] fs_495_ = fs;
		float[] fs_496_ = fs;
		fs[2] = Float.NaN;
		fs_496_[1] = Float.NaN;
		fs_495_[0] = Float.NaN;
	    } else {
		float f_497_ = ((((Class151_Sub2) this).aClass403_8959
				 .aFloatArray4592[13])
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[1]) * f
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[5]) * f_488_
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[9]) * f_489_);
		if (f_497_ < -f_491_ || f_497_ > f_491_) {
		    float[] fs_498_ = fs;
		    float[] fs_499_ = fs;
		    fs[2] = Float.NaN;
		    fs_499_[1] = Float.NaN;
		    fs_498_[0] = Float.NaN;
		} else {
		    float f_500_
			= (aClass403_8938.aFloatArray4592[14]
			   + aClass403_8938.aFloatArray4592[2] * f
			   + aClass403_8938.aFloatArray4592[6] * f_488_
			   + aClass403_8938.aFloatArray4592[10] * f_489_);
		    fs[0] = (((Class151_Sub2) this).aFloat8962
			     + (((Class151_Sub2) this).aFloat8963 * f_494_
				/ f_491_));
		    fs[1] = (((Class151_Sub2) this).aFloat9043
			     + (((Class151_Sub2) this).aFloat8979 * f_497_
				/ f_491_));
		    fs[2] = f_500_;
		}
	    }
	}
    }
    
    public final boolean method2140() {
	return true;
    }
    
    void method2329() {
	if (!((Class151_Sub2) this).aBool9060) {
	    method8253();
	    ((Class151_Sub2) this).aClass307_9017.method4086();
	    for (Class487 class487 = ((Class151_Sub2) this).aClass656_9076
					 .method7795((short) -3185);
		 class487 != null;
		 class487 = ((Class151_Sub2) this).aClass656_9076
				.method7798((byte) -101))
		((Class487_Sub26_Sub1) class487).method10250();
	    Class223.method3235(false, true, 1489038171);
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass305Array9025.length; i++) {
		if (((Class151_Sub2) this).aClass305Array9025[i] != null) {
		    ((Class151_Sub2) this).aClass305Array9025[i].method4072();
		    ((Class151_Sub2) this).aClass305Array9025[i] = null;
		}
	    }
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass314Array9038.length; i++) {
		if (((Class151_Sub2) this).aClass314Array9038[i] != null) {
		    ((Class151_Sub2) this).aClass314Array9038[i].method4130();
		    ((Class151_Sub2) this).aClass314Array9038[i] = null;
		}
	    }
	    method8336();
	    method1993(0);
	    ((Class151_Sub2) this).aBool9060 = true;
	}
    }
    
    public abstract boolean method8378();
    
    public final void method2092(int i, int i_501_, int i_502_, int i_503_,
				 int i_504_, int i_505_) {
	if (aBool9068 && anInt9057 != 0)
	    method8340(false);
	if (aBool8973) {
	    method2297(false);
	    ((Class151_Sub2) this).aClass114_Sub1_9020
		.method1502(i, i_501_, i_502_, i_503_, 0, i_504_, i_505_);
	    method2297(true);
	} else
	    ((Class151_Sub2) this).aClass114_Sub1_9020
		.method1502(i, i_501_, i_502_, i_503_, 0, i_504_, i_505_);
	if (aBool9068 && anInt9057 != 0)
	    method8340(true);
    }
    
    public void method8379(Interface30 interface30) {
	((Class151_Sub2) this).aClass39_8911
	    .method822(interface30, anObject9041, -467513085);
    }
    
    public abstract void method8380(int i, Interface33 interface33);
    
    final void method2349(int i, int i_506_, int i_507_, int i_508_,
			  int i_509_) {
	/* empty */
    }
    
    final void method2172(int i, int i_510_, int i_511_, int i_512_,
			  int i_513_) {
	/* empty */
    }
    
    public final Class134 method2246(Class139 class139, int i, int i_514_,
				     int i_515_, int i_516_) {
	return new Class134_Sub3(this, class139, i, i_515_, i_516_, i_514_);
    }
    
    public final Class132 method2352(int i, int i_517_, int[][] is,
				     int[][] is_518_, int i_519_, int i_520_,
				     int i_521_) {
	return new Class132_Sub1(this, i_520_, i_521_, i, i_517_, is, is_518_,
				 i_519_);
    }
    
    public final Class132 method2180(int i, int i_522_, int[][] is,
				     int[][] is_523_, int i_524_, int i_525_,
				     int i_526_) {
	return new Class132_Sub1(this, i_525_, i_526_, i, i_522_, is, is_523_,
				 i_524_);
    }
    
    public final Class132 method2367(int i, int i_527_, int[][] is,
				     int[][] is_528_, int i_529_, int i_530_,
				     int i_531_) {
	return new Class132_Sub1(this, i_530_, i_531_, i, i_527_, is, is_528_,
				 i_529_);
    }
    
    public final void method2355(int i, Class138 class138) {
	if (!((Class151_Sub2) this).aBool9040)
	    throw new RuntimeException("");
	((Class151_Sub2) this).anInt9042 = i;
	((Class151_Sub2) this).aClass138_9015 = class138;
	if (((Class151_Sub2) this).aBool9061) {
	    ((Class151_Sub2) this).aClass305Array9025[3].method4070();
	    ((Class151_Sub2) this).aClass305Array9025[3].method4071();
	}
    }
    
    public void method2356() {
	((Class151_Sub2) this).anInt8976 = 0;
	((Class151_Sub2) this).anInt8977 = 0;
	((Class151_Sub2) this).anInt8978 = aClass144_1857.method1943();
	((Class151_Sub2) this).anInt8950 = aClass144_1857.method1944();
	method8471();
    }
    
    public void method2050() {
	((Class151_Sub2) this).anInt8976 = 0;
	((Class151_Sub2) this).anInt8977 = 0;
	((Class151_Sub2) this).anInt8978 = aClass144_1857.method1943();
	((Class151_Sub2) this).anInt8950 = aClass144_1857.method1944();
	method8471();
    }
    
    public final void method2347(int i, int i_532_, int i_533_, int i_534_,
				 int i_535_, int i_536_) {
	if (aBool9068 && anInt9057 != 0)
	    method8340(false);
	if (aBool8973) {
	    method2297(false);
	    ((Class151_Sub2) this).aClass114_Sub1_9020
		.method1502(i, i_532_, i_533_, i_534_, 0, i_535_, i_536_);
	    method2297(true);
	} else
	    ((Class151_Sub2) this).aClass114_Sub1_9020
		.method1502(i, i_532_, i_533_, i_534_, 0, i_535_, i_536_);
	if (aBool9068 && anInt9057 != 0)
	    method8340(true);
    }
    
    public final void method2359(int i, Class487_Sub16[] class487_sub16s) {
	for (int i_537_ = 0; i_537_ < i; i_537_++)
	    aClass487_Sub16Array9003[i_537_] = class487_sub16s[i_537_];
	anInt9008 = i;
    }
    
    public final void method2385(int i) {
	((Class151_Sub2) this).anInt9007 = 0;
	for (/**/; i > 1; i >>= 1)
	    ((Class151_Sub2) this).anInt9007++;
	((Class151_Sub2) this).anInt9006
	    = 1 << ((Class151_Sub2) this).anInt9007;
    }
    
    public Class149 method2360(int[] is) {
	return new Class149_Sub2(this, is);
    }
    
    public final boolean method2002() {
	return true;
    }
    
    public void method2035(boolean bool) {
	((Class151_Sub2) this).aBool9022 = bool;
    }
    
    public void method2309(boolean bool) {
	((Class151_Sub2) this).aBool9022 = bool;
    }
    
    public void method2384(boolean bool) {
	((Class151_Sub2) this).aBool9022 = bool;
    }
    
    public final Class114 method2351(int i, int i_538_, int i_539_, int i_540_,
				     boolean bool) {
	Class114_Sub1 class114_sub1
	    = new Class114_Sub1(this, i_539_, i_540_, bool, false);
	class114_sub1.method1499(0, 0, i_539_, i_540_, i, i_538_);
	return class114_sub1;
    }
    
    final void method2389(int i, int i_541_, int i_542_, int i_543_,
			  int i_544_) {
	method2093(i, i_541_, i, i_541_ + i_542_, i_543_, i_544_);
    }
    
    public final Class403 method2088() {
	return ((Class151_Sub2) this).aClass403_8956;
    }
    
    final void method2354(int i, int i_545_, int i_546_, int i_547_,
			  int i_548_) {
	method2093(i, i_545_, i, i_545_ + i_546_, i_547_, i_548_);
    }
    
    public final void method2270(int i, Class138 class138) {
	((Class151_Sub2) this).anInt9042 = i;
	((Class151_Sub2) this).aClass138_9015 = class138;
	((Class151_Sub2) this).aBool9040 = true;
    }
    
    public void method2394() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4412();
    }
    
    public void method2328() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4412();
    }
    
    public void method2396() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4412();
    }
    
    abstract void method8381(Interface39 interface39);
    
    public void method2393() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4407();
    }
    
    public void method2399() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4407();
    }
    
    public void method2400() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4407();
    }
    
    public final void method2289(Class403 class403) {
	((Class151_Sub2) this).aClass403_8956.method4864(class403);
	method8274();
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    method8286();
    }
    
    public void method2402() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4420();
    }
    
    public void method2403() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4420();
    }
    
    abstract void method8382();
    
    public abstract boolean method8383();
    
    public abstract boolean method8384(boolean bool);
    
    public final boolean method2137() {
	return ((Class151_Sub2) this).aClass314Array9038[3] != null;
    }
    
    public final Class131 method2237(int i, int i_549_, int[] is,
				     int[] is_550_) {
	return Class131_Sub2.method8128(this, i, i_549_, is, is_550_);
    }
    
    final void method8385() {
	((Class151_Sub2) this).aClass403_8959.method4864(aClass403_8938);
	((Class151_Sub2) this).aClass403_8959
	    .method4863(((Class151_Sub2) this).aClass403_8956);
	((Class151_Sub2) this).aClass403_8959
	    .method4907(((Class151_Sub2) this).aFloatArrayArray8961[0]);
	((Class151_Sub2) this).aClass403_8959
	    .method4882(((Class151_Sub2) this).aFloatArrayArray8961[1]);
	((Class151_Sub2) this).aClass403_8959
	    .method4878(((Class151_Sub2) this).aFloatArrayArray8961[2]);
	((Class151_Sub2) this).aClass403_8959
	    .method4879(((Class151_Sub2) this).aFloatArrayArray8961[3]);
	((Class151_Sub2) this).aClass403_8959
	    .method4905(((Class151_Sub2) this).aFloatArrayArray8961[4]);
	((Class151_Sub2) this).aClass403_8959
	    .method4875(((Class151_Sub2) this).aFloatArrayArray8961[5]);
	aClass403_8960.method4864(((Class151_Sub2) this).aClass403_8959);
	method8280(aClass403_8960);
    }
    
    abstract boolean method8386(Class116 class116, Class155 class155);
    
    public void method2397() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4412();
    }
    
    public abstract Class229 method8387(String string);
    
    void method8388() {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4158();
	if (((Class151_Sub2) this).aClass314Array9038 != null) {
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass314Array9038.length; i++) {
		if (((Class151_Sub2) this).aClass314Array9038[i] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i]
			   .method4128())
		    ((Class151_Sub2) this).aClass314Array9038[i].method4131();
	    }
	}
	((Class151_Sub2) this).aClass322_9059 = new Class322(this);
	method8356();
	method8254();
	method8255();
	((Class151_Sub2) this).aClass322_9059.method4286(this);
	if (aBool9065)
	    ((Class151_Sub2) this).aClass348_9023 = new Class348(this, 1024);
    }
    
    public static void method8389() throws Exception_Sub5 {
	Class637_Sub18.method9766((byte) 90).method334("jaclib", -1953801518);
    }
    
    public static void method8390() throws Exception_Sub5 {
	Class637_Sub18.method9766((byte) 124).method334("jaclib", -1995718467);
    }
    
    public final boolean method2307() {
	return (((Class151_Sub2) this).aClass314Array9038[3] != null
		&& ((Class151_Sub2) this).aClass314Array9038[3].method4128());
    }
    
    public void method2221() {
	((Class151_Sub2) this).anInt8976 = 0;
	((Class151_Sub2) this).anInt8977 = 0;
	((Class151_Sub2) this).anInt8978 = aClass144_1857.method1943();
	((Class151_Sub2) this).anInt8950 = aClass144_1857.method1944();
	method8471();
    }
    
    public static void method8391() throws Exception_Sub5 {
	Class637_Sub18.method9766((byte) 68).method334("jaclib", -2077625942);
    }
    
    void method8392() {
	ArrayList arraylist
	    = ((Class151_Sub2) this).aClass39_8911.method821((byte) -11);
	Iterator iterator = arraylist.iterator();
	while (iterator.hasNext()) {
	    Interface30 interface30 = (Interface30) iterator.next();
	    interface30.method80();
	}
    }
    
    void method8393() {
	method8334(7);
	method8252();
    }
    
    void method8394() {
	method8334(7);
	method8252();
    }
    
    final void method8395() {
	method8295();
	method8363();
	method8294();
	method8300();
	method8297();
	method8264();
	method8299();
	method8290();
	method8419();
	method8441();
	method8343();
	method8337();
	method8357();
	method8335();
	for (int i = anInt9063 - 1; i >= 0; i--) {
	    method8313(i);
	    method8287();
	    method8330();
	    method8324();
	}
	method8339();
	method8326();
    }
    
    final void method8396() {
	method8295();
	method8363();
	method8294();
	method8300();
	method8297();
	method8264();
	method8299();
	method8290();
	method8419();
	method8441();
	method8343();
	method8337();
	method8357();
	method8335();
	for (int i = anInt9063 - 1; i >= 0; i--) {
	    method8313(i);
	    method8287();
	    method8330();
	    method8324();
	}
	method8339();
	method8326();
    }
    
    final void method8397() {
	method8295();
	method8363();
	method8294();
	method8300();
	method8297();
	method8264();
	method8299();
	method8290();
	method8419();
	method8441();
	method8343();
	method8337();
	method8357();
	method8335();
	for (int i = anInt9063 - 1; i >= 0; i--) {
	    method8313(i);
	    method8287();
	    method8330();
	    method8324();
	}
	method8339();
	method8326();
    }
    
    void method8398() {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4166();
	if (((Class151_Sub2) this).anInterface33_9074 != null)
	    ((Class151_Sub2) this).anInterface33_9074.method80();
	if (((Class151_Sub2) this).anInterface33_8945 != null)
	    ((Class151_Sub2) this).anInterface33_8945.method80();
	if (((Class151_Sub2) this).anInterface33_9075 != null)
	    ((Class151_Sub2) this).anInterface33_9075.method80();
	for (int i = 0; i < 8; i++) {
	    if (((Class151_Sub2) this).aClass134_Sub3Array9084[i] != null)
		((Class151_Sub2) this).aClass134_Sub3Array9084[i].method8730();
	}
	if (((Class151_Sub2) this).aClass322_9059 != null)
	    ((Class151_Sub2) this).aClass322_9059.method4290();
	if (((Class151_Sub2) this).anInterface39_9082 != null)
	    ((Class151_Sub2) this).anInterface39_9082.method80();
	if (((Class151_Sub2) this).aClass348_9023 != null) {
	    ((Class151_Sub2) this).aClass348_9023.method4402();
	    ((Class151_Sub2) this).aClass348_9023 = null;
	}
    }
    
    void method8399() {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4158();
	if (((Class151_Sub2) this).aClass314Array9038 != null) {
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass314Array9038.length; i++) {
		if (((Class151_Sub2) this).aClass314Array9038[i] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i]
			   .method4128())
		    ((Class151_Sub2) this).aClass314Array9038[i].method4131();
	    }
	}
	((Class151_Sub2) this).aClass322_9059 = new Class322(this);
	method8356();
	method8254();
	method8255();
	((Class151_Sub2) this).aClass322_9059.method4286(this);
	if (aBool9065)
	    ((Class151_Sub2) this).aClass348_9023 = new Class348(this, 1024);
    }
    
    public final Class132 method2286(int i, int i_551_, int[][] is,
				     int[][] is_552_, int i_553_, int i_554_,
				     int i_555_) {
	return new Class132_Sub1(this, i_554_, i_555_, i, i_551_, is, is_552_,
				 i_553_);
    }
    
    public abstract float method8400();
    
    public abstract float method8401();
    
    abstract void method8402();
    
    public void method2317(float f, float f_556_, float f_557_, float[] fs) {
	float f_558_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		  * f_556_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		  * f_557_));
	float f_559_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * f_556_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * f_557_));
	if (f_558_ < -f_559_ || f_558_ > f_559_) {
	    float[] fs_560_ = fs;
	    float[] fs_561_ = fs;
	    fs[2] = Float.NaN;
	    fs_561_[1] = Float.NaN;
	    fs_560_[0] = Float.NaN;
	} else {
	    float f_562_
		= (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		      * f)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		      * f_556_)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		      * f_557_));
	    if (f_562_ < -f_559_ || f_562_ > f_559_) {
		float[] fs_563_ = fs;
		float[] fs_564_ = fs;
		fs[2] = Float.NaN;
		fs_564_[1] = Float.NaN;
		fs_563_[0] = Float.NaN;
	    } else {
		float f_565_ = ((((Class151_Sub2) this).aClass403_8959
				 .aFloatArray4592[13])
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[1]) * f
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[5]) * f_556_
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[9]) * f_557_);
		if (f_565_ < -f_559_ || f_565_ > f_559_) {
		    float[] fs_566_ = fs;
		    float[] fs_567_ = fs;
		    fs[2] = Float.NaN;
		    fs_567_[1] = Float.NaN;
		    fs_566_[0] = Float.NaN;
		} else {
		    float f_568_
			= (aClass403_8938.aFloatArray4592[14]
			   + aClass403_8938.aFloatArray4592[2] * f
			   + aClass403_8938.aFloatArray4592[6] * f_556_
			   + aClass403_8938.aFloatArray4592[10] * f_557_);
		    fs[0] = (((Class151_Sub2) this).aFloat8962
			     + (((Class151_Sub2) this).aFloat8963 * f_562_
				/ f_559_));
		    fs[1] = (((Class151_Sub2) this).aFloat9043
			     + (((Class151_Sub2) this).aFloat8979 * f_565_
				/ f_559_));
		    fs[2] = f_568_;
		}
	    }
	}
    }
    
    void method8403() {
	method8334(7);
	method8252();
    }
    
    final void method8404(boolean bool) {
	if (bool != aBool9013) {
	    aBool9013 = bool;
	    method8419();
	    ((Class151_Sub2) this).anInt8918 &= ~0xf;
	}
    }
    
    abstract void method8405(int i);
    
    public final int method2407(int i, int i_569_) {
	return i & i_569_ ^ i_569_;
    }
    
    public void method2214(int i, int i_570_, int i_571_, int i_572_,
			   int i_573_, int i_574_, int i_575_, int i_576_,
			   int i_577_) {
	float f = (float) i_571_ - (float) i;
	float f_578_ = (float) i_572_ - (float) i_570_;
	if (f == 0.0F && f_578_ == 0.0F)
	    f = 1.0F;
	else {
	    float f_579_
		= (float) (1.0
			   / Math.sqrt((double) (f * f + f_578_ * f_578_)));
	    f *= f_579_;
	    f_578_ *= f_579_;
	}
	method8369();
	Class305 class305 = ((Class151_Sub2) this).aClass305Array9025[13];
	class305.method4069();
	class305.method4078(i_573_);
	method8348(i_574_);
	class305.method4073();
	method8340(false);
	i_577_ %= i_576_ + i_575_;
	float f_580_ = f * (float) i_575_;
	float f_581_ = f_578_ * (float) i_575_;
	float f_582_ = 0.0F;
	float f_583_ = 0.0F;
	float f_584_ = f_580_;
	float f_585_ = f_581_;
	if (i_577_ > i_575_) {
	    f_582_ = f * (float) (i_575_ + i_576_ - i_577_);
	    f_583_ = f_578_ * (float) (i_575_ + i_576_ - i_577_);
	} else {
	    f_584_ = f * (float) (i_575_ - i_577_);
	    f_585_ = f_578_ * (float) (i_575_ - i_577_);
	}
	float f_586_ = (float) i + f_582_;
	float f_587_ = (float) i_570_ + f_583_;
	float f_588_ = f * (float) i_576_;
	float f_589_ = f_578_ * (float) i_576_;
	for (;;) {
	    if (i_571_ > i) {
		if (f_586_ > (float) i_571_)
		    break;
		if (f_586_ + f_584_ > (float) i_571_)
		    f_584_ = (float) i_571_ - f_586_;
	    } else {
		if (f_586_ < (float) i_571_)
		    break;
		if (f_586_ + f_584_ < (float) i_571_)
		    f_584_ = (float) i_571_ - f_586_;
	    }
	    if (i_572_ > i_570_) {
		if (f_587_ > (float) i_572_)
		    break;
		if (f_587_ + f_585_ > (float) i_572_)
		    f_585_ = (float) i_572_ - f_587_;
	    } else {
		if (f_587_ < (float) i_572_)
		    break;
		if (f_587_ + f_585_ < (float) i_572_)
		    f_585_ = (float) i_572_ - f_587_;
	    }
	    if (!method8256(f_586_, f_587_, 0.0F, f_586_ + f_584_,
			    f_587_ + f_585_, 0.0F))
		return;
	    method8459();
	    f_586_ += f_588_ + f_584_;
	    f_587_ += f_589_ + f_585_;
	    f_584_ = f_580_;
	    f_585_ = f_581_;
	}
	method8340(true);
	class305.method4068();
    }
    
    final void method2241(int i, int i_590_, int i_591_, int i_592_,
			  int i_593_) {
	method2093(i, i_590_, i, i_590_ + i_591_, i_592_, i_593_);
    }
    
    abstract Interface31 method8406(Class116 class116, int i, int i_594_,
				    boolean bool, byte[] is, int i_595_,
				    int i_596_);
    
    final void method8407() {
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476) {
	    anInt8981 = ((Class151_Sub2) this).anInt8976;
	    anInt9002 = ((Class151_Sub2) this).anInt8977;
	    anInt9062 = ((Class151_Sub2) this).anInt8978;
	    anInt8983 = ((Class151_Sub2) this).anInt8950;
	    aFloat8966 = ((Class151_Sub2) this).aFloat8968;
	    aFloat9004 = ((Class151_Sub2) this).aFloat8969;
	} else {
	    anInt8981 = 0;
	    anInt9002 = 0;
	    anInt9062 = aClass144_1857.method1943();
	    anInt8983 = aClass144_1857.method1944();
	    aFloat8966 = 0.0F;
	    aFloat9004 = 1.0F;
	}
	method8326();
	((Class151_Sub2) this).aFloat8963
	    = (float) ((Class151_Sub2) this).anInt8978 / 2.0F;
	((Class151_Sub2) this).aFloat8979
	    = (float) ((Class151_Sub2) this).anInt8950 / 2.0F;
	((Class151_Sub2) this).aFloat8962
	    = ((float) ((Class151_Sub2) this).anInt8976
	       + ((Class151_Sub2) this).aFloat8963);
	((Class151_Sub2) this).aFloat9043
	    = ((float) ((Class151_Sub2) this).anInt8977
	       + ((Class151_Sub2) this).aFloat8979);
    }
    
    abstract void method8408();
    
    abstract void method8409();
    
    abstract void method8410();
    
    abstract void method8411();
    
    final Class403 method8412() {
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476)
	    return ((Class151_Sub2) this).aClass403_8939;
	return aClass403_9028;
    }
    
    abstract void method8413();
    
    abstract void method8414();
    
    static {
	aClass403_9028 = new Class403();
    }
    
    public final void method2178(boolean bool) {
	aBool8973 = bool;
	method8419();
    }
    
    public void method2203(float f, float f_597_, float f_598_, float[] fs) {
	float f_599_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[14]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[2] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[6]
		  * f_597_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[10]
		  * f_598_));
	float f_600_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * f_597_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * f_598_));
	if (f_599_ < -f_600_ || f_599_ > f_600_) {
	    float[] fs_601_ = fs;
	    float[] fs_602_ = fs;
	    fs[2] = Float.NaN;
	    fs_602_[1] = Float.NaN;
	    fs_601_[0] = Float.NaN;
	} else {
	    float f_603_
		= (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0]
		      * f)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		      * f_597_)
		   + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		      * f_598_));
	    if (f_603_ < -f_600_ || f_603_ > f_600_) {
		float[] fs_604_ = fs;
		float[] fs_605_ = fs;
		fs[2] = Float.NaN;
		fs_605_[1] = Float.NaN;
		fs_604_[0] = Float.NaN;
	    } else {
		float f_606_ = ((((Class151_Sub2) this).aClass403_8959
				 .aFloatArray4592[13])
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[1]) * f
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[5]) * f_597_
				+ (((Class151_Sub2) this).aClass403_8959
				   .aFloatArray4592[9]) * f_598_);
		if (f_606_ < -f_600_ || f_606_ > f_600_) {
		    float[] fs_607_ = fs;
		    float[] fs_608_ = fs;
		    fs[2] = Float.NaN;
		    fs_608_[1] = Float.NaN;
		    fs_607_[0] = Float.NaN;
		} else {
		    float f_609_
			= (aClass403_8938.aFloatArray4592[14]
			   + aClass403_8938.aFloatArray4592[2] * f
			   + aClass403_8938.aFloatArray4592[6] * f_597_
			   + aClass403_8938.aFloatArray4592[10] * f_598_);
		    fs[0] = (((Class151_Sub2) this).aFloat8962
			     + (((Class151_Sub2) this).aFloat8963 * f_603_
				/ f_600_));
		    fs[1] = (((Class151_Sub2) this).aFloat9043
			     + (((Class151_Sub2) this).aFloat8979 * f_606_
				/ f_600_));
		    fs[2] = f_609_;
		}
	    }
	}
    }
    
    public final void method2162(int i, int i_610_, int i_611_, int i_612_,
				 int i_613_, int i_614_) {
	if (aBool9068 && anInt9057 != 0)
	    method8340(false);
	if (aBool8973) {
	    method2297(false);
	    ((Class151_Sub2) this).aClass114_Sub1_9020
		.method1502(i, i_610_, i_611_, i_612_, 0, i_613_, i_614_);
	    method2297(true);
	} else
	    ((Class151_Sub2) this).aClass114_Sub1_9020
		.method1502(i, i_610_, i_611_, i_612_, 0, i_613_, i_614_);
	if (aBool9068 && anInt9057 != 0)
	    method8340(true);
    }
    
    Class232 method8415(byte[] is) {
	if (is == null)
	    return null;
	Class232 class232;
	try {
	    class232 = new Class232(is);
	} catch (Exception exception) {
	    return null;
	}
	return class232;
    }
    
    public abstract void method8416(Class403 class403, Class403 class403_615_,
				    Class403 class403_616_);
    
    public abstract void method8417();
    
    public final void method8418(int i, Class338 class338) {
	method8319(i, class338, false, false);
    }
    
    public final void method2096(int i, int i_617_, int i_618_, int i_619_) {
	if (((Class151_Sub2) this).aClass317_8947 != null) {
	    for (int i_620_ = 0;
		 i_620_ < ((Class151_Sub2) this).aClass314Array9038.length;
		 i_620_++) {
		if (((Class151_Sub2) this).aClass314Array9038[i_620_] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i_620_]
			   .method4128()
		    && !((Class151_Sub2) this).aClass314Array9038[i_620_]
			    .method4116()) {
		    if (!((Class151_Sub2) this).aClass317_8947
			     .method4163(i, i_617_, i_618_, i_619_)) {
			((Class151_Sub2) this).aClass317_8947.method4166();
			((Class151_Sub2) this).aClass317_8947 = null;
		    }
		    break;
		}
	    }
	}
    }
    
    abstract void method8419();
    
    public final boolean method1995() {
	return true;
    }
    
    public void method2228(boolean bool) {
	((Class151_Sub2) this).aBool9022 = bool;
    }
    
    abstract void method8420();
    
    public final int method2340(int i, int i_621_) {
	return i | i_621_;
    }
    
    public final void method8421() {
	((Class151_Sub2) this).anInterface40Array9011
	    = new Interface40[anInt9063];
	aClass403Array9033 = new Class403[anInt9063];
	aClass340Array9031 = new Class340[anInt9063];
	aClass345Array9014 = new Class345[anInt9063];
	aClass345Array8917 = new Class345[anInt9063];
	for (int i = 0; i < anInt9063; i++) {
	    aClass345Array8917[i] = Class345.aClass345_3669;
	    aClass345Array9014[i] = Class345.aClass345_3669;
	    aClass340Array9031[i] = Class340.aClass340_3636;
	    aClass403Array9033[i] = new Class403();
	}
	aClass487_Sub16Array9003 = new Class487_Sub16[anInt8964 - 2];
	int[] is = { -1 };
	anInterface31_8980 = method8496(1, 1, false, is, 0, 0);
	is[0] = -16777216;
	((Class151_Sub2) this).anInterface31_9019
	    = method8496(1, 1, false, is, 0, 0);
	method1992(new Class487_Sub26_Sub1(262144));
	((Class151_Sub2) this).aClass325_9012
	    = method8342(new Class311[]
			 { new Class311(new Class324[]
					{ Class324.aClass324_3561,
					  Class324.aClass324_3552 }) });
	((Class151_Sub2) this).aClass325_8954
	    = method8342(new Class311[]
			 { new Class311(new Class324[]
					{ Class324.aClass324_3561,
					  Class324.aClass324_3562 }) });
	((Class151_Sub2) this).aClass325_9079
	    = method8342(new Class311[]
			 { new Class311(Class324.aClass324_3561),
			   new Class311(Class324.aClass324_3562),
			   new Class311(Class324.aClass324_3552),
			   new Class311(Class324.aClass324_3558) });
	((Class151_Sub2) this).aClass325_8923
	    = method8342(new Class311[]
			 { new Class311(Class324.aClass324_3561),
			   new Class311(Class324.aClass324_3562),
			   new Class311(Class324.aClass324_3552) });
	for (int i = 0; i < 8; i++) {
	    ((Class151_Sub2) this).aClass134_Sub3Array9083[i]
		= new Class134_Sub3(this, 0, 0, false, false);
	    ((Class151_Sub2) this).aClass134_Sub3Array9084[i]
		= new Class134_Sub3(this, 0, 0, true, true);
	}
	method8250();
	((Class151_Sub2) this).anInterface39_9082 = method8341(true);
	method8251();
	method2036();
	method2220();
	((Class151_Sub2) this).aClass114_Sub1_9020
	    = new Class114_Sub1(this, anInterface31_8980);
	((Class151_Sub2) this).aClass114_Sub1_9021
	    = new Class114_Sub1(this,
				((Class151_Sub2) this).anInterface31_9019);
	method2176(3, 0);
    }
    
    public void method2315(float f, float f_622_, float f_623_, float[] fs) {
	float f_624_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[15]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[3] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[7]
		  * f_622_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[11]
		  * f_623_));
	float f_625_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[12]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[0] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[4]
		  * f_622_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[8]
		  * f_623_));
	float f_626_
	    = (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[13]
	       + ((Class151_Sub2) this).aClass403_8959.aFloatArray4592[1] * f
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[5]
		  * f_622_)
	       + (((Class151_Sub2) this).aClass403_8959.aFloatArray4592[9]
		  * f_623_));
	float f_627_ = (aClass403_8938.aFloatArray4592[14]
			+ aClass403_8938.aFloatArray4592[2] * f
			+ aClass403_8938.aFloatArray4592[6] * f_622_
			+ aClass403_8938.aFloatArray4592[10] * f_623_);
	fs[0] = (((Class151_Sub2) this).aFloat8962
		 + ((Class151_Sub2) this).aFloat8963 * f_625_ / f_624_);
	fs[1] = (((Class151_Sub2) this).aFloat9043
		 + ((Class151_Sub2) this).aFloat8979 * f_626_ / f_624_);
	fs[2] = f_627_;
    }
    
    public void method2380(boolean bool) {
	((Class151_Sub2) this).aBool9022 = bool;
    }
    
    abstract Interface31 method8422(Class116 class116, int i, int i_628_,
				    boolean bool, float[] fs, int i_629_,
				    int i_630_);
    
    public final void method2190(int i, int i_631_, int i_632_, int i_633_) {
	if (((Class151_Sub2) this).aClass317_8947 != null) {
	    for (int i_634_ = 0;
		 i_634_ < ((Class151_Sub2) this).aClass314Array9038.length;
		 i_634_++) {
		if (((Class151_Sub2) this).aClass314Array9038[i_634_] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i_634_]
			   .method4128()
		    && !((Class151_Sub2) this).aClass314Array9038[i_634_]
			    .method4116()) {
		    if (!((Class151_Sub2) this).aClass317_8947
			     .method4163(i, i_631_, i_632_, i_633_)) {
			((Class151_Sub2) this).aClass317_8947.method4166();
			((Class151_Sub2) this).aClass317_8947 = null;
		    }
		    break;
		}
	    }
	}
    }
    
    public final boolean method2375() {
	return true;
    }
    
    public final void method2011(float f) {
	if (aFloat9000 != f) {
	    aFloat9000 = f;
	    method8295();
	    method8264();
	}
    }
    
    abstract void method8423();
    
    abstract void method8424(int i);
    
    abstract void method8425();
    
    abstract void method8426();
    
    public final void method2191(int i, int i_635_, int i_636_) {
	if (anInt9046 != i || anInt9047 != i_635_ || anInt9048 != i_636_) {
	    anInt9046 = i;
	    anInt9047 = i_635_;
	    anInt9048 = i_636_;
	    method8361();
	    method8441();
	}
    }
    
    boolean method2223(int i, int i_637_, int i_638_, int i_639_,
		       Class400 class400, Class375 class375) {
	Class403 class403 = aClass403_9081;
	class403.method4865(class400);
	class403.method4863(((Class151_Sub2) this).aClass403_8959);
	return class375.method4596(i, i_637_, i_638_, i_639_, class403,
				   ((Class151_Sub2) this).aFloat8962,
				   ((Class151_Sub2) this).aFloat9043,
				   ((Class151_Sub2) this).aFloat8963,
				   ((Class151_Sub2) this).aFloat8979);
    }
    
    abstract void method8427();
    
    abstract void method8428();
    
    abstract void method8429();
    
    abstract void method8430();
    
    void method2330() {
	if (!((Class151_Sub2) this).aBool9060) {
	    method8253();
	    ((Class151_Sub2) this).aClass307_9017.method4086();
	    for (Class487 class487 = ((Class151_Sub2) this).aClass656_9076
					 .method7795((short) 6070);
		 class487 != null;
		 class487 = ((Class151_Sub2) this).aClass656_9076
				.method7798((byte) -65))
		((Class487_Sub26_Sub1) class487).method10250();
	    Class223.method3235(false, true, -1515076955);
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass305Array9025.length; i++) {
		if (((Class151_Sub2) this).aClass305Array9025[i] != null) {
		    ((Class151_Sub2) this).aClass305Array9025[i].method4072();
		    ((Class151_Sub2) this).aClass305Array9025[i] = null;
		}
	    }
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass314Array9038.length; i++) {
		if (((Class151_Sub2) this).aClass314Array9038[i] != null) {
		    ((Class151_Sub2) this).aClass314Array9038[i].method4130();
		    ((Class151_Sub2) this).aClass314Array9038[i] = null;
		}
	    }
	    method8336();
	    method1993(0);
	    ((Class151_Sub2) this).aBool9060 = true;
	}
    }
    
    abstract void method8431();
    
    abstract void method8432();
    
    public abstract String method2149();
    
    abstract Interface31 method8433(Class116 class116, Class155 class155,
				    int i, int i_640_);
    
    abstract void method8434();
    
    abstract void method8435();
    
    abstract void method8436();
    
    abstract void method8437();
    
    void method8438() {
	if (((Class151_Sub2) this).aClass317_8947 != null)
	    ((Class151_Sub2) this).aClass317_8947.method4158();
	if (((Class151_Sub2) this).aClass314Array9038 != null) {
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass314Array9038.length; i++) {
		if (((Class151_Sub2) this).aClass314Array9038[i] != null
		    && ((Class151_Sub2) this).aClass314Array9038[i]
			   .method4128())
		    ((Class151_Sub2) this).aClass314Array9038[i].method4131();
	    }
	}
	((Class151_Sub2) this).aClass322_9059 = new Class322(this);
	method8356();
	method8254();
	method8255();
	((Class151_Sub2) this).aClass322_9059.method4286(this);
	if (aBool9065)
	    ((Class151_Sub2) this).aClass348_9023 = new Class348(this, 1024);
    }
    
    public final Class114 method1987(int i, int i_641_, boolean bool,
				     boolean bool_642_) {
	return new Class114_Sub1(this, i, i_641_, bool, bool_642_);
    }
    
    abstract void method8439();
    
    public boolean method2104() {
	return (((Class151_Sub2) this).aClass314Array9038[2] != null
		&& ((Class151_Sub2) this).aClass314Array9038[2].method4128());
    }
    
    void method2052() {
	if (!((Class151_Sub2) this).aBool9060) {
	    method8253();
	    ((Class151_Sub2) this).aClass307_9017.method4086();
	    for (Class487 class487 = ((Class151_Sub2) this).aClass656_9076
					 .method7795((short) -439);
		 class487 != null;
		 class487 = ((Class151_Sub2) this).aClass656_9076
				.method7798((byte) -87))
		((Class487_Sub26_Sub1) class487).method10250();
	    Class223.method3235(false, true, 1847308270);
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass305Array9025.length; i++) {
		if (((Class151_Sub2) this).aClass305Array9025[i] != null) {
		    ((Class151_Sub2) this).aClass305Array9025[i].method4072();
		    ((Class151_Sub2) this).aClass305Array9025[i] = null;
		}
	    }
	    for (int i = 0;
		 i < ((Class151_Sub2) this).aClass314Array9038.length; i++) {
		if (((Class151_Sub2) this).aClass314Array9038[i] != null) {
		    ((Class151_Sub2) this).aClass314Array9038[i].method4130();
		    ((Class151_Sub2) this).aClass314Array9038[i] = null;
		}
	    }
	    method8336();
	    method1993(0);
	    ((Class151_Sub2) this).aBool9060 = true;
	}
    }
    
    abstract boolean method8440(Class116 class116, Class155 class155);
    
    abstract void method8441();
    
    abstract void method8442();
    
    abstract boolean method8443(Class116 class116, Class155 class155);
    
    abstract boolean method8444(Class116 class116, Class155 class155);
    
    abstract boolean method8445(Class116 class116, Class155 class155);
    
    public final boolean method2138() {
	return (((Class151_Sub2) this).aClass314Array9038[3] != null
		&& ((Class151_Sub2) this).aClass314Array9038[3].method4128());
    }
    
    abstract Interface31 method8446(Class116 class116, int i, int i_643_,
				    boolean bool, byte[] is, int i_644_,
				    int i_645_);
    
    public final boolean method2342() {
	return false;
    }
    
    public final boolean method2308() {
	return (((Class151_Sub2) this).aClass314Array9038[3] != null
		&& ((Class151_Sub2) this).aClass314Array9038[3].method4128());
    }
    
    abstract Interface31 method8447(Class116 class116, int i, int i_646_,
				    boolean bool, float[] fs, int i_647_,
				    int i_648_);
    
    abstract Interface31 method8448(Class116 class116, int i, int i_649_,
				    boolean bool, float[] fs, int i_650_,
				    int i_651_);
    
    abstract Interface31 method8449(int i, int i_652_, boolean bool, int[] is,
				    int i_653_, int i_654_);
    
    abstract Interface31 method8450(int i, int i_655_, boolean bool, int[] is,
				    int i_656_, int i_657_);
    
    abstract Interface31 method8451(int i, int i_658_, boolean bool, int[] is,
				    int i_659_, int i_660_);
    
    abstract Interface31 method8452(int i, int i_661_, boolean bool, int[] is,
				    int i_662_, int i_663_);
    
    abstract Interface37 method8453(int i, boolean bool, int[][] is);
    
    abstract Interface29 method8454(Class116 class116, int i, int i_664_,
				    int i_665_, boolean bool, byte[] is);
    
    abstract Interface29 method8455(Class116 class116, int i, int i_666_,
				    int i_667_, boolean bool, byte[] is);
    
    abstract Interface34 method8456(Class116 class116, Class155 class155,
				    int i, int i_668_);
    
    abstract Interface34 method8457(Class116 class116, Class155 class155,
				    int i, int i_669_);
    
    public final boolean method2129() {
	return true;
    }
    
    final void method8458() {
	((Class151_Sub2) this).aBool8949 = false;
    }
    
    final void method8459() {
	method8380(0, ((Class151_Sub2) this).anInterface33_8945);
	method8463(((Class151_Sub2) this).aClass325_9067);
	method8462(Class342.aClass342_3643, 0, 1);
    }
    
    public abstract void method8460();
    
    boolean method8461() {
	if (((Class151_Sub2) this).aClass314Array9038[1] != null
	    && !((Class151_Sub2) this).aClass314Array9038[1].method4128()) {
	    boolean bool = (((Class151_Sub2) this).aClass317_8947.method4159
			    (((Class151_Sub2) this).aClass314Array9038[1]));
	    if (bool)
		((Class151_Sub2) this).aClass307_9017.method4086();
	    return bool;
	}
	return false;
    }
    
    public abstract void method8462(Class342 class342, int i, int i_670_);
    
    public abstract void method8463(Class325 class325);
    
    final void method8464() {
	((Class151_Sub2) this).aClass403_8959.method4864(aClass403_8938);
	((Class151_Sub2) this).aClass403_8959
	    .method4863(((Class151_Sub2) this).aClass403_8956);
	((Class151_Sub2) this).aClass403_8959
	    .method4907(((Class151_Sub2) this).aFloatArrayArray8961[0]);
	((Class151_Sub2) this).aClass403_8959
	    .method4882(((Class151_Sub2) this).aFloatArrayArray8961[1]);
	((Class151_Sub2) this).aClass403_8959
	    .method4878(((Class151_Sub2) this).aFloatArrayArray8961[2]);
	((Class151_Sub2) this).aClass403_8959
	    .method4879(((Class151_Sub2) this).aFloatArrayArray8961[3]);
	((Class151_Sub2) this).aClass403_8959
	    .method4905(((Class151_Sub2) this).aFloatArrayArray8961[4]);
	((Class151_Sub2) this).aClass403_8959
	    .method4875(((Class151_Sub2) this).aFloatArrayArray8961[5]);
	aClass403_8960.method4864(((Class151_Sub2) this).aClass403_8959);
	method8280(aClass403_8960);
    }
    
    public final void method2037(int i, float f, float f_671_, float f_672_,
				 float f_673_, float f_674_) {
	boolean bool = ((Class151_Sub2) this).anInt8996 != i;
	f *= 0.5F;
	f_671_ *= 0.5F;
	if (bool || aFloat9001 != f || aFloat8986 != f_671_) {
	    ((Class151_Sub2) this).anInt8996 = i;
	    aFloat9001 = f;
	    aFloat8986 = f_671_;
	    if (bool) {
		aFloat8997 = (float) (((Class151_Sub2) this).anInt8996
				      & 0xff0000) / 1.671168E7F;
		aFloat8998 = (float) (((Class151_Sub2) this).anInt8996
				      & 0xff00) / 65280.0F;
		aFloat8999 = ((float) (((Class151_Sub2) this).anInt8996 & 0xff)
			      / 255.0F);
		method8295();
	    }
	    method8363();
	}
	if (((Class151_Sub2) this).aFloatArray8994[0] != f_672_
	    || ((Class151_Sub2) this).aFloatArray8994[1] != f_673_
	    || ((Class151_Sub2) this).aFloatArray8994[2] != f_674_) {
	    ((Class151_Sub2) this).aFloatArray8994[0] = f_672_;
	    ((Class151_Sub2) this).aFloatArray8994[1] = f_673_;
	    ((Class151_Sub2) this).aFloatArray8994[2] = f_674_;
	    ((Class151_Sub2) this).aFloatArray8970[0] = -f_672_;
	    ((Class151_Sub2) this).aFloatArray8970[1] = -f_673_;
	    ((Class151_Sub2) this).aFloatArray8970[2] = -f_674_;
	    float f_675_
		= (float) (1.0 / Math.sqrt((double) (f_672_ * f_672_
						     + f_673_ * f_673_
						     + f_674_ * f_674_)));
	    aFloatArray8992[0] = f_672_ * f_675_;
	    aFloatArray8992[1] = f_673_ * f_675_;
	    aFloatArray8992[2] = f_674_ * f_675_;
	    aFloatArray9005[0] = -aFloatArray8992[0];
	    aFloatArray9005[1] = -aFloatArray8992[1];
	    aFloatArray9005[2] = -aFloatArray8992[2];
	    method8297();
	    ((Class151_Sub2) this).anInt8982
		= (int) (f_672_ * 256.0F / f_673_);
	    ((Class151_Sub2) this).anInt9009
		= (int) (f_674_ * 256.0F / f_673_);
	}
	method8264();
    }
    
    abstract void method8465(int i, Class338 class338, boolean bool);
    
    public final boolean method2139() {
	return true;
    }
    
    public final int method2408(int i, int i_676_) {
	return i & i_676_ ^ i_676_;
    }
    
    abstract void method8466();
    
    final boolean method8467() {
	return aBool8921;
    }
    
    abstract void method8468();
    
    abstract void method8469();
    
    abstract void method8470();
    
    public final void method2086() {
	if (((Class151_Sub2) this).aClass314Array9038[3] != null
	    && ((Class151_Sub2) this).aClass314Array9038[3].method4128()) {
	    ((Class151_Sub2) this).aClass317_8947
		.method4168(((Class151_Sub2) this).aClass314Array9038[3]);
	    ((Class151_Sub2) this).aClass307_9017.method4086();
	}
    }
    
    public final Class487_Sub26 method2291(int i) {
	Class487_Sub26_Sub1 class487_sub26_sub1 = new Class487_Sub26_Sub1(i);
	((Class151_Sub2) this).aClass656_9076.method7791(class487_sub26_sub1,
							 (byte) 3);
	return class487_sub26_sub1;
    }
    
    final void method8471() {
	if (((Class151_Sub2) this).aClass316_8948 == Class316.aClass316_3476) {
	    anInt8981 = ((Class151_Sub2) this).anInt8976;
	    anInt9002 = ((Class151_Sub2) this).anInt8977;
	    anInt9062 = ((Class151_Sub2) this).anInt8978;
	    anInt8983 = ((Class151_Sub2) this).anInt8950;
	    aFloat8966 = ((Class151_Sub2) this).aFloat8968;
	    aFloat9004 = ((Class151_Sub2) this).aFloat8969;
	} else {
	    anInt8981 = 0;
	    anInt9002 = 0;
	    anInt9062 = aClass144_1857.method1943();
	    anInt8983 = aClass144_1857.method1944();
	    aFloat8966 = 0.0F;
	    aFloat9004 = 1.0F;
	}
	method8326();
	((Class151_Sub2) this).aFloat8963
	    = (float) ((Class151_Sub2) this).anInt8978 / 2.0F;
	((Class151_Sub2) this).aFloat8979
	    = (float) ((Class151_Sub2) this).anInt8950 / 2.0F;
	((Class151_Sub2) this).aFloat8962
	    = ((float) ((Class151_Sub2) this).anInt8976
	       + ((Class151_Sub2) this).aFloat8963);
	((Class151_Sub2) this).aFloat9043
	    = ((float) ((Class151_Sub2) this).anInt8977
	       + ((Class151_Sub2) this).aFloat8979);
    }
    
    abstract void method8472();
    
    abstract void method8473();
    
    final boolean method8474() {
	return aBool8921;
    }
    
    abstract void method8475();
    
    boolean method2060(int i, int i_677_, int i_678_, int i_679_,
		       Class400 class400, Class375 class375) {
	Class403 class403 = aClass403_9081;
	class403.method4865(class400);
	class403.method4863(((Class151_Sub2) this).aClass403_8959);
	return class375.method4596(i, i_677_, i_678_, i_679_, class403,
				   ((Class151_Sub2) this).aFloat8962,
				   ((Class151_Sub2) this).aFloat9043,
				   ((Class151_Sub2) this).aFloat8963,
				   ((Class151_Sub2) this).aFloat8979);
    }
    
    public final void method2297(boolean bool) {
	aBool8973 = bool;
	method8419();
    }
    
    public final int method2080(int i, int i_680_) {
	return i & i_680_ ^ i_680_;
    }
    
    Class312 method8476() {
	if (((Class151_Sub2) this).aClass348_9023 == null)
	    return Class312.aClass312_3465;
	return ((Class151_Sub2) this).aClass348_9023.method4409();
    }
    
    abstract void method8477();
    
    abstract void method8478();
    
    abstract void method8479(boolean bool);
    
    abstract Interface33 method8480(boolean bool);
    
    abstract Class325 method8481(Class311[] class311s);
    
    abstract Class325 method8482(Class311[] class311s);
    
    public abstract void method8483(Class325 class325);
    
    public final void method2047(int i, int i_681_, int i_682_, int i_683_,
				 int i_684_, int i_685_) {
	i_682_--;
	i_683_--;
	int i_686_ = 0;
	if (this instanceof Class151_Sub2_Sub2)
	    i_686_ = -1;
	if (aBool9068 && anInt9057 != 0)
	    method8340(false);
	method2093(i, i_681_ + i_686_, i + i_682_, i_681_ + i_686_, i_684_,
		   i_685_);
	method2093(i, i_681_ + i_683_ + i_686_, i + i_682_,
		   i_681_ + i_683_ + i_686_, i_684_, i_685_);
	method2093(i, i_681_, i, i_681_ + i_683_, i_684_, i_685_);
	method2093(i + i_682_, i_681_, i + i_682_, i_681_ + i_683_, i_684_,
		   i_685_);
	if (aBool9068 && anInt9057 != 0)
	    method8340(true);
    }
    
    public abstract void method8484(int i, Interface33 interface33);
    
    public abstract boolean method8485();
    
    abstract void method8486(Interface39 interface39);
    
    abstract void method8487();
    
    public boolean method2210() {
	return (((Class151_Sub2) this).aClass314Array9038[2] != null
		&& ((Class151_Sub2) this).aClass314Array9038[2].method4128());
    }
    
    public Class400 method2346() {
	return ((Class151_Sub2) this).aClass400_8936;
    }
    
    public void method2401() {
	if (((Class151_Sub2) this).aClass348_9023 != null)
	    ((Class151_Sub2) this).aClass348_9023.method4420();
    }
    
    public abstract void method8488(Class342 class342, int i, int i_687_);
    
    public abstract void method8489(Class342 class342, int i, int i_688_);
    
    abstract void method8490(Interface39 interface39, Class342 class342, int i,
			     int i_689_, int i_690_, int i_691_);
    
    final Class403 method8491() {
	return aClass403_8960;
    }
    
    abstract void method8492(Interface39 interface39, Class342 class342, int i,
			     int i_692_, int i_693_, int i_694_);
    
    abstract void method8493(Interface39 interface39, Class342 class342, int i,
			     int i_695_, int i_696_, int i_697_);
    
    public final Class134 method2249(Class139 class139, int i, int i_698_,
				     int i_699_, int i_700_) {
	return new Class134_Sub3(this, class139, i, i_699_, i_700_, i_698_);
    }
    
    public void method2358() {
	((Class151_Sub2) this).anInt8976 = 0;
	((Class151_Sub2) this).anInt8977 = 0;
	((Class151_Sub2) this).anInt8978 = aClass144_1857.method1943();
	((Class151_Sub2) this).anInt8950 = aClass144_1857.method1944();
	method8471();
    }
    
    abstract void method8494(int i);
    
    public final boolean method2041() {
	return ((Class151_Sub2) this).aClass314Array9038[3] != null;
    }
    
    public abstract boolean method8495();
    
    abstract Interface31 method8496(int i, int i_701_, boolean bool, int[] is,
				    int i_702_, int i_703_);
    
    public abstract boolean method8497();
    
    public abstract void method8498(Class403 class403);
    
    abstract void method8499(int i);
    
    abstract void method8500(int i);
    
    abstract Interface39 method8501(boolean bool);
    
    abstract Interface39 method8502(boolean bool);
    
    public abstract void method8503(Class342 class342, int i, int i_704_,
				    int i_705_, int i_706_);
}
