/* Class396 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */

public class Class396
{
    public float aFloat4542;
    static int anInt4543;
    static Class396[] aClass396Array4544;
    public float aFloat4545;
    static int anInt4546;
    public float aFloat4547;
    
    public final void method4728() {
	float f = 1.0F / method4746();
	aFloat4545 *= f;
	aFloat4542 *= f;
	aFloat4547 *= f;
    }
    
    public static Class396 method4729() {
	synchronized (aClass396Array4544) {
	    if (anInt4546 == 0) {
		Class396 class396 = new Class396();
		return class396;
	    }
	    aClass396Array4544[--anInt4546].method4780();
	    Class396 class396 = aClass396Array4544[anInt4546];
	    return class396;
	}
    }
    
    public static Class396 method4730(float f, float f_0_, float f_1_) {
	synchronized (aClass396Array4544) {
	    if (anInt4546 == 0) {
		Class396 class396 = new Class396(f, f_0_, f_1_);
		return class396;
	    }
	    aClass396Array4544[--anInt4546].method4761(f, f_0_, f_1_);
	    Class396 class396 = aClass396Array4544[anInt4546];
	    return class396;
	}
    }
    
    public static Class396 method4731(Class396 class396) {
	synchronized (aClass396Array4544) {
	    if (anInt4546 == 0) {
		Class396 class396_2_ = new Class396(class396);
		return class396_2_;
	    }
	    aClass396Array4544[--anInt4546].method4735(class396);
	    Class396 class396_3_ = aClass396Array4544[anInt4546];
	    return class396_3_;
	}
    }
    
    public static Class396 method4732(Class487_Sub17 class487_sub17) {
	synchronized (aClass396Array4544) {
	    if (anInt4546 == 0) {
		Class396 class396 = new Class396(class487_sub17);
		return class396;
	    }
	    aClass396Array4544[--anInt4546].method4776(class487_sub17);
	    Class396 class396 = aClass396Array4544[anInt4546];
	    return class396;
	}
    }
    
    public String method4733() {
	return new StringBuilder().append(aFloat4545).append(", ").append
		   (aFloat4542).append
		   (", ").append
		   (aFloat4547).toString();
    }
    
    public Class396() {
	/* empty */
    }
    
    public Class396(float f, float f_4_, float f_5_) {
	aFloat4545 = f;
	aFloat4542 = f_4_;
	aFloat4547 = f_5_;
    }
    
    public static final float method4734(Class396 class396,
					 Class396 class396_6_) {
	return class396.method4744(class396_6_);
    }
    
    Class396(Class487_Sub17 class487_sub17) {
	aFloat4545 = class487_sub17.method9228(276638887);
	aFloat4542 = class487_sub17.method9228(276638887);
	aFloat4547 = class487_sub17.method9228(276638887);
    }
    
    public void method4735(Class396 class396_7_) {
	method4761(class396_7_.aFloat4545, class396_7_.aFloat4542,
		   class396_7_.aFloat4547);
    }
    
    public void method4736() {
	synchronized (aClass396Array4544) {
	    if (anInt4546 < anInt4543 - 1)
		aClass396Array4544[anInt4546++] = this;
	}
    }
    
    public boolean method4737(Class396 class396_8_) {
	if (aFloat4545 != class396_8_.aFloat4545
	    || aFloat4542 != class396_8_.aFloat4542
	    || aFloat4547 != class396_8_.aFloat4547)
	    return false;
	return true;
    }
    
    public static final Class396 method4738(Class396 class396, float f) {
	Class396 class396_9_ = method4731(class396);
	class396_9_.method4750(f);
	return class396_9_;
    }
    
    public final void method4739(Class396 class396_10_) {
	aFloat4545 += class396_10_.aFloat4545;
	aFloat4542 += class396_10_.aFloat4542;
	aFloat4547 += class396_10_.aFloat4547;
    }
    
    public final void method4740(Class396 class396_11_, float f) {
	aFloat4545 += class396_11_.aFloat4545 * f;
	aFloat4542 += class396_11_.aFloat4542 * f;
	aFloat4547 += class396_11_.aFloat4547 * f;
    }
    
