add @EqualsAndHashCode(callSuper = true)