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

public class Class406
{
    float[] aFloatArray4598;
    Class410[] aClass410Array4599 = new Class410[1];
    
    public float method4944(float f) {
	int i = (int) f;
	if (i + 1 < ((Class406) this).aFloatArray4598.length) {
	    float f_0_ = ((Class406) this).aFloatArray4598[i];
	    float f_1_ = ((Class406) this).aFloatArray4598[i + 1];
	    float f_2_ = f - (float) i;
	    return (1.0F - f_2_) * f_0_ + f_2_ * f_1_;
	}
	return (((Class406) this).aFloatArray4598
		[((Class406) this).aFloatArray4598.length - 1]);
    }
    
    public int method4945() {
	return ((Class406) this).aClass410Array4599.length;
    }
    
    public float method4946() {
	float f = 0.0F;
	for (int i = 0; i < ((Class406) this).aClass410Array4599.length; i++)
	    f += ((Class406) this).aClass410Array4599[i].method4971();
	return f;
    }
    
    public double[] method4947(float f) {
	float f_3_ = 0.0F;
	float f_4_ = 0.0F;
	for (int i = 0; i < ((Class406) this).aClass410Array4599.length; i++) {
	    f_4_ += ((Class406) this).aClass410Array4599[i].method4971();
	    if (f < f_4_) {
		float f_5_ = ((Class406) this).aClass410Array4599[i]
				 .method4972(f - f_3_);
		return ((Class406) this).aClass410Array4599[i]
			   .method4970(f_5_);
	    }
	    f_3_ = f_4_;
	}
	return ((Class406) this).aClass410Array4599
		   [((Class406) this).aClass410Array4599.length - 1]
		   .method4970(1.0F);
    }
    
    public float method4948(float f) {
	return method4944(method4950(f));
    }
    
    public int method4949() {
	return ((Class406) this).aClass410Array4599.length;
    }
    
    public float method4950(float f) {
	float f_6_ = 0.0F;
	float f_7_ = 0.0F;
	for (int i = 0; i < ((Class406) this).aClass410Array4599.length; i++) {
	    f_7_ += ((Class406) this).aClass410Array4599[i].method4971();
	    if (f < f_7_)
		return (((Class406) this).aClass410Array4599[i]
			    .method4972(f - f_6_)
			+ (float) i);
	    f_6_ = f_7_;
	}
	return (float) ((Class406) this).aClass410Array4599.length;
    }
    
    public Class406(Class487_Sub17 class487_sub17) {
	((Class406) this).aFloatArray4598 = new float[2];
	int i = class487_sub17.method9234((byte) -94);
	((Class406) this).aClass410Array4599[0] = new Class410();
	((Class406) this).aClass410Array4599[0]
	    .method4981(0, Class396.method4732(class487_sub17));
	((Class406) this).aClass410Array4599[0]
	    .method4981(1, Class396.method4732(class487_sub17));
	((Class406) this).aFloatArray4598[0]
	    = class487_sub17.method9228(276638887);
	Class396 class396 = Class396.method4732(class487_sub17);
	Class396 class396_8_ = Class396.method4732(class487_sub17);
	Class396 class396_9_ = Class396.method4743(class396, class396_8_);
	class396_8_.method4785();
	class396_8_ = class396_9_;
	class396_8_.method4739(class396);
	((Class406) this).aClass410Array4599[0].method4981(3, class396);
	((Class406) this).aClass410Array4599[0].method4981(2, class396_8_);
	((Class406) this).aFloatArray4598[1]
	    = class487_sub17.method9228(276638887);
	for (int i_10_ = 2; i_10_ < i; i_10_++) {
	    Class396 class396_11_ = Class396.method4732(class487_sub17);
	    Class396 class396_12_ = Class396.method4732(class487_sub17);
	    Class396 class396_13_
		= Class396.method4743(class396_11_, class396_12_);
	    class396_12_.method4785();
	    class396_12_ = class396_13_;
	    class396_12_.method4739(class396_11_);
	    method4954(class396_11_, class396_12_,
		       class487_sub17.method9228(276638887));
	}
    }
    
