@Override public boolean equals(Object obj) { if (obj instanceof NFA) { @SuppressWarnings("unchecked") NFA<T> other = (NFA<T>) obj; return nonDuplicatingTypeSerializer.equals(other.nonDuplicatingTypeSerializer) && eventSharedBuffer.equals(other.eventSharedBuffer) && states.equals(other.states) && windowTime == other.windowTime; } else { return false; } }