]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Fix face orientation 15678/head
authorPeter Munch <peterrmuench@gmail.com>
Sun, 2 Jul 2023 01:22:27 +0000 (03:22 +0200)
committerPeter Munch <peterrmuench@gmail.com>
Fri, 7 Jul 2023 16:56:00 +0000 (18:56 +0200)
include/deal.II/grid/reference_cell.h
tests/simplex/orientation_02.cc
tests/simplex/orientation_02.output
tests/simplex/orientation_03.cc [new file with mode: 0644]
tests/simplex/orientation_03.output [new file with mode: 0644]

index df8bb493e28513616f89401005fae2c8712bee9b..75ae88871ac06e9841a1e33319fe5fe8147eaac4 100644 (file)
@@ -875,9 +875,9 @@ private:
     {{{0, 2, 1}},
      {{0, 1, 2}},
      {{2, 1, 0}},
-     {{1, 2, 0}},
+     {{2, 0, 1}},
      {{1, 0, 2}},
-     {{2, 0, 1}}}};
+     {{1, 2, 0}}}};
 
   /**
    * Table containing all vertex permutations for a quadrilateral.
@@ -2016,9 +2016,9 @@ ReferenceCell::standard_to_real_face_line(
   static constexpr ndarray<unsigned int, 6, 3> triangle_table = {{{{2, 1, 0}},
                                                                   {{0, 1, 2}},
                                                                   {{1, 0, 2}},
-                                                                  {{1, 2, 0}},
+                                                                  {{2, 0, 1}},
                                                                   {{0, 2, 1}},
-                                                                  {{2, 0, 1}}}};
+                                                                  {{1, 2, 0}}}};
 
 
   switch (this->kind)
@@ -2750,11 +2750,11 @@ ReferenceCell::get_combined_orientation(
 
         // face_orientation=true, face_rotation=true, face_flip=false
         if (v0_equals({vertices_1[1], vertices_1[2], vertices_1[0]}))
-          return 3;
+          return 5;
 
         // face_orientation=true, face_rotation=false, face_flip=true
         if (v0_equals({vertices_1[2], vertices_1[0], vertices_1[1]}))
-          return 5;
+          return 3;
 
         // face_orientation=false, face_rotation=false, face_flip=false
         if (v0_equals({vertices_1[0], vertices_1[2], vertices_1[1]}))
index aa48ff162f642261133f94e47cf863c897342040..abe8510c6d9313b6cb6853b76ebeb8587c773847 100644 (file)
@@ -47,11 +47,8 @@ test(const unsigned int orientation)
     const auto &face = dummy.begin()->face(face_no);
     const auto  permuted =
       ReferenceCell(ReferenceCells::Triangle)
-        .permute_according_orientation(
-          std::array<unsigned int, 3>{{face->vertex_index(0),
-                                       face->vertex_index(1),
-                                       face->vertex_index(2)}},
-          orientation);
+        .permute_according_orientation(std::array<unsigned int, 3>{{0, 1, 2}},
+                                       orientation);
 
     auto direction =
       cross_product_3d(vertices[permuted[1]] - vertices[permuted[0]],
@@ -61,7 +58,12 @@ test(const unsigned int orientation)
     vertices.push_back(face->center() + direction);
 
     CellData<3> cell;
-    cell.vertices = {permuted[0], permuted[1], permuted[2], 4u};
+    cell.vertices.resize(4);
+
+    cell.vertices[permuted[0]] = face->vertex_index(0);
+    cell.vertices[permuted[1]] = face->vertex_index(1);
+    cell.vertices[permuted[2]] = face->vertex_index(2);
+    cell.vertices[3]           = 4;
 
     cell.material_id = 1;
     cells.push_back(cell);
@@ -73,10 +75,8 @@ test(const unsigned int orientation)
   cell++;
 
   // check orientation
-  deallog << "face orientation: " << orientation << ' ' << std::endl;
-  AssertDimension(orientation,
-                  (cell->face_orientation(0) * 1 + cell->face_rotation(0) * 2 +
-                   cell->face_flip(0) * 4));
+  deallog << "face orientation: " << orientation << ' '
+          << int(cell->combined_face_orientation(0)) << ' ' << std::endl;
 
   // check vertices
   {
index 4291a7ca460cd76be8c34dd65a905e392d4e7984..f308743edbbb6202a8ee97c86b9e645a3f6d0f24 100644 (file)
@@ -1,37 +1,37 @@
 
-DEAL::face orientation: 0 
+DEAL::face orientation: 0 
 DEAL::0 2 1 4  vs. 0 2 1 4 
 DEAL::0-2 vs. 0-2
 DEAL::1-2 vs. 1-2
 DEAL::0-1 vs. 0-1
 DEAL::
-DEAL::face orientation: 1 
+DEAL::face orientation: 1 
 DEAL::0 1 2 4  vs. 0 1 2 4 
 DEAL::0-1 vs. 0-1
 DEAL::1-2 vs. 1-2
 DEAL::0-2 vs. 0-2
 DEAL::
-DEAL::face orientation: 2 
+DEAL::face orientation: 2 
 DEAL::2 1 0 4  vs. 2 1 0 4 
 DEAL::1-2 vs. 1-2
 DEAL::0-1 vs. 0-1
 DEAL::0-2 vs. 0-2
 DEAL::
-DEAL::face orientation: 3 
-DEAL::1 2 0 4  vs. 1 2 0 4 
-DEAL::1-2 vs. 1-2
+DEAL::face orientation: 3 3 
+DEAL::2 0 1 4  vs. 2 0 1 4 
 DEAL::0-2 vs. 0-2
 DEAL::0-1 vs. 0-1
+DEAL::1-2 vs. 1-2
 DEAL::
-DEAL::face orientation: 4 
+DEAL::face orientation: 4 
 DEAL::1 0 2 4  vs. 1 0 2 4 
 DEAL::0-1 vs. 0-1
 DEAL::0-2 vs. 0-2
 DEAL::1-2 vs. 1-2
 DEAL::
-DEAL::face orientation: 5 
-DEAL::2 0 1 4  vs. 2 0 1 4 
+DEAL::face orientation: 5 5 
+DEAL::1 2 0 4  vs. 1 2 0 4 
+DEAL::1-2 vs. 1-2
 DEAL::0-2 vs. 0-2
 DEAL::0-1 vs. 0-1
-DEAL::1-2 vs. 1-2
 DEAL::
diff --git a/tests/simplex/orientation_03.cc b/tests/simplex/orientation_03.cc
new file mode 100644 (file)
index 0000000..0f881d4
--- /dev/null
@@ -0,0 +1,175 @@
+// ---------------------------------------------------------------------
+//
+// Copyright (C) 2023 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.
+//
+// ---------------------------------------------------------------------
+
+// Test a mesh with two tetrahedra for all possible orientations. Similar to
+// orientation_02 but also checks that quadrature points on faces (computed via
+// FEFaceValues) are correct.
+
+#include <deal.II/fe/fe_nothing.h>
+#include <deal.II/fe/fe_simplex_p.h>
+#include <deal.II/fe/fe_values.h>
+#include <deal.II/fe/mapping.h>
+
+#include <deal.II/grid/grid_generator.h>
+#include <deal.II/grid/reference_cell.h>
+#include <deal.II/grid/tria.h>
+
+#include "../tests.h"
+
+void
+test_face(const std::vector<Point<3>> &   vertices_,
+          const std::vector<CellData<3>> &cell_data_,
+          const unsigned int              face_n)
+{
+  const ReferenceCell ref_cell  = ReferenceCells::Tetrahedron;
+  auto                vertices  = vertices_;
+  auto                cell_data = cell_data_;
+
+  Point<3> extra_vertex;
+  for (unsigned int i = 0; i < 3; ++i)
+    extra_vertex += ref_cell.template vertex<3>(ref_cell.face_to_cell_vertices(
+      face_n, i, ReferenceCell::default_combined_face_orientation()));
+
+  extra_vertex /= 3.0;
+  extra_vertex += ref_cell.template unit_normal_vectors<3>(face_n);
+
+  vertices.push_back(extra_vertex);
+
+  cell_data.emplace_back();
+  cell_data.back().vertices.resize(0);
+  for (unsigned int i = 0; i < 3; ++i)
+    cell_data.back().vertices.push_back(ref_cell.face_to_cell_vertices(
+      face_n, i, ref_cell.default_combined_face_orientation()));
+  cell_data.back().vertices.push_back(ref_cell.n_vertices());
+  std::sort(cell_data.back().vertices.begin(), cell_data.back().vertices.end());
+
+  unsigned int permutation_n = 0;
+  do
+    {
+      Triangulation<3> tria;
+      tria.create_triangulation(vertices, cell_data, SubCellData());
+      deallog << "  p2 = " << permutation_n;
+
+      FE_Nothing<3>     fe(ref_cell);
+      const Mapping<3> &mapping =
+        ref_cell.template get_default_linear_mapping<3>();
+      Quadrature<2> face_quad(FE_SimplexP<3>(1).get_unit_face_support_points());
+
+      FEFaceValues<3> cell_face_values(mapping,
+                                       fe,
+                                       face_quad,
+                                       update_quadrature_points);
+      FEFaceValues<3> neighbor_cell_face_values(mapping,
+                                                fe,
+                                                face_quad,
+                                                update_quadrature_points);
+
+      for (const auto &cell : tria.active_cell_iterators())
+        for (unsigned int face_no : cell->face_indices())
+          {
+            auto neighbor_cell = cell->neighbor(face_no);
+            if (neighbor_cell == tria.end())
+              continue;
+
+            auto face = cell->face(face_no);
+            cell_face_values.reinit(cell, face);
+            unsigned int neighbor_face_no = 0;
+            for (; neighbor_face_no < ref_cell.n_faces(); ++neighbor_face_no)
+              if (neighbor_cell->face(neighbor_face_no) == face)
+                break;
+            neighbor_cell_face_values.reinit(neighbor_cell, neighbor_face_no);
+
+            deallog << " : " << int(cell->combined_face_orientation(face_no))
+                    << ", "
+                    << int(neighbor_cell->combined_face_orientation(
+                         neighbor_face_no));
+
+            double max_distance = 0.0;
+            for (unsigned int q = 0; q < face_quad.size(); ++q)
+              max_distance = std::max(
+                max_distance,
+                cell_face_values.get_quadrature_points()[q].distance(
+                  neighbor_cell_face_values.get_quadrature_points()[q]));
+
+            if (max_distance > 1e-12)
+              {
+                deallog << "!!!!! Found a wrong point permutation !!!!!"
+                        << std::endl;
+
+                deallog << "cell points =" << std::endl;
+                for (unsigned int q = 0; q < face_quad.size(); ++q)
+                  {
+                    deallog << " "
+                            << cell_face_values.get_quadrature_points()[q]
+                            << std::endl;
+                  }
+                deallog << std::endl;
+
+                deallog << "neighbor_cell points =" << std::endl;
+                for (unsigned int q = 0; q < face_quad.size(); ++q)
+                  {
+                    deallog
+                      << " "
+                      << neighbor_cell_face_values.get_quadrature_points()[q]
+                      << std::endl;
+                  }
+                deallog << std::endl;
+
+                AssertThrow(false, ExcMessage("Should match"));
+              }
+          }
+      deallog << std::endl;
+      ++permutation_n;
+    }
+  while (std::next_permutation(cell_data.back().vertices.begin(),
+                               cell_data.back().vertices.end()));
+}
+
+void
+test()
+{
+  std::vector<Point<3>> vertices;
+  vertices.emplace_back(0.0, 0.0, 0.0);
+  vertices.emplace_back(1.0, 0.0, 0.0);
+  vertices.emplace_back(0.0, 1.0, 0.0);
+  vertices.emplace_back(0.0, 0.0, 1.0);
+
+  std::vector<CellData<3>> cells;
+  cells.emplace_back();
+  cells.back().vertices = {0, 1, 2, 3};
+
+  for (unsigned int face_n = 0; face_n < 4; ++face_n)
+    {
+      std::sort(cells.back().vertices.begin(), cells.back().vertices.end());
+      unsigned int permutation_n = 0;
+      deallog << "face_n = " << face_n << std::endl;
+      do
+        {
+          deallog << "p1 = " << permutation_n << std::endl;
+          test_face(vertices, cells, face_n);
+          ++permutation_n;
+        }
+      while (std::next_permutation(cells.back().vertices.begin(),
+                                   cells.back().vertices.end()));
+    }
+}
+
+int
+main()
+{
+  initlog();
+
+  test();
+}
diff --git a/tests/simplex/orientation_03.output b/tests/simplex/orientation_03.output
new file mode 100644 (file)
index 0000000..2e6b758
--- /dev/null
@@ -0,0 +1,2405 @@
+
+DEAL::face_n = 0
+DEAL::  p1 = 0
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 1
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 2
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 3
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 4
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 5
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 6
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 7
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 8
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 9
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 10
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 11
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 12
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 13
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 14
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 15
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 16
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 17
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 18
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 19
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 20
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 21
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 22
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 23
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::face_n = 1
+DEAL::  p1 = 0
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 1
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 2
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 3
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 4
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 5
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 6
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 7
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 8
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 9
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 10
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 11
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 12
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 13
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 14
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 15
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 16
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 17
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 18
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 19
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 20
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 21
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 22
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 23
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::face_n = 2
+DEAL::  p1 = 0
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 1
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 2
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 3
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 4
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 5
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 6
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 7
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 8
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 9
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 10
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 11
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 12
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 13
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 14
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 15
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 16
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 17
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 18
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 19
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 20
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 21
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 22
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 23
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::face_n = 3
+DEAL::  p1 = 0
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 1
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 2
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 3
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 4
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 5
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 6
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 7
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 8
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 9
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 10
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 11
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 12
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 13
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 14
+DEAL::  p2 = 0 : 1, 1 : 1, 1
+DEAL::  p2 = 1 : 1, 4 : 4, 1
+DEAL::  p2 = 2 : 1, 0 : 0, 1
+DEAL::  p2 = 3 : 1, 3 : 3, 1
+DEAL::  p2 = 4 : 1, 1 : 1, 1
+DEAL::  p2 = 5 : 1, 0 : 0, 1
+DEAL::  p2 = 6 : 1, 4 : 4, 1
+DEAL::  p2 = 7 : 1, 1 : 1, 1
+DEAL::  p2 = 8 : 1, 5 : 5, 1
+DEAL::  p2 = 9 : 1, 2 : 2, 1
+DEAL::  p2 = 10 : 1, 4 : 4, 1
+DEAL::  p2 = 11 : 1, 5 : 5, 1
+DEAL::  p2 = 12 : 1, 3 : 3, 1
+DEAL::  p2 = 13 : 1, 0 : 0, 1
+DEAL::  p2 = 14 : 1, 2 : 2, 1
+DEAL::  p2 = 15 : 1, 5 : 5, 1
+DEAL::  p2 = 16 : 1, 3 : 3, 1
+DEAL::  p2 = 17 : 1, 2 : 2, 1
+DEAL::  p2 = 18 : 1, 4 : 4, 1
+DEAL::  p2 = 19 : 1, 3 : 3, 1
+DEAL::  p2 = 20 : 1, 1 : 1, 1
+DEAL::  p2 = 21 : 1, 2 : 2, 1
+DEAL::  p2 = 22 : 1, 0 : 0, 1
+DEAL::  p2 = 23 : 1, 5 : 5, 1
+DEAL::  p1 = 15
+DEAL::  p2 = 0 : 1, 4 : 4, 1
+DEAL::  p2 = 1 : 1, 1 : 1, 1
+DEAL::  p2 = 2 : 1, 5 : 5, 1
+DEAL::  p2 = 3 : 1, 2 : 2, 1
+DEAL::  p2 = 4 : 1, 4 : 4, 1
+DEAL::  p2 = 5 : 1, 5 : 5, 1
+DEAL::  p2 = 6 : 1, 1 : 1, 1
+DEAL::  p2 = 7 : 1, 4 : 4, 1
+DEAL::  p2 = 8 : 1, 0 : 0, 1
+DEAL::  p2 = 9 : 1, 3 : 3, 1
+DEAL::  p2 = 10 : 1, 1 : 1, 1
+DEAL::  p2 = 11 : 1, 0 : 0, 1
+DEAL::  p2 = 12 : 1, 2 : 2, 1
+DEAL::  p2 = 13 : 1, 5 : 5, 1
+DEAL::  p2 = 14 : 1, 3 : 3, 1
+DEAL::  p2 = 15 : 1, 0 : 0, 1
+DEAL::  p2 = 16 : 1, 2 : 2, 1
+DEAL::  p2 = 17 : 1, 3 : 3, 1
+DEAL::  p2 = 18 : 1, 1 : 1, 1
+DEAL::  p2 = 19 : 1, 2 : 2, 1
+DEAL::  p2 = 20 : 1, 4 : 4, 1
+DEAL::  p2 = 21 : 1, 3 : 3, 1
+DEAL::  p2 = 22 : 1, 5 : 5, 1
+DEAL::  p2 = 23 : 1, 0 : 0, 1
+DEAL::  p1 = 16
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 17
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 18
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 19
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1
+DEAL::  p1 = 20
+DEAL::  p2 = 0 : 1, 0 : 0, 1
+DEAL::  p2 = 1 : 1, 3 : 3, 1
+DEAL::  p2 = 2 : 1, 1 : 1, 1
+DEAL::  p2 = 3 : 1, 4 : 4, 1
+DEAL::  p2 = 4 : 1, 0 : 0, 1
+DEAL::  p2 = 5 : 1, 1 : 1, 1
+DEAL::  p2 = 6 : 1, 3 : 3, 1
+DEAL::  p2 = 7 : 1, 0 : 0, 1
+DEAL::  p2 = 8 : 1, 2 : 2, 1
+DEAL::  p2 = 9 : 1, 5 : 5, 1
+DEAL::  p2 = 10 : 1, 3 : 3, 1
+DEAL::  p2 = 11 : 1, 2 : 2, 1
+DEAL::  p2 = 12 : 1, 4 : 4, 1
+DEAL::  p2 = 13 : 1, 1 : 1, 1
+DEAL::  p2 = 14 : 1, 5 : 5, 1
+DEAL::  p2 = 15 : 1, 2 : 2, 1
+DEAL::  p2 = 16 : 1, 4 : 4, 1
+DEAL::  p2 = 17 : 1, 5 : 5, 1
+DEAL::  p2 = 18 : 1, 3 : 3, 1
+DEAL::  p2 = 19 : 1, 4 : 4, 1
+DEAL::  p2 = 20 : 1, 0 : 0, 1
+DEAL::  p2 = 21 : 1, 5 : 5, 1
+DEAL::  p2 = 22 : 1, 1 : 1, 1
+DEAL::  p2 = 23 : 1, 2 : 2, 1
+DEAL::  p1 = 21
+DEAL::  p2 = 0 : 1, 5 : 5, 1
+DEAL::  p2 = 1 : 1, 2 : 2, 1
+DEAL::  p2 = 2 : 1, 4 : 4, 1
+DEAL::  p2 = 3 : 1, 1 : 1, 1
+DEAL::  p2 = 4 : 1, 5 : 5, 1
+DEAL::  p2 = 5 : 1, 4 : 4, 1
+DEAL::  p2 = 6 : 1, 2 : 2, 1
+DEAL::  p2 = 7 : 1, 5 : 5, 1
+DEAL::  p2 = 8 : 1, 3 : 3, 1
+DEAL::  p2 = 9 : 1, 0 : 0, 1
+DEAL::  p2 = 10 : 1, 2 : 2, 1
+DEAL::  p2 = 11 : 1, 3 : 3, 1
+DEAL::  p2 = 12 : 1, 1 : 1, 1
+DEAL::  p2 = 13 : 1, 4 : 4, 1
+DEAL::  p2 = 14 : 1, 0 : 0, 1
+DEAL::  p2 = 15 : 1, 3 : 3, 1
+DEAL::  p2 = 16 : 1, 1 : 1, 1
+DEAL::  p2 = 17 : 1, 0 : 0, 1
+DEAL::  p2 = 18 : 1, 2 : 2, 1
+DEAL::  p2 = 19 : 1, 1 : 1, 1
+DEAL::  p2 = 20 : 1, 5 : 5, 1
+DEAL::  p2 = 21 : 1, 0 : 0, 1
+DEAL::  p2 = 22 : 1, 4 : 4, 1
+DEAL::  p2 = 23 : 1, 3 : 3, 1
+DEAL::  p1 = 22
+DEAL::  p2 = 0 : 1, 3 : 3, 1
+DEAL::  p2 = 1 : 1, 0 : 0, 1
+DEAL::  p2 = 2 : 1, 2 : 2, 1
+DEAL::  p2 = 3 : 1, 5 : 5, 1
+DEAL::  p2 = 4 : 1, 3 : 3, 1
+DEAL::  p2 = 5 : 1, 2 : 2, 1
+DEAL::  p2 = 6 : 1, 0 : 0, 1
+DEAL::  p2 = 7 : 1, 3 : 3, 1
+DEAL::  p2 = 8 : 1, 1 : 1, 1
+DEAL::  p2 = 9 : 1, 4 : 4, 1
+DEAL::  p2 = 10 : 1, 0 : 0, 1
+DEAL::  p2 = 11 : 1, 1 : 1, 1
+DEAL::  p2 = 12 : 1, 5 : 5, 1
+DEAL::  p2 = 13 : 1, 2 : 2, 1
+DEAL::  p2 = 14 : 1, 4 : 4, 1
+DEAL::  p2 = 15 : 1, 1 : 1, 1
+DEAL::  p2 = 16 : 1, 5 : 5, 1
+DEAL::  p2 = 17 : 1, 4 : 4, 1
+DEAL::  p2 = 18 : 1, 0 : 0, 1
+DEAL::  p2 = 19 : 1, 5 : 5, 1
+DEAL::  p2 = 20 : 1, 3 : 3, 1
+DEAL::  p2 = 21 : 1, 4 : 4, 1
+DEAL::  p2 = 22 : 1, 2 : 2, 1
+DEAL::  p2 = 23 : 1, 1 : 1, 1
+DEAL::  p1 = 23
+DEAL::  p2 = 0 : 1, 2 : 2, 1
+DEAL::  p2 = 1 : 1, 5 : 5, 1
+DEAL::  p2 = 2 : 1, 3 : 3, 1
+DEAL::  p2 = 3 : 1, 0 : 0, 1
+DEAL::  p2 = 4 : 1, 2 : 2, 1
+DEAL::  p2 = 5 : 1, 3 : 3, 1
+DEAL::  p2 = 6 : 1, 5 : 5, 1
+DEAL::  p2 = 7 : 1, 2 : 2, 1
+DEAL::  p2 = 8 : 1, 4 : 4, 1
+DEAL::  p2 = 9 : 1, 1 : 1, 1
+DEAL::  p2 = 10 : 1, 5 : 5, 1
+DEAL::  p2 = 11 : 1, 4 : 4, 1
+DEAL::  p2 = 12 : 1, 0 : 0, 1
+DEAL::  p2 = 13 : 1, 3 : 3, 1
+DEAL::  p2 = 14 : 1, 1 : 1, 1
+DEAL::  p2 = 15 : 1, 4 : 4, 1
+DEAL::  p2 = 16 : 1, 0 : 0, 1
+DEAL::  p2 = 17 : 1, 1 : 1, 1
+DEAL::  p2 = 18 : 1, 5 : 5, 1
+DEAL::  p2 = 19 : 1, 0 : 0, 1
+DEAL::  p2 = 20 : 1, 2 : 2, 1
+DEAL::  p2 = 21 : 1, 1 : 1, 1
+DEAL::  p2 = 22 : 1, 3 : 3, 1
+DEAL::  p2 = 23 : 1, 4 : 4, 1

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.