boolean (Object obj) { if (!(obj instanceof PatternInner.Basis)) { return false; } @SuppressWarnings("rawtypes") PatternInner.Basis <caret>that = (PatternInner.Basis) obj; return this.outer() == that.outer() && this.key.equals(that.key); }