    return {};
  }
}

[[nodiscard]] Val BinaryTree::min() const { return min(root)->value; }

[[nodiscard]] Val BinaryTree::max() const {
  auto node = root;
  while (node->right != nullptr) {
    node = node->right;
  }