.visitorDispatch(
(visitorParam, visitorType, constructors) -> visitorDispatchImpl(f0, adt, visitorType, visitorParam))
.functionsDispatch(constructors -> functionsDispatchImpl(f0, adt, constructors)))
.otherwise(() -> {
throw new IllegalArgumentException();
<BUG>})

.apply(adt.dataConstruction()))</BUG>
.build(), MethodSpec.methodBuilder("otherwise_")
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)

.visitorDispatch(
(visitorParam, visitorType, constructors) -> visitorDispatchImpl(f0, adt, visitorType, visitorParam))
.functionsDispatch(constructors -> functionsDispatchImpl(f0, adt, constructors)))
.otherwise(() -> {
throw new IllegalArgumentException();
}))
.build(), MethodSpec.methodBuilder("otherwise_")
.addModifiers(Modifier.PUBLIC, Modifier.FINAL)