    public static final Class396 method4741(Class396 class396,
					    Class396 class396_12_) {
	Class396 class396_13_ = method4731(class396);
	class396_13_.method4739(class396_12_);
	return class396_13_;
    }
    
    public final void method4742(Class396 class396_14_) {
	aFloat4545 -= class396_14_.aFloat4545;
	aFloat4542 -= class396_14_.aFloat4542;
	aFloat4547 -= class396_14_.aFloat4547;
    }
    
    public static final Class396 method4743(Class396 class396,
					    Class396 class396_15_) {
	Class396 class396_16_ = method4731(class396);
	class396_16_.method4742(class396_15_);
	return class396_16_;
    }
    
    public final float method4744(Class396 class396_17_) {
	return (aFloat4545 * class396_17_.aFloat4545
		+ aFloat4542 * class396_17_.aFloat4542
		+ aFloat4547 * class396_17_.aFloat4547);
    }
    
    public final void method4745() {
	aFloat4547 = 0.0F;
	aFloat4542 = 0.0F;
	aFloat4545 = 0.0F;
    }
    
    public final float method4746() {
	return (float) Math.sqrt((double) (aFloat4545 * aFloat4545
					   + aFloat4542 * aFloat4542
					   + aFloat4547 * aFloat4547));
    }
    
    public final void method4747() {
	if (aFloat4545 < 0.0F)
	    aFloat4545 *= -1.0F;
	if (aFloat4542 < 0.0F)
	    aFloat4542 *= -1.0F;
	if (aFloat4547 < 0.0F)
	    aFloat4547 *= -1.0F;
    }
    
    final void method4748(Class396 class396_18_) {
	aFloat4545 *= class396_18_.aFloat4545;
	aFloat4542 *= class396_18_.aFloat4542;
	aFloat4547 *= class396_18_.aFloat4547;
    }
    
    public static final Class396 method4749(Class396 class396,
					    Class396 class396_19_) {
	Class396 class396_20_ = method4731(class396);
	class396_20_.method4748(class396_19_);
	return class396_20_;
    }
    
    public final void method4750(float f) {
	aFloat4545 *= f;
	aFloat4542 *= f;
	aFloat4547 *= f;
    }
    
    final void method4751(Class396 class396_21_) {
	aFloat4545 /= class396_21_.aFloat4545;
	aFloat4542 /= class396_21_.aFloat4542;
	aFloat4547 /= class396_21_.aFloat4547;
    }
    
    public final void method4752(float f) {
	aFloat4545 /= f;
	aFloat4542 /= f;
	aFloat4547 /= f;
    }
    
    public final void method4753(Class414 class414) {
	Class414 class414_22_
	    = Class414.method5090(aFloat4545, aFloat4542, aFloat4547, 0.0F);
	Class414 class414_23_ = Class414.method5067(class414);
	Class414 class414_24_
	    = Class414.method5072(class414_23_, class414_22_);
	class414_24_.method5094(class414);
	method4761(class414_24_.aFloat4647, class414_24_.aFloat4648,
		   class414_24_.aFloat4646);
	class414_22_.method5056();
	class414_23_.method5056();
	class414_24_.method5056();
    }
    
    public final void method4754(Class400 class400) {
	float f = aFloat4545;
	float f_25_ = aFloat4542;
	aFloat4545 = (((Class400) class400).aFloat4574 * f
		      + ((Class400) class400).aFloat4577 * f_25_
		      + ((Class400) class400).aFloat4580 * aFloat4547
		      + ((Class400) class400).aFloat4584);
	aFloat4542 = (((Class400) class400).aFloat4575 * f
		      + ((Class400) class400).aFloat4578 * f_25_
		      + ((Class400) class400).aFloat4573 * aFloat4547
		      + ((Class400) class400).aFloat4576);
	aFloat4547 = (((Class400) class400).aFloat4581 * f
		      + ((Class400) class400).aFloat4579 * f_25_
		      + ((Class400) class400).aFloat4582 * aFloat4547
		      + ((Class400) class400).aFloat4585);
    }
    
    public final void method4755() {
	aFloat4547 = 0.0F;
	aFloat4542 = 0.0F;
	aFloat4545 = 0.0F;
    }
    
