protected abstract ChainData Divide(ChainData data);
protected abstract ChainData Subtract(ChainData data);
protected abstract ChainData Multiply(ChainData data);
protected abstract ChainData Add(ChainData data);