boolean (final Object o) { if (o == this) return true; if (!(o instanceof EqualsAndHashCodeNestedShadow.Bar.Foo)) return false; final EqualsAndHashCodeNestedShadow.Bar.Foo other = (EqualsAndHashCodeNestedShadow.Bar.Foo) o; if (!other.canEqual((Object) this)) return false; return true; }