public function getBreadcrumb(Page $page = null, $breadcrumb = array())
    {
        if (null === $this->breadcrumb) {
            $page = (null !== $page) ? $page : $this;
            $breadcrumb[] = $page;
            if (null !== $page->getParent()) {
                return $this->getBreadcrumb($page->getParent(), $breadcrumb);
            } else {
                $this->breadcrumb = $breadcrumb;
            }
        }

        return $this->breadcrumb;
    }