public override int GetHashCode()
 {
     return(hierarchy != null ? hierarchy.GetHashCode() : 0);
 }