Clients of the template must provide an OpType, which is the operation to execute, and a OpTypeFactory, which creates OpType instances on demand. The APIs that must be provided in these types are minimal: OpTypeFactory: