java: public boolean equals(Object obj) {final State other = (State) obj;return is_final == other.is_final&& Arrays.equals(this.labels, other.labels)&& referenceEquals(this.states, other.states);}
C#: public override bool Equals(object obj){State other = (State)obj;return is_final == other.is_final && Arrays.Equals(this.labels, other.labels) && ReferenceEquals(this.states, other.states);}