DfType (DfaVariableValue var) { DfType type = myVariableTypes.get(var); if (type != null) { return type; } DfaVariableValue canonicalized = canonicalize(var); return canonicalized == var ? null : myVariableTypes.get(canonicalized); }