visitorType, visitorParam, arg))
.functionsDispatch(
constructors -> functionsDispatchEitherImpl(f0, eitherModel, eitherTypeName, adt, constructors, arg)))
.otherwise(() -> {
throw new IllegalArgumentException();
<BUG>})

.apply(adt.dataConstruction()))</BUG>
.build(), MethodSpec.methodBuilder(otherwiseLeftMethodName + '_')
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)

visitorType, visitorParam, arg))
.functionsDispatch(
constructors -> functionsDispatchEitherImpl(f0, eitherModel, eitherTypeName, adt, constructors, arg)))
.otherwise(() -> {
throw new IllegalArgumentException();
}))
.build(), MethodSpec.methodBuilder(otherwiseLeftMethodName + '_')
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
