private DfaMemoryStateImpl createClosureState(DfaMemoryState memState) { DfaMemoryStateImpl copy = (DfaMemoryStateImpl) memState.createCopy(); copy.flushFields(getFields()); Set<DfaVariableValue> vars = new HashSet<DfaVariableValue>(copy.getVariableStates().keySet()); for (DfaVariableValue value : vars) { copy.flushDependencies(value); } return copy; }