internal CountType DebugValidateStatsNodeSubtree()
            {
                CountType TotalChildCountLeft  = 0;
                CountType TotalChildCountRight = 0;

                if (LeftNode != null)
                {
                    TotalChildCountLeft = LeftNode.DebugValidateStatsNodeSubtree();
                }
                if (RightNode != null)
                {
                    TotalChildCountRight = RightNode.DebugValidateStatsNodeSubtree();
                }
                DebugAssert(ChildCountLeft == TotalChildCountLeft);
                DebugAssert(ChildCountRight == TotalChildCountRight);
                return(1 + this.ChildCountLeft + this.ChildCountRight);
            }