internal override bool ResolveDuplicates(PageContext pageContext, double topInParentSystem, PageItem[] siblings, bool recalculate)
        {
            base.ResolveDuplicates(pageContext, topInParentSystem, siblings, recalculate);
            if (m_children == null)
            {
                return(false);
            }
            double topInParentSystem2 = Math.Max(0.0, topInParentSystem - base.ItemPageSizes.Top);
            double num  = 0.0;
            bool   flag = false;

            for (int i = 0; i < m_children.Length; i++)
            {
                PageItem pageItem = m_children[i];
                if (pageItem != null)
                {
                    flag |= pageItem.ResolveDuplicates(pageContext, topInParentSystem2, m_children, flag);
                    num   = Math.Max(num, pageItem.ItemPageSizes.Bottom);
                }
            }
            if (flag)
            {
                if (pageContext.ConsumeWhitespace)
                {
                    ConsumeWhitespaceVertical(base.ItemPageSizes, num + m_bottomPadding);
                }
                else
                {
                    base.ItemPageSizes.AdjustHeightTo(num);
                }
                PageItem[] children = m_children;
                foreach (PageItem pageItem2 in children)
                {
                    if (pageItem2 != null)
                    {
                        pageItem2.ItemPageSizes.DeltaY = 0.0;
                    }
                }
            }
            return(flag);
        }