prepare DifferenceEngine for subclassing