--- /dev/null
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2001 - 2021 by the deal.II authors
+//
+// This file is part of the deal.II library.
+//
+// The deal.II library is free software; you can use it, redistribute
+// it, and/or modify it under the terms of the GNU Lesser General
+// Public License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+// The full text of the license can be found in the file LICENSE.md at
+// the top level directory of deal.II.
+//
+// ---------------------------------------------------------------------
+
+// Validate grid_tools_cache for the creation of build global rtree
+
+
+#include <deal.II/distributed/grid_refinement.h>
+#include <deal.II/distributed/shared_tria.h>
+#include <deal.II/distributed/tria.h>
+
+#include <deal.II/grid/filtered_iterator.h>
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/grid_tools.h>
+#include <deal.II/grid/grid_tools_cache.h>
+#include <deal.II/grid/tria.h>
+
+#include <boost/serialization/array.hpp>
+#include <boost/serialization/vector.hpp>
+#include <boost/signals2.hpp>
+
+#include "../tests.h"
+
+
+namespace bg = boost::geometry;
+namespace bgi = boost::geometry::index;
+
+
+template <int dim>
+void
+test()
+{
+ deallog << "Testing for dim = " << dim << std::endl;
+
+ // Creating a grid in the square [0,1]x[0,1]
+ parallel::shared::Triangulation<dim> tria(
+ MPI_COMM_WORLD,
+ Triangulation<dim>::none,
+ false,
+ parallel::shared::Triangulation<dim>::Settings::partition_zoltan);
+ GridGenerator::hyper_cube(tria);
+ tria.refine_global(std::max(8 - dim, 3));
+
+
+ GridTools::Cache<dim> cache(tria);
+
+ const auto &global_description = cache.get_covering_rtree();
+
+ // Extract from the cache a list of all bounding boxes with process owners:
+ std::vector<std::pair<BoundingBox<dim>, unsigned int>> test_results;
+ global_description.query(bgi::satisfies([](const auto &) { return true; }),
+ std::back_inserter(test_results));
+
+ // Loop over all bounding boxes and output them. We expect this list
+ // to be identical on all processes, but do not actually check this
+ // (other than by the fact that the output file records this).
+ for (const auto &bb_and_owner : test_results)
+ {
+ const auto &bd_points = bb_and_owner.first.get_boundary_points();
+ deallog << " Bounding box: p1 " << bd_points.first << " p2 "
+ << bd_points.second << " rank owner: " << bb_and_owner.second
+ << std::endl;
+ }
+}
+
+
+
+int
+main(int argc, char **argv)
+{
+ Utilities::MPI::MPI_InitFinalize mpi_initialization(argc, argv, 1);
+#ifdef DEAL_II_WITH_MPI
+ MPILogInitAll log;
+#else
+ initlog();
+ deallog.push("0");
+#endif
+
+ test<1>();
+ test<2>();
+ test<3>();
+
+ return 0;
+}
--- /dev/null
+
+DEAL:0::Testing for dim = 1
+DEAL:0:: Bounding box: p1 0.00000 p2 0.125000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.125000 p2 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.250000 p2 0.375000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.375000 p2 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 p2 0.625000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.625000 p2 0.750000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.750000 p2 0.875000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.875000 p2 1.00000 rank owner: 0
+DEAL:0::Testing for dim = 2
+DEAL:0:: Bounding box: p1 0.00000 0.00000 p2 0.250000 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.250000 p2 0.250000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.250000 0.00000 p2 0.500000 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.250000 0.250000 p2 0.500000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.500000 p2 0.250000 0.750000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.750000 p2 0.250000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.250000 0.500000 p2 0.500000 0.750000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.250000 0.750000 p2 0.500000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.00000 p2 0.750000 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.250000 p2 0.750000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.750000 0.00000 p2 1.00000 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.750000 0.250000 p2 1.00000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.500000 p2 0.750000 0.750000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.750000 p2 0.750000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.750000 0.500000 p2 1.00000 0.750000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.750000 0.750000 p2 1.00000 1.00000 rank owner: 0
+DEAL:0::Testing for dim = 3
+DEAL:0:: Bounding box: p1 0.00000 0.00000 0.00000 p2 0.500000 0.500000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.00000 0.500000 p2 0.500000 0.500000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.500000 0.00000 p2 0.500000 1.00000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.500000 0.500000 p2 0.500000 1.00000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.00000 0.00000 p2 1.00000 0.500000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.00000 0.500000 p2 1.00000 0.500000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.500000 0.00000 p2 1.00000 1.00000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 0.500000 0.500000 p2 1.00000 1.00000 1.00000 rank owner: 0
--- /dev/null
+
+DEAL:0::Testing for dim = 1
+DEAL:0:: Bounding box: p1 0.00000 p2 0.125000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.125000 p2 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.250000 p2 0.375000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.375000 p2 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 p2 0.546875 rank owner: 0
+DEAL:0:: Bounding box: p1 0.546875 p2 0.671875 rank owner: 1
+DEAL:0:: Bounding box: p1 0.671875 p2 0.796875 rank owner: 1
+DEAL:0:: Bounding box: p1 0.796875 p2 0.921875 rank owner: 1
+DEAL:0:: Bounding box: p1 0.921875 p2 1.00000 rank owner: 1
+DEAL:0::Testing for dim = 2
+DEAL:0:: Bounding box: p1 0.406250 0.656250 p2 0.562500 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.218750 p2 0.281250 0.468750 rank owner: 0
+DEAL:0:: Bounding box: p1 0.265625 0.00000 p2 0.546875 0.234375 rank owner: 0
+DEAL:0:: Bounding box: p1 0.265625 0.234375 p2 0.546875 0.468750 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.453125 p2 0.234375 0.734375 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.718750 p2 0.234375 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.234375 0.453125 p2 0.562500 0.671875 rank owner: 0
+DEAL:0:: Bounding box: p1 0.218750 0.656250 p2 0.421875 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.00000 p2 0.281250 0.234375 rank owner: 0
+DEAL:0:: Bounding box: p1 0.546875 0.531250 p2 0.781250 0.828125 rank owner: 1
+DEAL:0:: Bounding box: p1 0.531250 0.00000 p2 0.781250 0.281250 rank owner: 1
+DEAL:0:: Bounding box: p1 0.546875 0.265625 p2 0.781250 0.546875 rank owner: 1
+DEAL:0:: Bounding box: p1 0.562500 0.828125 p2 0.921875 1.00000 rank owner: 1
+DEAL:0:: Bounding box: p1 0.765625 0.00000 p2 1.00000 0.281250 rank owner: 1
+DEAL:0:: Bounding box: p1 0.765625 0.531250 p2 1.00000 0.828125 rank owner: 1
+DEAL:0:: Bounding box: p1 0.765625 0.265625 p2 1.00000 0.546875 rank owner: 1
+DEAL:0:: Bounding box: p1 0.906250 0.828125 p2 1.00000 1.00000 rank owner: 1
+DEAL:0::Testing for dim = 3
+DEAL:0:: Bounding box: p1 0.00000 0.00000 0.00000 p2 0.531250 0.500000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.00000 0.468750 p2 0.531250 0.500000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.468750 0.00000 p2 0.531250 1.00000 0.468750 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.468750 0.437500 p2 0.437500 1.00000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.406250 0.468750 0.437500 p2 0.531250 1.00000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.531250 0.00000 0.00000 p2 1.00000 0.562500 0.531250 rank owner: 1
+DEAL:0:: Bounding box: p1 0.531250 0.00000 0.500000 p2 1.00000 0.562500 1.00000 rank owner: 1
+DEAL:0:: Bounding box: p1 0.531250 0.531250 0.00000 p2 1.00000 1.00000 0.593750 rank owner: 1
+DEAL:0:: Bounding box: p1 0.531250 0.531250 0.562500 p2 1.00000 1.00000 1.00000 rank owner: 1
+
+DEAL:1::Testing for dim = 1
+DEAL:1:: Bounding box: p1 0.00000 p2 0.125000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.125000 p2 0.250000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.250000 p2 0.375000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.375000 p2 0.500000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.500000 p2 0.546875 rank owner: 0
+DEAL:1:: Bounding box: p1 0.546875 p2 0.671875 rank owner: 1
+DEAL:1:: Bounding box: p1 0.671875 p2 0.796875 rank owner: 1
+DEAL:1:: Bounding box: p1 0.796875 p2 0.921875 rank owner: 1
+DEAL:1:: Bounding box: p1 0.921875 p2 1.00000 rank owner: 1
+DEAL:1::Testing for dim = 2
+DEAL:1:: Bounding box: p1 0.406250 0.656250 p2 0.562500 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.218750 p2 0.281250 0.468750 rank owner: 0
+DEAL:1:: Bounding box: p1 0.265625 0.00000 p2 0.546875 0.234375 rank owner: 0
+DEAL:1:: Bounding box: p1 0.265625 0.234375 p2 0.546875 0.468750 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.453125 p2 0.234375 0.734375 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.718750 p2 0.234375 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.234375 0.453125 p2 0.562500 0.671875 rank owner: 0
+DEAL:1:: Bounding box: p1 0.218750 0.656250 p2 0.421875 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.00000 p2 0.281250 0.234375 rank owner: 0
+DEAL:1:: Bounding box: p1 0.546875 0.531250 p2 0.781250 0.828125 rank owner: 1
+DEAL:1:: Bounding box: p1 0.531250 0.00000 p2 0.781250 0.281250 rank owner: 1
+DEAL:1:: Bounding box: p1 0.546875 0.265625 p2 0.781250 0.546875 rank owner: 1
+DEAL:1:: Bounding box: p1 0.562500 0.828125 p2 0.921875 1.00000 rank owner: 1
+DEAL:1:: Bounding box: p1 0.765625 0.00000 p2 1.00000 0.281250 rank owner: 1
+DEAL:1:: Bounding box: p1 0.765625 0.531250 p2 1.00000 0.828125 rank owner: 1
+DEAL:1:: Bounding box: p1 0.765625 0.265625 p2 1.00000 0.546875 rank owner: 1
+DEAL:1:: Bounding box: p1 0.906250 0.828125 p2 1.00000 1.00000 rank owner: 1
+DEAL:1::Testing for dim = 3
+DEAL:1:: Bounding box: p1 0.00000 0.00000 0.00000 p2 0.531250 0.500000 0.500000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.00000 0.468750 p2 0.531250 0.500000 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.468750 0.00000 p2 0.531250 1.00000 0.468750 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.468750 0.437500 p2 0.437500 1.00000 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.406250 0.468750 0.437500 p2 0.531250 1.00000 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.531250 0.00000 0.00000 p2 1.00000 0.562500 0.531250 rank owner: 1
+DEAL:1:: Bounding box: p1 0.531250 0.00000 0.500000 p2 1.00000 0.562500 1.00000 rank owner: 1
+DEAL:1:: Bounding box: p1 0.531250 0.531250 0.00000 p2 1.00000 1.00000 0.593750 rank owner: 1
+DEAL:1:: Bounding box: p1 0.531250 0.531250 0.562500 p2 1.00000 1.00000 1.00000 rank owner: 1
+
--- /dev/null
+
+DEAL:0::Testing for dim = 1
+DEAL:0:: Bounding box: p1 0.257812 p2 0.382812 rank owner: 0
+DEAL:0:: Bounding box: p1 0.382812 p2 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.500000 p2 0.531250 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 p2 0.125000 rank owner: 1
+DEAL:0:: Bounding box: p1 0.125000 p2 0.226562 rank owner: 1
+DEAL:0:: Bounding box: p1 0.226562 p2 0.257812 rank owner: 1
+DEAL:0:: Bounding box: p1 0.765625 p2 0.890625 rank owner: 2
+DEAL:0:: Bounding box: p1 0.890625 p2 1.00000 rank owner: 2
+DEAL:0:: Bounding box: p1 0.531250 p2 0.656250 rank owner: 3
+DEAL:0:: Bounding box: p1 0.656250 p2 0.765625 rank owner: 3
+DEAL:0::Testing for dim = 2
+DEAL:0:: Bounding box: p1 0.250000 0.00000 p2 0.515625 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.00000 p2 0.265625 0.250000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.234375 p2 0.218750 0.531250 rank owner: 0
+DEAL:0:: Bounding box: p1 0.203125 0.234375 p2 0.515625 0.453125 rank owner: 0
+DEAL:0:: Bounding box: p1 0.218750 0.437500 p2 0.515625 0.531250 rank owner: 0
+DEAL:0:: Bounding box: p1 0.328125 0.828125 p2 0.421875 1.00000 rank owner: 3
+DEAL:0:: Bounding box: p1 0.00000 0.812500 p2 0.343750 1.00000 rank owner: 3
+DEAL:0:: Bounding box: p1 0.203125 0.531250 p2 0.421875 0.828125 rank owner: 3
+DEAL:0:: Bounding box: p1 0.00000 0.531250 p2 0.218750 0.828125 rank owner: 3
+DEAL:0:: Bounding box: p1 0.515625 0.00000 p2 0.765625 0.265625 rank owner: 1
+DEAL:0:: Bounding box: p1 0.421875 0.531250 p2 0.687500 0.781250 rank owner: 2
+DEAL:0:: Bounding box: p1 0.421875 0.765625 p2 0.703125 1.00000 rank owner: 2
+DEAL:0:: Bounding box: p1 0.515625 0.250000 p2 0.750000 0.531250 rank owner: 1
+DEAL:0:: Bounding box: p1 0.687500 0.718750 p2 0.921875 1.00000 rank owner: 2
+DEAL:0:: Bounding box: p1 0.687500 0.531250 p2 1.00000 0.734375 rank owner: 2
+DEAL:0:: Bounding box: p1 0.734375 0.468750 p2 1.00000 0.531250 rank owner: 1
+DEAL:0:: Bounding box: p1 0.734375 0.250000 p2 1.00000 0.484375 rank owner: 1
+DEAL:0:: Bounding box: p1 0.750000 0.00000 p2 1.00000 0.265625 rank owner: 1
+DEAL:0:: Bounding box: p1 0.906250 0.734375 p2 1.00000 1.00000 rank owner: 2
+DEAL:0::Testing for dim = 3
+DEAL:0:: Bounding box: p1 0.00000 0.531250 0.00000 p2 0.562500 1.00000 0.500000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.468750 0.468750 p2 0.437500 1.00000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.406250 0.468750 0.468750 p2 0.562500 1.00000 1.00000 rank owner: 0
+DEAL:0:: Bounding box: p1 0.00000 0.00000 0.00000 p2 0.562500 0.531250 0.437500 rank owner: 1
+DEAL:0:: Bounding box: p1 0.00000 0.00000 0.406250 p2 0.406250 0.531250 1.00000 rank owner: 1
+DEAL:0:: Bounding box: p1 0.375000 0.00000 0.406250 p2 0.562500 0.531250 1.00000 rank owner: 1
+DEAL:0:: Bounding box: p1 0.562500 0.531250 0.00000 p2 1.00000 1.00000 0.625000 rank owner: 2
+DEAL:0:: Bounding box: p1 0.531250 0.531250 0.593750 p2 1.00000 1.00000 1.00000 rank owner: 2
+DEAL:0:: Bounding box: p1 0.500000 0.00000 0.00000 p2 1.00000 0.531250 0.531250 rank owner: 3
+DEAL:0:: Bounding box: p1 0.468750 0.00000 0.500000 p2 0.906250 0.531250 1.00000 rank owner: 3
+DEAL:0:: Bounding box: p1 0.875000 0.00000 0.500000 p2 1.00000 0.531250 1.00000 rank owner: 3
+
+DEAL:1::Testing for dim = 1
+DEAL:1:: Bounding box: p1 0.257812 p2 0.382812 rank owner: 0
+DEAL:1:: Bounding box: p1 0.382812 p2 0.500000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.500000 p2 0.531250 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 p2 0.125000 rank owner: 1
+DEAL:1:: Bounding box: p1 0.125000 p2 0.226562 rank owner: 1
+DEAL:1:: Bounding box: p1 0.226562 p2 0.257812 rank owner: 1
+DEAL:1:: Bounding box: p1 0.765625 p2 0.890625 rank owner: 2
+DEAL:1:: Bounding box: p1 0.890625 p2 1.00000 rank owner: 2
+DEAL:1:: Bounding box: p1 0.531250 p2 0.656250 rank owner: 3
+DEAL:1:: Bounding box: p1 0.656250 p2 0.765625 rank owner: 3
+DEAL:1::Testing for dim = 2
+DEAL:1:: Bounding box: p1 0.250000 0.00000 p2 0.515625 0.250000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.00000 p2 0.265625 0.250000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.234375 p2 0.218750 0.531250 rank owner: 0
+DEAL:1:: Bounding box: p1 0.203125 0.234375 p2 0.515625 0.453125 rank owner: 0
+DEAL:1:: Bounding box: p1 0.218750 0.437500 p2 0.515625 0.531250 rank owner: 0
+DEAL:1:: Bounding box: p1 0.328125 0.828125 p2 0.421875 1.00000 rank owner: 3
+DEAL:1:: Bounding box: p1 0.00000 0.812500 p2 0.343750 1.00000 rank owner: 3
+DEAL:1:: Bounding box: p1 0.203125 0.531250 p2 0.421875 0.828125 rank owner: 3
+DEAL:1:: Bounding box: p1 0.00000 0.531250 p2 0.218750 0.828125 rank owner: 3
+DEAL:1:: Bounding box: p1 0.515625 0.00000 p2 0.765625 0.265625 rank owner: 1
+DEAL:1:: Bounding box: p1 0.421875 0.531250 p2 0.687500 0.781250 rank owner: 2
+DEAL:1:: Bounding box: p1 0.421875 0.765625 p2 0.703125 1.00000 rank owner: 2
+DEAL:1:: Bounding box: p1 0.515625 0.250000 p2 0.750000 0.531250 rank owner: 1
+DEAL:1:: Bounding box: p1 0.687500 0.718750 p2 0.921875 1.00000 rank owner: 2
+DEAL:1:: Bounding box: p1 0.687500 0.531250 p2 1.00000 0.734375 rank owner: 2
+DEAL:1:: Bounding box: p1 0.734375 0.468750 p2 1.00000 0.531250 rank owner: 1
+DEAL:1:: Bounding box: p1 0.734375 0.250000 p2 1.00000 0.484375 rank owner: 1
+DEAL:1:: Bounding box: p1 0.750000 0.00000 p2 1.00000 0.265625 rank owner: 1
+DEAL:1:: Bounding box: p1 0.906250 0.734375 p2 1.00000 1.00000 rank owner: 2
+DEAL:1::Testing for dim = 3
+DEAL:1:: Bounding box: p1 0.00000 0.531250 0.00000 p2 0.562500 1.00000 0.500000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.468750 0.468750 p2 0.437500 1.00000 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.406250 0.468750 0.468750 p2 0.562500 1.00000 1.00000 rank owner: 0
+DEAL:1:: Bounding box: p1 0.00000 0.00000 0.00000 p2 0.562500 0.531250 0.437500 rank owner: 1
+DEAL:1:: Bounding box: p1 0.00000 0.00000 0.406250 p2 0.406250 0.531250 1.00000 rank owner: 1
+DEAL:1:: Bounding box: p1 0.375000 0.00000 0.406250 p2 0.562500 0.531250 1.00000 rank owner: 1
+DEAL:1:: Bounding box: p1 0.562500 0.531250 0.00000 p2 1.00000 1.00000 0.625000 rank owner: 2
+DEAL:1:: Bounding box: p1 0.531250 0.531250 0.593750 p2 1.00000 1.00000 1.00000 rank owner: 2
+DEAL:1:: Bounding box: p1 0.500000 0.00000 0.00000 p2 1.00000 0.531250 0.531250 rank owner: 3
+DEAL:1:: Bounding box: p1 0.468750 0.00000 0.500000 p2 0.906250 0.531250 1.00000 rank owner: 3
+DEAL:1:: Bounding box: p1 0.875000 0.00000 0.500000 p2 1.00000 0.531250 1.00000 rank owner: 3
+
+
+DEAL:2::Testing for dim = 1
+DEAL:2:: Bounding box: p1 0.257812 p2 0.382812 rank owner: 0
+DEAL:2:: Bounding box: p1 0.382812 p2 0.500000 rank owner: 0
+DEAL:2:: Bounding box: p1 0.500000 p2 0.531250 rank owner: 0
+DEAL:2:: Bounding box: p1 0.00000 p2 0.125000 rank owner: 1
+DEAL:2:: Bounding box: p1 0.125000 p2 0.226562 rank owner: 1
+DEAL:2:: Bounding box: p1 0.226562 p2 0.257812 rank owner: 1
+DEAL:2:: Bounding box: p1 0.765625 p2 0.890625 rank owner: 2
+DEAL:2:: Bounding box: p1 0.890625 p2 1.00000 rank owner: 2
+DEAL:2:: Bounding box: p1 0.531250 p2 0.656250 rank owner: 3
+DEAL:2:: Bounding box: p1 0.656250 p2 0.765625 rank owner: 3
+DEAL:2::Testing for dim = 2
+DEAL:2:: Bounding box: p1 0.250000 0.00000 p2 0.515625 0.250000 rank owner: 0
+DEAL:2:: Bounding box: p1 0.00000 0.00000 p2 0.265625 0.250000 rank owner: 0
+DEAL:2:: Bounding box: p1 0.00000 0.234375 p2 0.218750 0.531250 rank owner: 0
+DEAL:2:: Bounding box: p1 0.203125 0.234375 p2 0.515625 0.453125 rank owner: 0
+DEAL:2:: Bounding box: p1 0.218750 0.437500 p2 0.515625 0.531250 rank owner: 0
+DEAL:2:: Bounding box: p1 0.328125 0.828125 p2 0.421875 1.00000 rank owner: 3
+DEAL:2:: Bounding box: p1 0.00000 0.812500 p2 0.343750 1.00000 rank owner: 3
+DEAL:2:: Bounding box: p1 0.203125 0.531250 p2 0.421875 0.828125 rank owner: 3
+DEAL:2:: Bounding box: p1 0.00000 0.531250 p2 0.218750 0.828125 rank owner: 3
+DEAL:2:: Bounding box: p1 0.515625 0.00000 p2 0.765625 0.265625 rank owner: 1
+DEAL:2:: Bounding box: p1 0.421875 0.531250 p2 0.687500 0.781250 rank owner: 2
+DEAL:2:: Bounding box: p1 0.421875 0.765625 p2 0.703125 1.00000 rank owner: 2
+DEAL:2:: Bounding box: p1 0.515625 0.250000 p2 0.750000 0.531250 rank owner: 1
+DEAL:2:: Bounding box: p1 0.687500 0.718750 p2 0.921875 1.00000 rank owner: 2
+DEAL:2:: Bounding box: p1 0.687500 0.531250 p2 1.00000 0.734375 rank owner: 2
+DEAL:2:: Bounding box: p1 0.734375 0.468750 p2 1.00000 0.531250 rank owner: 1
+DEAL:2:: Bounding box: p1 0.734375 0.250000 p2 1.00000 0.484375 rank owner: 1
+DEAL:2:: Bounding box: p1 0.750000 0.00000 p2 1.00000 0.265625 rank owner: 1
+DEAL:2:: Bounding box: p1 0.906250 0.734375 p2 1.00000 1.00000 rank owner: 2
+DEAL:2::Testing for dim = 3
+DEAL:2:: Bounding box: p1 0.00000 0.531250 0.00000 p2 0.562500 1.00000 0.500000 rank owner: 0
+DEAL:2:: Bounding box: p1 0.00000 0.468750 0.468750 p2 0.437500 1.00000 1.00000 rank owner: 0
+DEAL:2:: Bounding box: p1 0.406250 0.468750 0.468750 p2 0.562500 1.00000 1.00000 rank owner: 0
+DEAL:2:: Bounding box: p1 0.00000 0.00000 0.00000 p2 0.562500 0.531250 0.437500 rank owner: 1
+DEAL:2:: Bounding box: p1 0.00000 0.00000 0.406250 p2 0.406250 0.531250 1.00000 rank owner: 1
+DEAL:2:: Bounding box: p1 0.375000 0.00000 0.406250 p2 0.562500 0.531250 1.00000 rank owner: 1
+DEAL:2:: Bounding box: p1 0.562500 0.531250 0.00000 p2 1.00000 1.00000 0.625000 rank owner: 2
+DEAL:2:: Bounding box: p1 0.531250 0.531250 0.593750 p2 1.00000 1.00000 1.00000 rank owner: 2
+DEAL:2:: Bounding box: p1 0.500000 0.00000 0.00000 p2 1.00000 0.531250 0.531250 rank owner: 3
+DEAL:2:: Bounding box: p1 0.468750 0.00000 0.500000 p2 0.906250 0.531250 1.00000 rank owner: 3
+DEAL:2:: Bounding box: p1 0.875000 0.00000 0.500000 p2 1.00000 0.531250 1.00000 rank owner: 3
+
+
+DEAL:3::Testing for dim = 1
+DEAL:3:: Bounding box: p1 0.257812 p2 0.382812 rank owner: 0
+DEAL:3:: Bounding box: p1 0.382812 p2 0.500000 rank owner: 0
+DEAL:3:: Bounding box: p1 0.500000 p2 0.531250 rank owner: 0
+DEAL:3:: Bounding box: p1 0.00000 p2 0.125000 rank owner: 1
+DEAL:3:: Bounding box: p1 0.125000 p2 0.226562 rank owner: 1
+DEAL:3:: Bounding box: p1 0.226562 p2 0.257812 rank owner: 1
+DEAL:3:: Bounding box: p1 0.765625 p2 0.890625 rank owner: 2
+DEAL:3:: Bounding box: p1 0.890625 p2 1.00000 rank owner: 2
+DEAL:3:: Bounding box: p1 0.531250 p2 0.656250 rank owner: 3
+DEAL:3:: Bounding box: p1 0.656250 p2 0.765625 rank owner: 3
+DEAL:3::Testing for dim = 2
+DEAL:3:: Bounding box: p1 0.250000 0.00000 p2 0.515625 0.250000 rank owner: 0
+DEAL:3:: Bounding box: p1 0.00000 0.00000 p2 0.265625 0.250000 rank owner: 0
+DEAL:3:: Bounding box: p1 0.00000 0.234375 p2 0.218750 0.531250 rank owner: 0
+DEAL:3:: Bounding box: p1 0.203125 0.234375 p2 0.515625 0.453125 rank owner: 0
+DEAL:3:: Bounding box: p1 0.218750 0.437500 p2 0.515625 0.531250 rank owner: 0
+DEAL:3:: Bounding box: p1 0.328125 0.828125 p2 0.421875 1.00000 rank owner: 3
+DEAL:3:: Bounding box: p1 0.00000 0.812500 p2 0.343750 1.00000 rank owner: 3
+DEAL:3:: Bounding box: p1 0.203125 0.531250 p2 0.421875 0.828125 rank owner: 3
+DEAL:3:: Bounding box: p1 0.00000 0.531250 p2 0.218750 0.828125 rank owner: 3
+DEAL:3:: Bounding box: p1 0.515625 0.00000 p2 0.765625 0.265625 rank owner: 1
+DEAL:3:: Bounding box: p1 0.421875 0.531250 p2 0.687500 0.781250 rank owner: 2
+DEAL:3:: Bounding box: p1 0.421875 0.765625 p2 0.703125 1.00000 rank owner: 2
+DEAL:3:: Bounding box: p1 0.515625 0.250000 p2 0.750000 0.531250 rank owner: 1
+DEAL:3:: Bounding box: p1 0.687500 0.718750 p2 0.921875 1.00000 rank owner: 2
+DEAL:3:: Bounding box: p1 0.687500 0.531250 p2 1.00000 0.734375 rank owner: 2
+DEAL:3:: Bounding box: p1 0.734375 0.468750 p2 1.00000 0.531250 rank owner: 1
+DEAL:3:: Bounding box: p1 0.734375 0.250000 p2 1.00000 0.484375 rank owner: 1
+DEAL:3:: Bounding box: p1 0.750000 0.00000 p2 1.00000 0.265625 rank owner: 1
+DEAL:3:: Bounding box: p1 0.906250 0.734375 p2 1.00000 1.00000 rank owner: 2
+DEAL:3::Testing for dim = 3
+DEAL:3:: Bounding box: p1 0.00000 0.531250 0.00000 p2 0.562500 1.00000 0.500000 rank owner: 0
+DEAL:3:: Bounding box: p1 0.00000 0.468750 0.468750 p2 0.437500 1.00000 1.00000 rank owner: 0
+DEAL:3:: Bounding box: p1 0.406250 0.468750 0.468750 p2 0.562500 1.00000 1.00000 rank owner: 0
+DEAL:3:: Bounding box: p1 0.00000 0.00000 0.00000 p2 0.562500 0.531250 0.437500 rank owner: 1
+DEAL:3:: Bounding box: p1 0.00000 0.00000 0.406250 p2 0.406250 0.531250 1.00000 rank owner: 1
+DEAL:3:: Bounding box: p1 0.375000 0.00000 0.406250 p2 0.562500 0.531250 1.00000 rank owner: 1
+DEAL:3:: Bounding box: p1 0.562500 0.531250 0.00000 p2 1.00000 1.00000 0.625000 rank owner: 2
+DEAL:3:: Bounding box: p1 0.531250 0.531250 0.593750 p2 1.00000 1.00000 1.00000 rank owner: 2
+DEAL:3:: Bounding box: p1 0.500000 0.00000 0.00000 p2 1.00000 0.531250 0.531250 rank owner: 3
+DEAL:3:: Bounding box: p1 0.468750 0.00000 0.500000 p2 0.906250 0.531250 1.00000 rank owner: 3
+DEAL:3:: Bounding box: p1 0.875000 0.00000 0.500000 p2 1.00000 0.531250 1.00000 rank owner: 3
+