public override int GetHashCode() { if (hash == 0) { int len = b.Length; for (int k = 0; k < len; ++k) { hash = hash * 31 + b[k]; } } return hash; }