public static uint hash(float2x2 v) { return(csum(asuint(v.c0) * uint2(0x9C9F0823u, 0x5A9CA13Bu) + asuint(v.c1) * uint2(0xAFCDD5EFu, 0xA88D187Du)) + 0xCF6EBA1Du); }
public static uint2 hashwide(float2x2 v) { return((asuint(v.c0) * uint2(0x9D88E5A1u, 0xEADF0775u) + asuint(v.c1) * uint2(0x747A9D7Bu, 0x4111F799u)) + 0xB5F05AF1u); }
public static float2x2 transpose(float2x2 v) { return(float2x2( v.c0.x, v.c0.y, v.c1.x, v.c1.y)); }