boolean (final Object o) { if (o == this) return true; if (!(o instanceof EqualsAndHashCodeAutoExclude2)) return false; final EqualsAndHashCodeAutoExclude2 other = (EqualsAndHashCodeAutoExclude2) o; if (!other.canEqual((Object) this)) return false; if (this.x != other.x) return false; final Object this$$a = this.$a; final Object other$$a = other.$a; if (this$$a == null ? other$$a != null : !this$$a.equals(other$$a)) return false; final Object this$b = this.b; final Object other$b = other.b; if (this$b == null ? other$b != null : !this$b.equals(other$b)) return false; return true; }