public void _RemoveContractChangedHandler(BaseChangedData.ChangedHandler h)
 {
     if (contract != null)
     {
         contract.Changed -= h;
     }
 }
 public void _RemoveContractChangedHandler(BaseChangedData.ChangedHandler h)
 {
     if (val != null)
     {
         val._RemoveContractChangedHandler(h);
     }
 }
        /*public bool ContractPtrEquals(ResultStruct rs)
         * {
         *  return (this.contract == rs.contract);
         * }*/

        public void _AddContractChangedHandler(BaseChangedData.ChangedHandler h)
        {
            if (contract != null)
            {
                contract.Changed += h;
            }
        }