[Test] public void DeepClone() => CloneUtil.DeepClone(new Eradicator());
[Test] public void DeepCloneThrows() => Assert.Throws <SerializationException>( () => CloneUtil.DeepClone(new NotSerializable()));
T Clone() => (proto is Clonable <T> src) ? src.Clone(state ?? src.Allocate()) : CloneUtil.DeepClone(proto);