    public final void method4756(Class396 class396_26_, float f) {
	method4750(1.0F - f);
	method4739(method4738(class396_26_, f));
    }
    
    public String toString() {
	return new StringBuilder().append(aFloat4545).append(", ").append
		   (aFloat4542).append
		   (", ").append
		   (aFloat4547).toString();
    }
    
    static {
	new Class396(0.0F, 0.0F, 0.0F);
	aClass396Array4544 = new Class396[0];
    }
    
    public String method4757() {
	return new StringBuilder().append(aFloat4545).append(", ").append
		   (aFloat4542).append
		   (", ").append
		   (aFloat4547).toString();
    }
    
    public String method4758() {
	return new StringBuilder().append(aFloat4545).append(", ").append
		   (aFloat4542).append
		   (", ").append
		   (aFloat4547).toString();
    }
    
    public void method4759(Class487_Sub17 class487_sub17) {
	aFloat4545 = class487_sub17.method9228(276638887);
	aFloat4542 = class487_sub17.method9228(276638887);
	aFloat4547 = class487_sub17.method9228(276638887);
    }
    
    public static void method4760(int i) {
	anInt4543 = i;
	aClass396Array4544 = new Class396[i];
	anInt4546 = 0;
    }
    
    public void method4761(float f, float f_27_, float f_28_) {
	aFloat4545 = f;
	aFloat4542 = f_27_;
	aFloat4547 = f_28_;
    }
    
    public static void method4762(int i) {
	anInt4543 = i;
	aClass396Array4544 = new Class396[i];
	anInt4546 = 0;
    }
    
    public static void method4763(int i) {
	anInt4543 = i;
	aClass396Array4544 = new Class396[i];
	anInt4546 = 0;
    }
    
    public void method4764() {
	synchronized (aClass396Array4544) {
	    if (anInt4546 < anInt4543 - 1)
		aClass396Array4544[anInt4546++] = this;
	}
    }
    
    public void method4765() {
	synchronized (aClass396Array4544) {
	    if (anInt4546 < anInt4543 - 1)
		aClass396Array4544[anInt4546++] = this;
	}
    }
    
    public static final Class396 method4766(Class396 class396,
					    Class396 class396_29_) {
	Class396 class396_30_ = method4731(class396);
	class396_30_.method4751(class396_29_);
	return class396_30_;
    }
    
    public static void method4767(int i) {
	anInt4543 = i;
	aClass396Array4544 = new Class396[i];
	anInt4546 = 0;
    }
    
    public Class396(Class396 class396_31_) {
	aFloat4545 = class396_31_.aFloat4545;
	aFloat4542 = class396_31_.aFloat4542;
	aFloat4547 = class396_31_.aFloat4547;
    }
    
    public void method4768(float f, float f_32_, float f_33_) {
	aFloat4545 = f;
	aFloat4542 = f_32_;
	aFloat4547 = f_33_;
    }
    
    final void method4769(Class396 class396_34_) {
	aFloat4545 *= class396_34_.aFloat4545;
	aFloat4542 *= class396_34_.aFloat4542;
	aFloat4547 *= class396_34_.aFloat4547;
    }
    
    public final void method4770() {
	aFloat4547 = 0.0F;
	aFloat4542 = 0.0F;
	aFloat4545 = 0.0F;
    }
    
    public final void method4771() {
	aFloat4545 = -aFloat4545;
	aFloat4542 = -aFloat4542;
	aFloat4547 = -aFloat4547;
    }
    
    public final void method4772() {
	aFloat4545 = -aFloat4545;
	aFloat4542 = -aFloat4542;
	aFloat4547 = -aFloat4547;
    }
    
    public final void method4773() {
	aFloat4545 = -aFloat4545;
	aFloat4542 = -aFloat4542;
	aFloat4547 = -aFloat4547;
    }
    
    public final void method4774() {
	float f = 1.0F / method4746();
	aFloat4545 *= f;
	aFloat4542 *= f;
	aFloat4547 *= f;
    }
    
    public static final Class396 method4775(Class396 class396,
					    Class396 class396_35_) {
	Class396 class396_36_ = method4731(class396);
	class396_36_.method4787(class396_35_);
	return class396_36_;
    }
    
