public object Clone() { var clone = new ActualChain((BaseChain)Source.Clone()) { resultChain = (BaseChain)resultChain.Clone(), actualLength = actualLength }; return clone; }