JMethod visitorMethod1 = visitor.method(interfaceMethod1.mods().getValue() & ~JMod.ABSTRACT, usedValueClassType, interfaceMethod1.name());
visitorMethod1.annotate(Override.class);
visitorMethod1.annotate(Nonnull.class);
JInvocation invocation = valueClass.staticInvoke(interfaceMethod1.name());
for (JTypeVar typeArgument: valueClass.typeParams())
invocation.narrow(typeArgument);
for (JVar param: interfaceMethod1.params()) {
AbstractJType argumentType = visitorInterface.substituteSpecialType(param.type(), usedValueClassType, configuration.type().boxify(), types._RuntimeException);
JVar argument = visitorMethod1.param(param.mods().getValue(), argumentType, nameSource.get(param.name()));
if (configuration.isFieldValue(interfaceMethod1, param.name())) {
invocation.arg(newValue);