I=(S=Uno.Float3 = function(){
    this.X = 0.0;
    this.Y = 0.0;
    this.Z = 0.0;
}).prototype;

I.ToString = function()
{
    return "Uno.Float3";
};

I.GetHashCode = function()
{
    return 0;
};

S.operator_Add = function(a, b)
{
    return Uno.Float3.$1(a.X + b.X, a.Y + b.Y, a.Z + b.Z);
};

S.operator_Sub = function(a, b)
{
    return Uno.Float3.$1(a.X - b.X, a.Y - b.Y, a.Z - b.Z);
};

S.operator_Mul = function(a, b)
{
    return Uno.Float3.$1(a.X * b.X, a.Y * b.Y, a.Z * b.Z);
};

S.operator_Sub_1 = function(a, b)
{
    return Uno.Float3.$1(a.X - b, a.Y - b, a.Z - b);
};

S.operator_Mul_1 = function(a, b)
{
    return Uno.Float3.$1(a.X * b, a.Y * b, a.Z * b);
};

S.operator_Div = function(a, b)
{
    return Uno.Float3.$1(a.X / b, a.Y / b, a.Z / b);
};

S.operator_Negate_2 = function(a)
{
    return Uno.Float3.operator_Mul_1(a, -1.0);
};

S.$0 = function(xyz) {
    var $this = new Uno.Float3;
    $this.X = $this.Y = $this.Z = xyz;
    return $this;
};

S.$1 = function(x, y, z) {
    var $this = new Uno.Float3;
    $this.X = x;
    $this.Y = y;
    $this.Z = z;
    return $this;
};

S.$2 = function(xy, z) {
    var $this = new Uno.Float3;
    $this.X = xy.X;
    $this.Y = xy.Y;
    $this.Z = z;
    return $this;
};

S.$3 = function(x, yz) {
    var $this = new Uno.Float3;
    $this.X = x;
    $this.Y = yz.X;
    $this.Z = yz.Y;
    return $this;
};
