public override int GetHashCode() { int h = (output == null ? 0 : output.GetHashCode()); h += (state.GetHashCode() << 1); h += base.GetHashCode(); return h; }