public override bool Equals(object other) {
// each key sequence member can have different type
KeySequence keySequence = (KeySequence)other;
for (int i = 0; i < this.ks.Length; i ++) {
if (! this.ks[i].Equals (keySequence.ks[i])) {
return false;
}
}
return true;
}