public interface Factory<MATERIAL,PRODUCT>
java.util.Optional<PRODUCT>
produce(MATERIAL material)
java.util.Optional<PRODUCT> produce(MATERIAL material)