import org.derive4j.processor.api.model.DataConstructor;
import org.derive4j.processor.api.model.MultipleConstructorsSupport;
import org.derive4j.processor.api.model.TypeRestriction;
import static org.derive4j.processor.Utils.asBoxedType;
import static org.derive4j.processor.Utils.joinStringsAsArguments;
<BUG>import static org.derive4j.processor.api.DeriveResult.result;
final class GettersDerivator implements Derivator {</BUG>
private final DeriveUtils deriveUtils;
GettersDerivator(DeriveUtils deriveUtils) {
this.deriveUtils = deriveUtils;

import org.derive4j.processor.api.model.DataConstructor;
import org.derive4j.processor.api.model.MultipleConstructorsSupport;
import org.derive4j.processor.api.model.TypeRestriction;
import static org.derive4j.processor.Utils.asBoxedType;
import static org.derive4j.processor.Utils.joinStringsAsArguments;
import static org.derive4j.processor.api.DeriveResult.result;
import static org.derive4j.processor.api.model.DataConstructions.caseOf;
final class GettersDerivator implements Derivator {
private final DeriveUtils deriveUtils;
GettersDerivator(DeriveUtils deriveUtils) {
this.deriveUtils = deriveUtils;
