public ProxyContact(int factory, IProxy proxy)
        {
            deliverData = (a, b) => Table.Deliver(this, a, b);
            deliverPing = () => Table.DeliverPing(this);

            this.factoryKey = factory;
            this.ProxyInstance = proxy;

            if (proxy != null)
                proxy.Bind(deliverPing, deliverData);
        }
 private void OnDeserialisation()
 {
     ProxyInstance = factory.Deserialise(serialised, this);
     ProxyInstance.Bind(deliverPing, deliverData);
 }