public override int GetHashCode()
 {
     unchecked
     {
         int hash = 17;
         hash = hash * 29 + Type.GetHashCode();
         hash = hash * 29 + Listener.GetHashCode();
         hash = hash * 29 + Callback.GetHashCode();
         return(hash);
     }
 }