    public void method4776(Class487_Sub17 class487_sub17) {
	aFloat4545 = class487_sub17.method9228(276638887);
	aFloat4542 = class487_sub17.method9228(276638887);
	aFloat4547 = class487_sub17.method9228(276638887);
    }
    
    final void method4777(Class396 class396_37_) {
	method4761((aFloat4542 * class396_37_.aFloat4547
		    - aFloat4547 * class396_37_.aFloat4542),
		   (aFloat4547 * class396_37_.aFloat4545
		    - aFloat4545 * class396_37_.aFloat4547),
		   (aFloat4545 * class396_37_.aFloat4542
		    - aFloat4542 * class396_37_.aFloat4545));
    }
    
    final void method4778(Class396 class396_38_) {
	method4761((aFloat4542 * class396_38_.aFloat4547
		    - aFloat4547 * class396_38_.aFloat4542),
		   (aFloat4547 * class396_38_.aFloat4545
		    - aFloat4545 * class396_38_.aFloat4547),
		   (aFloat4545 * class396_38_.aFloat4542
		    - aFloat4542 * class396_38_.aFloat4545));
    }
    
    public final float method4779() {
	return (float) Math.sqrt((double) (aFloat4545 * aFloat4545
					   + aFloat4542 * aFloat4542
					   + aFloat4547 * aFloat4547));
    }
    
    public final void method4780() {
	aFloat4547 = 0.0F;
	aFloat4542 = 0.0F;
	aFloat4545 = 0.0F;
    }
    
    final void method4781(Class396 class396_39_) {
	aFloat4545 *= class396_39_.aFloat4545;
	aFloat4542 *= class396_39_.aFloat4542;
	aFloat4547 *= class396_39_.aFloat4547;
    }
    
    public final void method4782(float f) {
	aFloat4545 *= f;
	aFloat4542 *= f;
	aFloat4547 *= f;
    }
    
    public final void method4783(float f) {
	aFloat4545 /= f;
	aFloat4542 /= f;
	aFloat4547 /= f;
    }
    
    public String method4784() {
	return new StringBuilder().append(aFloat4545).append(", ").append
		   (aFloat4542).append
		   (", ").append
		   (aFloat4547).toString();
    }
    
    public void method4785() {
	synchronized (aClass396Array4544) {
	    if (anInt4546 < anInt4543 - 1)
		aClass396Array4544[anInt4546++] = this;
	}
    }
    
    public final void method4786() {
	float f = 1.0F / method4746();
	aFloat4545 *= f;
	aFloat4542 *= f;
	aFloat4547 *= f;
    }
    
    final void method4787(Class396 class396_40_) {
	method4761((aFloat4542 * class396_40_.aFloat4547
		    - aFloat4547 * class396_40_.aFloat4542),
		   (aFloat4547 * class396_40_.aFloat4545
		    - aFloat4545 * class396_40_.aFloat4547),
		   (aFloat4545 * class396_40_.aFloat4542
		    - aFloat4542 * class396_40_.aFloat4545));
    }
    
    public void method4788(float f, float f_41_, float f_42_) {
	aFloat4545 = f;
	aFloat4542 = f_41_;
	aFloat4547 = f_42_;
    }
    
    public final void method4789(Class400 class400) {
	float f = aFloat4545;
	float f_43_ = aFloat4542;
	aFloat4545 = (((Class400) class400).aFloat4574 * f
		      + ((Class400) class400).aFloat4577 * f_43_
		      + ((Class400) class400).aFloat4580 * aFloat4547);
	aFloat4542 = (((Class400) class400).aFloat4575 * f
		      + ((Class400) class400).aFloat4578 * f_43_
		      + ((Class400) class400).aFloat4573 * aFloat4547);
	aFloat4547 = (((Class400) class400).aFloat4581 * f
		      + ((Class400) class400).aFloat4579 * f_43_
		      + ((Class400) class400).aFloat4582 * aFloat4547);
    }
    
    public final void method4790() {
	aFloat4545 = -aFloat4545;
	aFloat4542 = -aFloat4542;
	aFloat4547 = -aFloat4547;
    }
}
