// ========================================
        // method
        // ========================================
        public void WriteExternal(IMemento memento, ExternalizeContext context)
        {
            memento.SetConstructorParamKeys(new[] { "ExternalizableProxy.SaveTo", "ExternalizableProxy.LoadFrom" });
            memento.WriteSerializable("ExternalizableProxy.SaveTo", _saveTo);
            memento.WriteSerializable("ExternalizableProxy.LoadFrom", _loadFrom);

            _saveTo(_real, memento, context);
        }