public int dot(int4 b)
 {
     return(x * b.x + y * b.y + z * b.z + w * b.w);
 }
 public static int dot(int4 a, int4 b)
 {
     return(a.x * b.x + a.y * b.y + a.z * b.z + a.w * b.w);
 }