public static uint4x4 uint4x4(uint4 c0, uint4 c1, uint4 c2, uint4 c3) { return(new uint4x4(c0, c1, c2, c3)); }
public static uint csum(uint4 a) { return(a.x + a.y + a.z + a.w); }
public static uint4 select(uint4 a, uint4 b, bool4 c) { return(new uint4(c.x ? b.x : a.x, c.y ? a.y : b.y, c.z ? b.z : a.z, c.w ? b.w : a.w)); }
public uint4x3(float4x3 v) { this.c0 = (uint4)v.c0; this.c1 = (uint4)v.c1; this.c2 = (uint4)v.c2; }
public uint4x2(float v) { this.c0 = (uint4)v; this.c1 = (uint4)v; }
public uint4x2(double v) { this.c0 = (uint4)v; this.c1 = (uint4)v; }
public uint4x3(uint v) { this.c0 = v; this.c1 = v; this.c2 = v; }
public uint4x2(int v) { this.c0 = (uint4)v; this.c1 = (uint4)v; }
public uint4x3(double4x3 v) { this.c0 = (uint4)v.c0; this.c1 = (uint4)v.c1; this.c2 = (uint4)v.c2; }
public uint4x3(uint4 c0, uint4 c1, uint4 c2) { this.c0 = c0; this.c1 = c1; this.c2 = c2; }
public static int4 asint(uint4 v) { return(int4((int)v.x, (int)v.y, (int)v.z, (int)v.w)); }
public static uint dot(uint4 pt1, uint4 pt2) { return(pt1.x * pt2.x + pt1.y * pt2.y + pt1.z * pt2.z + pt1.w * pt2.w); }
public static float4 asfloat(uint4 v) { return(float4(asfloat(v.x), asfloat(v.y), asfloat(v.z), asfloat(v.w))); }
public uint4x2(uint4 c0, uint4 c1) { this.c0 = c0; this.c1 = c1; }
public uint4x3(bool v) { this.c0 = math.select(new uint4(0u), new uint4(1u), v); this.c1 = math.select(new uint4(0u), new uint4(1u), v); this.c2 = math.select(new uint4(0u), new uint4(1u), v); }
public uint4x2(uint v) { this.c0 = v; this.c1 = v; }
public static uint4x3 uint4x3(uint4 c0, uint4 c1, uint4 c2) { return(new uint4x3(c0, c1, c2)); }
public static uint4x2 uint4x2(uint4 c0, uint4 c1) { return(new uint4x2(c0, c1)); }
public uint4x3(bool4x3 v) { this.c0 = math.select(new uint4(0u), new uint4(1u), v.c0); this.c1 = math.select(new uint4(0u), new uint4(1u), v.c1); this.c2 = math.select(new uint4(0u), new uint4(1u), v.c2); }
public uint4x2(float4x2 v) { this.c0 = (uint4)v.c0; this.c1 = (uint4)v.c1; }
public uint4x3(int v) { this.c0 = (uint4)v; this.c1 = (uint4)v; this.c2 = (uint4)v; }
public uint4x2(double4x2 v) { this.c0 = (uint4)v.c0; this.c1 = (uint4)v.c1; }
public static uint4 select(uint4 a, uint4 b, bool c) { return(c ? b : a); }