    public double[] method4951(float f) {
	int i = (int) f;
	if (i < ((Class406) this).aClass410Array4599.length)
	    return ((Class406) this).aClass410Array4599[i]
		       .method4970(f - (float) i);
	return ((Class406) this).aClass410Array4599
		   [((Class406) this).aClass410Array4599.length - 1]
		   .method4970(1.0F);
    }
    
    public int method4952() {
	return ((Class406) this).aClass410Array4599.length;
    }
    
    public double[] method4953(float f) {
	float f_14_ = 0.0F;
	float f_15_ = 0.0F;
	for (int i = 0; i < ((Class406) this).aClass410Array4599.length; i++) {
	    f_15_ += ((Class406) this).aClass410Array4599[i].method4971();
	    if (f < f_15_) {
		float f_16_ = ((Class406) this).aClass410Array4599[i]
				  .method4972(f - f_14_);
		return ((Class406) this).aClass410Array4599[i]
			   .method4970(f_16_);
	    }
	    f_14_ = f_15_;
	}
	return ((Class406) this).aClass410Array4599
		   [((Class406) this).aClass410Array4599.length - 1]
		   .method4970(1.0F);
    }
    
    void method4954(Class396 class396, Class396 class396_17_, float f) {
	Class410[] class410s
	    = new Class410[((Class406) this).aClass410Array4599.length + 1];
	System.arraycopy(((Class406) this).aClass410Array4599, 0, class410s, 0,
			 ((Class406) this).aClass410Array4599.length);
	Class410 class410 = new Class410();
	Class410 class410_18_
	    = (((Class406) this).aClass410Array4599
	       [((Class406) this).aClass410Array4599.length - 1]);
	class410.method4981(0, class410_18_.method4980(3));
	Class396 class396_19_
	    = Class396.method4743(class410_18_.method4980(3),
				  class410_18_.method4980(2));
	class410.method4981(1, Class396.method4741(class410_18_.method4980(3),
						   class396_19_));
	class410.method4981(3, class396);
	class410.method4981(2, class396_17_);
	class410s[class410s.length - 1] = class410;
	((Class406) this).aClass410Array4599 = class410s;
	float[] fs = new float[((Class406) this).aFloatArray4598.length + 1];
	System.arraycopy(((Class406) this).aFloatArray4598, 0, fs, 0,
			 ((Class406) this).aFloatArray4598.length);
	fs[fs.length - 1] = f;
	((Class406) this).aFloatArray4598 = fs;
    }
    
    public float method4955(float f) {
	int i = (int) f;
	if (i + 1 < ((Class406) this).aFloatArray4598.length) {
	    float f_20_ = ((Class406) this).aFloatArray4598[i];
	    float f_21_ = ((Class406) this).aFloatArray4598[i + 1];
	    float f_22_ = f - (float) i;
	    return (1.0F - f_22_) * f_20_ + f_22_ * f_21_;
	}
	return (((Class406) this).aFloatArray4598
		[((Class406) this).aFloatArray4598.length - 1]);
    }
    
    public float method4956(float f) {
	int i = (int) f;
	if (i + 1 < ((Class406) this).aFloatArray4598.length) {
	    float f_23_ = ((Class406) this).aFloatArray4598[i];
	    float f_24_ = ((Class406) this).aFloatArray4598[i + 1];
	    float f_25_ = f - (float) i;
	    return (1.0F - f_25_) * f_23_ + f_25_ * f_24_;
	}
	return (((Class406) this).aFloatArray4598
		[((Class406) this).aFloatArray4598.length - 1]);
    }
    
    public float method4957(float f) {
	int i = (int) f;
	if (i + 1 < ((Class406) this).aFloatArray4598.length) {
	    float f_26_ = ((Class406) this).aFloatArray4598[i];
	    float f_27_ = ((Class406) this).aFloatArray4598[i + 1];
	    float f_28_ = f - (float) i;
	    return (1.0F - f_28_) * f_26_ + f_28_ * f_27_;
	}
	return (((Class406) this).aFloatArray4598
		[((Class406) this).aFloatArray4598.length - 1]);
    }
}
