From cb6fe37c311d7f8d92be207aabb76001854ac6cc Mon Sep 17 00:00:00 2001 From: Guido Kanschat Date: Wed, 19 Feb 2014 14:20:09 +0000 Subject: [PATCH] change default size of SVG output to something usable and add a few more options git-svn-id: https://svn.dealii.org/trunk@32513 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/include/deal.II/grid/grid_out.h | 7 + deal.II/source/grid/grid_out.cc | 70 +- tests/grid/grid_out_svg_01.output | 446 +-- tests/grid/grid_out_svg_02.cc | 46 +- tests/grid/grid_out_svg_02.output | 3608 +++++++++++++++++++++-- 5 files changed, 3590 insertions(+), 587 deletions(-) diff --git a/deal.II/include/deal.II/grid/grid_out.h b/deal.II/include/deal.II/grid/grid_out.h index 22359a950a..757e1b7bd8 100644 --- a/deal.II/include/deal.II/grid/grid_out.h +++ b/deal.II/include/deal.II/grid/grid_out.h @@ -617,6 +617,10 @@ namespace GridOutFlags */ struct Svg { + /// Height of the plot in SVG units, computed from width if zero. Defaults to 1000 + unsigned int height; + /// The width of the plot. Computed automatically from height if zero (default) + unsigned int width; /// Thickness of the lines between cells unsigned int line_thickness; /// Thickness of lines at the boundary @@ -672,6 +676,9 @@ namespace GridOutFlags /// Interpret the level number of the cells as altitude over the x-y-plane (useful in the perpspective view). bool convert_level_number_to_height; + /// The factor determining the vertical distance between levels (default = 0.3) + float level_height_factor; + /** * Cell labeling (fixed order). * diff --git a/deal.II/source/grid/grid_out.cc b/deal.II/source/grid/grid_out.cc index f0dd256b68..e2a26b6907 100644 --- a/deal.II/source/grid/grid_out.cc +++ b/deal.II/source/grid/grid_out.cc @@ -16,6 +16,7 @@ #include #include +#include #include #include #include @@ -355,22 +356,26 @@ namespace GridOutFlags const bool label_material_id, const bool label_subdomain_id, const bool draw_colorbar, - const bool draw_legend) : - line_thickness(line_thickness), - boundary_line_thickness(boundary_line_thickness), - margin(margin), - background(background), - azimuth_angle(azimuth_angle), - polar_angle(polar_angle), - coloring(coloring), - convert_level_number_to_height(convert_level_number_to_height), - label_level_number(label_level_number), - label_cell_index(label_cell_index), - label_material_id(label_material_id), - label_subdomain_id(label_subdomain_id), - label_level_subdomain_id(false), - draw_colorbar(draw_colorbar), - draw_legend(draw_legend) + const bool draw_legend) + : + height(1000), + width(0), + line_thickness(line_thickness), + boundary_line_thickness(boundary_line_thickness), + margin(margin), + background(background), + azimuth_angle(azimuth_angle), + polar_angle(polar_angle), + coloring(coloring), + convert_level_number_to_height(convert_level_number_to_height), + level_height_factor(0.3f), + label_level_number(label_level_number), + label_cell_index(label_cell_index), + label_material_id(label_material_id), + label_subdomain_id(label_subdomain_id), + label_level_subdomain_id(false), + draw_colorbar(draw_colorbar), + draw_legend(draw_legend) {} MathGL::MathGL () @@ -1374,8 +1379,9 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const // grid to 4000 and adapt the number of width // elements with respect to the bounding box of // the given triangulation. - const unsigned int height = 4000; // TODO [CW]: consider other options, especially if the polar angle approaches 90° - unsigned int width; + unsigned int height = svg_flags.height; + unsigned int width = svg_flags.width; + Assert (height != 0 || width != 0, ExcMessage("You have to set at least one of width and height")); unsigned int margin_in_percent = 0; if (svg_flags.margin || svg_flags.background == GridOutFlags::Svg::dealii) @@ -1384,9 +1390,6 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const // initial font size for cell labels unsigned int cell_label_font_size; - // font size for date, time, legend, and colorbar - unsigned int font_size = static_cast(.5 + (height/100.) * 1.75); - // get date and time // time_t time_stamp; // tm *now; @@ -1590,7 +1593,7 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const if (svg_flags.convert_level_number_to_height) { - point[2] = .3 * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); + point[2] = svg_flags.level_height_factor * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); } projection_decomposition = GridOut::svg_project_point(point, camera_position, camera_direction, camera_horizontal, camera_focus); @@ -1609,7 +1612,7 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const if (svg_flags.convert_level_number_to_height) { - point[2] = .3 * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); + point[2] = svg_flags.level_height_factor * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); } projection_decomposition = GridOut::svg_project_point(point, camera_position, camera_direction, camera_horizontal, camera_focus); @@ -1659,12 +1662,15 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const x_dimension_perspective = x_max_perspective - x_min_perspective; y_dimension_perspective = y_max_perspective - y_min_perspective; - cell_label_font_size = static_cast((int)(.5 + (height/100.) * 2.75) * 9. * (min_level_min_vertex_distance / std::min(x_dimension, y_dimension))); - - // create the svg file with an internal style sheet - width = static_cast(.5 + height * (x_dimension_perspective / y_dimension_perspective)); + if (width == 0) + width = static_cast(.5 + height * (x_dimension_perspective / y_dimension_perspective)); + else if (height == 0) + height = static_cast(.5 + width * (y_dimension_perspective / x_dimension_perspective)); unsigned int additional_width = 0; + // font size for date, time, legend, and colorbar + unsigned int font_size = static_cast(.5 + (height/100.) * 1.75); + cell_label_font_size = static_cast((int)(.5 + (height/100.) * 2.75) * 9. * (min_level_min_vertex_distance / std::min(x_dimension, y_dimension))); if (svg_flags.draw_legend && (svg_flags.label_level_number || svg_flags.label_cell_index || svg_flags.label_material_id || svg_flags.label_subdomain_id || svg_flags.label_level_subdomain_id )) { @@ -1796,7 +1802,7 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const out << "]]>" << '\n' << '\n'; // background rectangle - out << " " << '\n'; + out << " " << '\n'; if (svg_flags.background == GridOutFlags::Svg::dealii) { @@ -1872,7 +1878,7 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const if (svg_flags.convert_level_number_to_height) { - point[2] = .3 * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); + point[2] = svg_flags.level_height_factor * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); } projection_decomposition = GridOut::svg_project_point(point, camera_position, camera_direction, camera_horizontal, camera_focus); @@ -1931,7 +1937,7 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const if (svg_flags.convert_level_number_to_height) { - point[2] = .3 * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); + point[2] = svg_flags.level_height_factor * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); } float distance_to_camera = sqrt(pow(point[0] - camera_position[0], 2.) + pow(point[1] - camera_position[1], 2.) + pow(point[2] - camera_position[2], 2.)); @@ -2001,7 +2007,7 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const if (svg_flags.convert_level_number_to_height) { - point[2] = .3 * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); + point[2] = svg_flags.level_height_factor * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); } projection_decomposition = GridOut::svg_project_point(point, camera_position, camera_direction, camera_horizontal, camera_focus); @@ -2017,7 +2023,7 @@ void GridOut::write_svg(const Triangulation<2,2> &tria, std::ostream &out) const if (svg_flags.convert_level_number_to_height) { - point[2] = .3 * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); + point[2] = svg_flags.level_height_factor * ((float)cell->level() / (float)n_levels) * std::max(x_dimension, y_dimension); } projection_decomposition = GridOut::svg_project_point(point, camera_position, camera_direction, camera_horizontal, camera_focus); diff --git a/tests/grid/grid_out_svg_01.output b/tests/grid/grid_out_svg_01.output index 0a766f6ebf..92dd77d669 100644 --- a/tests/grid/grid_out_svg_01.output +++ b/tests/grid/grid_out_svg_01.output @@ -1,5 +1,5 @@ - + @@ -21,232 +21,232 @@ rect.r2{fill:rgb(255,0,0); stroke:rgb(25,25,25); stroke-width:2} ]]> - + - - 1,0,0 - - - 1,1,0 - - - 1,4,0 - - - 1,5,0 - - - 1,8,0 - - - 1,9,0 - - - 1,12,0 - - - 1,13,0 - - - 1,16,0 - - - 1,17,0 - - - 1,20,0 - - - 1,21,0 - - - 1,24,0 - - - 1,25,0 - - - 1,28,0 - - - 1,29,0 - - - 2,0,0 - - 2,1,0 - - 2,2,0 - - - 2,3,0 - - - 2,4,0 - - 2,5,0 - - 2,6,0 - - - 2,7,0 - - - 2,8,0 - - 2,9,0 - - 2,10,0 - - - 2,11,0 - - - 2,12,0 - - 2,13,0 - - 2,14,0 - - - 2,15,0 - - - 2,16,0 - - 2,17,0 - - 2,18,0 - - - 2,19,0 - - - 2,20,0 - - 2,21,0 - - 2,22,0 - - - 2,23,0 - - - 2,24,0 - - 2,25,0 - - 2,26,0 - - - 2,27,0 - - - 2,28,0 - - 2,29,0 - - 2,30,0 - - - 2,31,0 - - - 2,32,0 - - 2,33,0 - - 2,34,0 - - - 2,35,0 - - - 2,36,0 - - 2,37,0 - - 2,38,0 - - - 2,39,0 - - - 2,40,0 - - 2,41,0 - - 2,42,0 - - - 2,43,0 - - - 2,44,0 - - 2,45,0 - - 2,46,0 - - - 2,47,0 - - - 2,48,0 - - 2,49,0 - - 2,50,0 - - - 2,51,0 - - - 2,52,0 - - 2,53,0 - - 2,54,0 - - - 2,55,0 - - - 2,56,0 - - 2,57,0 - - 2,58,0 - - - 2,59,0 - - - 2,60,0 - - 2,61,0 - - 2,62,0 - - - 2,63,0 - + + 1,0,0 + + + 1,1,0 + + + 1,4,0 + + + 1,5,0 + + + 1,8,0 + + + 1,9,0 + + + 1,12,0 + + + 1,13,0 + + + 1,16,0 + + + 1,17,0 + + + 1,20,0 + + + 1,21,0 + + + 1,24,0 + + + 1,25,0 + + + 1,28,0 + + + 1,29,0 + + + 2,0,0 + + 2,1,0 + + 2,2,0 + + + 2,3,0 + + + 2,4,0 + + 2,5,0 + + 2,6,0 + + + 2,7,0 + + + 2,8,0 + + 2,9,0 + + 2,10,0 + + + 2,11,0 + + + 2,12,0 + + 2,13,0 + + 2,14,0 + + + 2,15,0 + + + 2,16,0 + + 2,17,0 + + 2,18,0 + + + 2,19,0 + + + 2,20,0 + + 2,21,0 + + 2,22,0 + + + 2,23,0 + + + 2,24,0 + + 2,25,0 + + 2,26,0 + + + 2,27,0 + + + 2,28,0 + + 2,29,0 + + 2,30,0 + + + 2,31,0 + + + 2,32,0 + + 2,33,0 + + 2,34,0 + + + 2,35,0 + + + 2,36,0 + + 2,37,0 + + 2,38,0 + + + 2,39,0 + + + 2,40,0 + + 2,41,0 + + 2,42,0 + + + 2,43,0 + + + 2,44,0 + + 2,45,0 + + 2,46,0 + + + 2,47,0 + + + 2,48,0 + + 2,49,0 + + 2,50,0 + + + 2,51,0 + + + 2,52,0 + + 2,53,0 + + 2,54,0 + + + 2,55,0 + + + 2,56,0 + + 2,57,0 + + 2,58,0 + + + 2,59,0 + + + 2,60,0 + + 2,61,0 + + 2,62,0 + + + 2,63,0 + - - cell label - level_number, - cell_index, - material_id - azimuth: 0°, polar: 0° + + cell label + level_number, + cell_index, + material_id + azimuth: 0°, polar: 0° - level_number - - 0 min - - 1 - - 2 max + level_number + + 0 min + + 1 + + 2 max \ No newline at end of file diff --git a/tests/grid/grid_out_svg_02.cc b/tests/grid/grid_out_svg_02.cc index a743a65ecf..9108c1cdc8 100644 --- a/tests/grid/grid_out_svg_02.cc +++ b/tests/grid/grid_out_svg_02.cc @@ -40,27 +40,29 @@ Triangulation<2,2> create_grid() GridGenerator::hyper_cube_with_cylindrical_hole(triangulation, inner_radius, outer_radius); triangulation.refine_global(1); - Triangulation<2>::active_cell_iterator - - cell = triangulation.begin_active(), - endc = triangulation.end(); - - for (; cell!=endc; ++cell) + for (unsigned int l=0;l<3;++l) { - for (unsigned int v=0; v < GeometryInfo<2>::vertices_per_cell; ++v) - { - const double distance_from_center = center.distance(cell->vertex(v)); - - if (std::fabs(distance_from_center - inner_radius) < .25) - { - cell->set_refine_flag(); - break; - } - } + Triangulation<2>::active_cell_iterator + cell = triangulation.begin_active(), + endc = triangulation.end(); + + for (; cell!=endc; ++cell) + { + for (unsigned int v=0; v < GeometryInfo<2>::vertices_per_cell; ++v) + { + const double distance_from_center = center.distance(cell->vertex(v)); + + if (std::fabs(distance_from_center - inner_radius) < .25) + { + cell->set_refine_flag(); + break; + } + } + } + + triangulation.execute_coarsening_and_refinement(); } - - triangulation.execute_coarsening_and_refinement(); - + return triangulation; } @@ -76,9 +78,11 @@ int main() svg_flags.label_subdomain_id = true; svg_flags.label_level_subdomain_id = true; svg_flags.background = GridOutFlags::Svg::transparent; - svg_flags.polar_angle = 45; + svg_flags.polar_angle = 60; svg_flags.convert_level_number_to_height = true; - + svg_flags.level_height_factor = .5; + svg_flags.height = 0; + svg_flags.width = 2000; grid_out.set_flags(svg_flags); grid_out.write_svg(create_grid(), deallog.get_file_stream()); diff --git a/tests/grid/grid_out_svg_02.output b/tests/grid/grid_out_svg_02.output index d2a1dc3bef..5aa84851cd 100644 --- a/tests/grid/grid_out_svg_02.output +++ b/tests/grid/grid_out_svg_02.output @@ -1,5 +1,5 @@ - + @@ -13,322 +13,3308 @@ path.p0{fill:rgb(0,102,255); stroke:rgb(25,25,25); stroke-width:2} path.ps0{fill:rgb(0,77,191); stroke:rgb(20,20,20); stroke-width:2} rect.r0{fill:rgb(0,102,255); stroke:rgb(25,25,25); stroke-width:2} - path.p1{fill:rgb(51,255,0); stroke:rgb(25,25,25); stroke-width:2} - path.ps1{fill:rgb(38,191,0); stroke:rgb(20,20,20); stroke-width:2} - rect.r1{fill:rgb(51,255,0); stroke:rgb(25,25,25); stroke-width:2} - path.p2{fill:rgb(255,0,0); stroke:rgb(25,25,25); stroke-width:2} - path.ps2{fill:rgb(191,0,0); stroke:rgb(20,20,20); stroke-width:2} - rect.r2{fill:rgb(255,0,0); stroke:rgb(25,25,25); stroke-width:2} + path.p1{fill:rgb(0,255,178); stroke:rgb(25,25,25); stroke-width:2} + path.ps1{fill:rgb(0,191,134); stroke:rgb(20,20,20); stroke-width:2} + rect.r1{fill:rgb(0,255,178); stroke:rgb(25,25,25); stroke-width:2} + path.p2{fill:rgb(51,255,0); stroke:rgb(25,25,25); stroke-width:2} + path.ps2{fill:rgb(38,191,0); stroke:rgb(20,20,20); stroke-width:2} + rect.r2{fill:rgb(51,255,0); stroke:rgb(25,25,25); stroke-width:2} + path.p3{fill:rgb(255,230,0); stroke:rgb(25,25,25); stroke-width:2} + path.ps3{fill:rgb(191,173,0); stroke:rgb(20,20,20); stroke-width:2} + rect.r3{fill:rgb(255,230,0); stroke:rgb(25,25,25); stroke-width:2} + path.p4{fill:rgb(255,0,0); stroke:rgb(25,25,25); stroke-width:2} + path.ps4{fill:rgb(191,0,0); stroke:rgb(20,20,20); stroke-width:2} + rect.r4{fill:rgb(255,0,0); stroke:rgb(25,25,25); stroke-width:2} ]]> - + - - 0,0,0,X,0 - - - - 0,1,0,X,0 - - - - 0,2,0,X,0 - - - - 0,3,0,X,0 - - - - 0,4,0,X,0 - - - - 0,5,0,X,0 - - - - 0,6,0,X,0 - - - - 0,7,0,X,0 - - - - 1,0,0,0,0 - - - 1,1,0,0,0 - - - 1,2,0,X,0 - - - 1,3,0,X,0 - - - 1,4,0,0,0 - - - 1,5,0,0,0 - - - 1,6,0,X,0 - - - 1,7,0,X,0 - - - 1,8,0,0,0 - - - 1,9,0,0,0 - - - 1,10,0,X,0 - - - 1,11,0,X,0 - - - 1,12,0,0,0 - - - 1,13,0,0,0 - - - 1,14,0,X,0 - - - 1,15,0,X,0 - - - 1,16,0,0,0 - - - 1,17,0,0,0 - - - 1,18,0,X,0 - - - 1,19,0,X,0 - - - 1,20,0,0,0 - - - 1,21,0,0,0 - - - 1,22,0,X,0 - - - 1,23,0,X,0 - - - 1,24,0,0,0 - - - 1,25,0,0,0 - - - 1,26,0,X,0 - - - 1,27,0,X,0 - - - 1,28,0,0,0 - - - 1,29,0,0,0 - - - 1,30,0,X,0 - - - 1,31,0,X,0 - - - 2,0,0,0,0 - - 2,1,0,0,0 - - 2,2,0,0,0 - - - 2,3,0,0,0 - - - 2,4,0,0,0 - - 2,5,0,0,0 - - 2,6,0,0,0 - - - 2,7,0,0,0 - - - 2,8,0,0,0 - - 2,9,0,0,0 - - 2,10,0,0,0 - - - 2,11,0,0,0 - - - 2,12,0,0,0 - - 2,13,0,0,0 - - 2,14,0,0,0 - - - 2,15,0,0,0 - - - 2,16,0,0,0 - - 2,17,0,0,0 - - 2,18,0,0,0 - - - 2,19,0,0,0 - - - 2,20,0,0,0 - - 2,21,0,0,0 - - 2,22,0,0,0 - - - 2,23,0,0,0 - - - 2,24,0,0,0 - - 2,25,0,0,0 - - 2,26,0,0,0 - - - 2,27,0,0,0 - - - 2,28,0,0,0 - - 2,29,0,0,0 - - 2,30,0,0,0 - - - 2,31,0,0,0 - - - 2,32,0,0,0 - - 2,33,0,0,0 - - 2,34,0,0,0 - - - 2,35,0,0,0 - - - 2,36,0,0,0 - - 2,37,0,0,0 - - 2,38,0,0,0 - - - 2,39,0,0,0 - - - 2,40,0,0,0 - - 2,41,0,0,0 - - 2,42,0,0,0 - - - 2,43,0,0,0 - - - 2,44,0,0,0 - - 2,45,0,0,0 - - 2,46,0,0,0 - - - 2,47,0,0,0 - - - 2,48,0,0,0 - - 2,49,0,0,0 - - 2,50,0,0,0 - - - 2,51,0,0,0 - - - 2,52,0,0,0 - - 2,53,0,0,0 - - 2,54,0,0,0 - - - 2,55,0,0,0 - - - 2,56,0,0,0 - - 2,57,0,0,0 - - 2,58,0,0,0 - - - 2,59,0,0,0 - - - 2,60,0,0,0 - - 2,61,0,0,0 - - 2,62,0,0,0 - - - 2,63,0,0,0 - + + 0,0,0,X,0 + + + + 0,1,0,X,0 + + + + 0,2,0,X,0 + + + + 0,3,0,X,0 + + + + 0,4,0,X,0 + + + + 0,5,0,X,0 + + + + 0,6,0,X,0 + + + + 0,7,0,X,0 + + + + 1,0,0,X,0 + + + 1,1,0,X,0 + + + 1,2,0,X,0 + + + 1,3,0,X,0 + + + 1,4,0,X,0 + + + 1,5,0,X,0 + + + 1,6,0,X,0 + + + 1,7,0,X,0 + + + 1,8,0,X,0 + + + 1,9,0,X,0 + + + 1,10,0,X,0 + + + 1,11,0,X,0 + + + 1,12,0,X,0 + + + 1,13,0,X,0 + + + 1,14,0,X,0 + + + 1,15,0,X,0 + + + 1,16,0,X,0 + + + 1,17,0,X,0 + + + 1,18,0,X,0 + + + 1,19,0,X,0 + + + 1,20,0,X,0 + + + 1,21,0,X,0 + + + 1,22,0,X,0 + + + 1,23,0,X,0 + + + 1,24,0,X,0 + + + 1,25,0,X,0 + + + 1,26,0,X,0 + + + 1,27,0,X,0 + + + 1,28,0,X,0 + + + 1,29,0,X,0 + + + 1,30,0,X,0 + + + 1,31,0,X,0 + + + 2,0,0,X,0 + + 2,1,0,X,0 + + 2,2,0,X,0 + + + 2,3,0,X,0 + + + 2,4,0,X,0 + + 2,5,0,X,0 + + 2,6,0,X,0 + + + 2,7,0,X,0 + + + 2,8,0,X,0 + + 2,9,0,X,0 + + 2,10,0,X,0 + + + 2,11,0,X,0 + + + 2,12,0,X,0 + + 2,13,0,X,0 + + 2,14,0,X,0 + + + 2,15,0,X,0 + + + 2,16,0,X,0 + + 2,17,0,X,0 + + 2,18,0,X,0 + + + 2,19,0,X,0 + + + 2,20,0,X,0 + + 2,21,0,X,0 + + 2,22,0,X,0 + + + 2,23,0,X,0 + + + 2,24,0,X,0 + + 2,25,0,X,0 + + 2,26,0,X,0 + + + 2,27,0,X,0 + + + 2,28,0,X,0 + + 2,29,0,X,0 + + 2,30,0,X,0 + + + 2,31,0,X,0 + + + 2,32,0,X,0 + + 2,33,0,X,0 + + 2,34,0,X,0 + + + 2,35,0,X,0 + + + 2,36,0,X,0 + + 2,37,0,X,0 + + 2,38,0,X,0 + + + 2,39,0,X,0 + + + 2,40,0,X,0 + + 2,41,0,X,0 + + 2,42,0,X,0 + + + 2,43,0,X,0 + + + 2,44,0,X,0 + + 2,45,0,X,0 + + 2,46,0,X,0 + + + 2,47,0,X,0 + + + 2,48,0,X,0 + + 2,49,0,X,0 + + 2,50,0,X,0 + + + 2,51,0,X,0 + + + 2,52,0,X,0 + + 2,53,0,X,0 + + 2,54,0,X,0 + + + 2,55,0,X,0 + + + 2,56,0,X,0 + + 2,57,0,X,0 + + 2,58,0,X,0 + + + 2,59,0,X,0 + + + 2,60,0,X,0 + + 2,61,0,X,0 + + 2,62,0,X,0 + + + 2,63,0,X,0 + + + 2,64,0,0,0 + + + 2,65,0,0,0 + + + 2,66,0,X,0 + + 2,67,0,X,0 + + 2,68,0,0,0 + + + 2,69,0,0,0 + + + 2,70,0,X,0 + + 2,71,0,0,0 + + 2,72,0,0,0 + + + 2,73,0,0,0 + + + 2,74,0,0,0 + + 2,75,0,X,0 + + 2,76,0,0,0 + + + 2,77,0,0,0 + + + 2,78,0,X,0 + + 2,79,0,X,0 + + 2,80,0,0,0 + + + 2,81,0,0,0 + + + 2,82,0,X,0 + + 2,83,0,X,0 + + 2,84,0,0,0 + + + 2,85,0,0,0 + + + 2,86,0,X,0 + + 2,87,0,0,0 + + 2,88,0,0,0 + + + 2,89,0,0,0 + + + 2,90,0,0,0 + + 2,91,0,X,0 + + 2,92,0,0,0 + + + 2,93,0,0,0 + + + 2,94,0,X,0 + + 2,95,0,X,0 + + 2,96,0,0,0 + + + 2,97,0,0,0 + + + 2,98,0,X,0 + + 2,99,0,X,0 + + 2,100,0,0,0 + + + 2,101,0,0,0 + + + 2,102,0,X,0 + + 2,103,0,0,0 + + 2,104,0,0,0 + + + 2,105,0,0,0 + + + 2,106,0,0,0 + + 2,107,0,X,0 + + 2,108,0,0,0 + + + 2,109,0,0,0 + + + 2,110,0,X,0 + + 2,111,0,X,0 + + 2,112,0,0,0 + + + 2,113,0,0,0 + + + 2,114,0,X,0 + + 2,115,0,X,0 + + 2,116,0,0,0 + + + 2,117,0,0,0 + + + 2,118,0,X,0 + + 2,119,0,0,0 + + 2,120,0,0,0 + + + 2,121,0,0,0 + + + 2,122,0,0,0 + + 2,123,0,X,0 + + 2,124,0,0,0 + + + 2,125,0,0,0 + + + 2,126,0,X,0 + + 2,127,0,X,0 + + 3,0,0,X,0 + + 3,1,0,X,0 + + 3,2,0,X,0 + + 3,3,0,X,0 + + 3,4,0,X,0 + + 3,5,0,X,0 + + 3,6,0,X,0 + + 3,7,0,X,0 + + 3,8,0,X,0 + + 3,9,0,X,0 + + 3,10,0,X,0 + + + 3,11,0,X,0 + + + 3,12,0,X,0 + + 3,13,0,X,0 + + 3,14,0,X,0 + + + 3,15,0,X,0 + + + 3,16,0,X,0 + + 3,17,0,X,0 + + 3,18,0,X,0 + + 3,19,0,X,0 + + 3,20,0,0,0 + + 3,21,0,0,0 + + 3,22,0,X,0 + + 3,23,0,X,0 + + 3,24,0,X,0 + + 3,25,0,X,0 + + 3,26,0,X,0 + + + 3,27,0,X,0 + + + 3,28,0,X,0 + + 3,29,0,X,0 + + 3,30,0,X,0 + + + 3,31,0,X,0 + + + 3,32,0,0,0 + + 3,33,0,0,0 + + 3,34,0,X,0 + + 3,35,0,X,0 + + 3,36,0,X,0 + + 3,37,0,X,0 + + 3,38,0,X,0 + + 3,39,0,X,0 + + 3,40,0,X,0 + + 3,41,0,X,0 + + 3,42,0,X,0 + + + 3,43,0,X,0 + + + 3,44,0,X,0 + + 3,45,0,X,0 + + 3,46,0,X,0 + + + 3,47,0,X,0 + + + 3,48,0,X,0 + + 3,49,0,X,0 + + 3,50,0,X,0 + + 3,51,0,X,0 + + 3,52,0,X,0 + + 3,53,0,X,0 + + 3,54,0,X,0 + + 3,55,0,X,0 + + 3,56,0,X,0 + + 3,57,0,X,0 + + 3,58,0,X,0 + + + 3,59,0,X,0 + + + 3,60,0,X,0 + + 3,61,0,X,0 + + 3,62,0,X,0 + + + 3,63,0,X,0 + + + 3,64,0,X,0 + + 3,65,0,X,0 + + 3,66,0,X,0 + + 3,67,0,X,0 + + 3,68,0,X,0 + + 3,69,0,X,0 + + 3,70,0,X,0 + + 3,71,0,X,0 + + 3,72,0,X,0 + + 3,73,0,X,0 + + 3,74,0,X,0 + + + 3,75,0,X,0 + + + 3,76,0,X,0 + + 3,77,0,X,0 + + 3,78,0,X,0 + + + 3,79,0,X,0 + + + 3,80,0,X,0 + + 3,81,0,X,0 + + 3,82,0,X,0 + + 3,83,0,X,0 + + 3,84,0,0,0 + + 3,85,0,0,0 + + 3,86,0,X,0 + + 3,87,0,X,0 + + 3,88,0,X,0 + + 3,89,0,X,0 + + 3,90,0,X,0 + + + 3,91,0,X,0 + + + 3,92,0,X,0 + + 3,93,0,X,0 + + 3,94,0,X,0 + + + 3,95,0,X,0 + + + 3,96,0,0,0 + + 3,97,0,0,0 + + 3,98,0,X,0 + + 3,99,0,X,0 + + 3,100,0,X,0 + + 3,101,0,X,0 + + 3,102,0,X,0 + + 3,103,0,X,0 + + 3,104,0,X,0 + + 3,105,0,X,0 + + 3,106,0,X,0 + + + 3,107,0,X,0 + + + 3,108,0,X,0 + + 3,109,0,X,0 + + 3,110,0,X,0 + + + 3,111,0,X,0 + + + 3,112,0,X,0 + + 3,113,0,X,0 + + 3,114,0,X,0 + + 3,115,0,X,0 + + 3,116,0,X,0 + + 3,117,0,X,0 + + 3,118,0,X,0 + + 3,119,0,X,0 + + 3,120,0,X,0 + + 3,121,0,X,0 + + 3,122,0,X,0 + + + 3,123,0,X,0 + + + 3,124,0,X,0 + + 3,125,0,X,0 + + 3,126,0,X,0 + + + 3,127,0,X,0 + + + 3,128,0,X,0 + + 3,129,0,X,0 + + 3,130,0,X,0 + + 3,131,0,X,0 + + 3,132,0,X,0 + + 3,133,0,X,0 + + 3,134,0,X,0 + + 3,135,0,X,0 + + 3,136,0,X,0 + + 3,137,0,X,0 + + 3,138,0,X,0 + + + 3,139,0,X,0 + + + 3,140,0,X,0 + + 3,141,0,X,0 + + 3,142,0,X,0 + + + 3,143,0,X,0 + + + 3,144,0,X,0 + + 3,145,0,X,0 + + 3,146,0,X,0 + + 3,147,0,X,0 + + 3,148,0,0,0 + + 3,149,0,0,0 + + 3,150,0,X,0 + + 3,151,0,X,0 + + 3,152,0,X,0 + + 3,153,0,X,0 + + 3,154,0,X,0 + + + 3,155,0,X,0 + + + 3,156,0,X,0 + + 3,157,0,X,0 + + 3,158,0,X,0 + + + 3,159,0,X,0 + + + 3,160,0,0,0 + + 3,161,0,0,0 + + 3,162,0,X,0 + + 3,163,0,X,0 + + 3,164,0,X,0 + + 3,165,0,X,0 + + 3,166,0,X,0 + + 3,167,0,X,0 + + 3,168,0,X,0 + + 3,169,0,X,0 + + 3,170,0,X,0 + + + 3,171,0,X,0 + + + 3,172,0,X,0 + + 3,173,0,X,0 + + 3,174,0,X,0 + + + 3,175,0,X,0 + + + 3,176,0,X,0 + + 3,177,0,X,0 + + 3,178,0,X,0 + + 3,179,0,X,0 + + 3,180,0,X,0 + + 3,181,0,X,0 + + 3,182,0,X,0 + + 3,183,0,X,0 + + 3,184,0,X,0 + + 3,185,0,X,0 + + 3,186,0,X,0 + + + 3,187,0,X,0 + + + 3,188,0,X,0 + + 3,189,0,X,0 + + 3,190,0,X,0 + + + 3,191,0,X,0 + + + 3,192,0,X,0 + + 3,193,0,X,0 + + 3,194,0,X,0 + + 3,195,0,X,0 + + 3,196,0,X,0 + + 3,197,0,X,0 + + 3,198,0,X,0 + + 3,199,0,X,0 + + 3,200,0,X,0 + + 3,201,0,X,0 + + 3,202,0,X,0 + + + 3,203,0,X,0 + + + 3,204,0,X,0 + + 3,205,0,X,0 + + 3,206,0,X,0 + + + 3,207,0,X,0 + + + 3,208,0,X,0 + + 3,209,0,X,0 + + 3,210,0,X,0 + + 3,211,0,X,0 + + 3,212,0,0,0 + + 3,213,0,0,0 + + 3,214,0,X,0 + + 3,215,0,X,0 + + 3,216,0,X,0 + + 3,217,0,X,0 + + 3,218,0,X,0 + + + 3,219,0,X,0 + + + 3,220,0,X,0 + + 3,221,0,X,0 + + 3,222,0,X,0 + + + 3,223,0,X,0 + + + 3,224,0,0,0 + + 3,225,0,0,0 + + 3,226,0,X,0 + + 3,227,0,X,0 + + 3,228,0,X,0 + + 3,229,0,X,0 + + 3,230,0,X,0 + + 3,231,0,X,0 + + 3,232,0,X,0 + + 3,233,0,X,0 + + 3,234,0,X,0 + + + 3,235,0,X,0 + + + 3,236,0,X,0 + + 3,237,0,X,0 + + 3,238,0,X,0 + + + 3,239,0,X,0 + + + 3,240,0,X,0 + + 3,241,0,X,0 + + 3,242,0,X,0 + + 3,243,0,X,0 + + 3,244,0,X,0 + + 3,245,0,X,0 + + 3,246,0,X,0 + + 3,247,0,X,0 + + 3,248,0,X,0 + + 3,249,0,X,0 + + 3,250,0,X,0 + + + 3,251,0,X,0 + + + 3,252,0,X,0 + + 3,253,0,X,0 + + 3,254,0,X,0 + + + 3,255,0,X,0 + + + 3,256,0,0,0 + + 3,257,0,0,0 + + 3,258,0,0,0 + + 3,259,0,0,0 + + 3,260,0,0,0 + + 3,261,0,0,0 + + 3,262,0,0,0 + + 3,263,0,0,0 + + 3,264,0,0,0 + + 3,265,0,0,0 + + 3,266,0,0,0 + + 3,267,0,0,0 + + 3,268,0,0,0 + + 3,269,0,0,0 + + 3,270,0,0,0 + + 3,271,0,0,0 + + 3,272,0,0,0 + + 3,273,0,0,0 + + 3,274,0,0,0 + + 3,275,0,0,0 + + 3,276,0,0,0 + + 3,277,0,0,0 + + 3,278,0,0,0 + + 3,279,0,0,0 + + 3,280,0,0,0 + + 3,281,0,0,0 + + 3,282,0,0,0 + + 3,283,0,0,0 + + 3,284,0,0,0 + + 3,285,0,0,0 + + 3,286,0,0,0 + + 3,287,0,0,0 + + 3,288,0,0,0 + + 3,289,0,0,0 + + 3,290,0,0,0 + + 3,291,0,0,0 + + 3,292,0,0,0 + + 3,293,0,0,0 + + 3,294,0,0,0 + + 3,295,0,0,0 + + 3,296,0,0,0 + + 3,297,0,0,0 + + 3,298,0,0,0 + + 3,299,0,0,0 + + 3,300,0,0,0 + + 3,301,0,0,0 + + 3,302,0,0,0 + + 3,303,0,0,0 + + 3,304,0,0,0 + + 3,305,0,0,0 + + 3,306,0,0,0 + + 3,307,0,0,0 + + 3,308,0,0,0 + + 3,309,0,0,0 + + 3,310,0,0,0 + + 3,311,0,0,0 + + 3,312,0,0,0 + + 3,313,0,0,0 + + 3,314,0,0,0 + + 3,315,0,0,0 + + 3,316,0,0,0 + + 3,317,0,0,0 + + 3,318,0,0,0 + + 3,319,0,0,0 + + 3,320,0,0,0 + + 3,321,0,0,0 + + 3,322,0,0,0 + + 3,323,0,0,0 + + 3,324,0,0,0 + + 3,325,0,0,0 + + 3,326,0,0,0 + + 3,327,0,0,0 + + 3,328,0,0,0 + + 3,329,0,0,0 + + 3,330,0,0,0 + + 3,331,0,0,0 + + 3,332,0,0,0 + + 3,333,0,0,0 + + 3,334,0,0,0 + + 3,335,0,0,0 + + 3,336,0,0,0 + + 3,337,0,0,0 + + 3,338,0,0,0 + + 3,339,0,0,0 + + 3,340,0,0,0 + + 3,341,0,0,0 + + 3,342,0,0,0 + + 3,343,0,0,0 + + 3,344,0,0,0 + + 3,345,0,0,0 + + 3,346,0,0,0 + + 3,347,0,0,0 + + 3,348,0,0,0 + + 3,349,0,0,0 + + 3,350,0,0,0 + + 3,351,0,0,0 + + 4,0,0,0,0 + + 4,1,0,0,0 + + 4,2,0,0,0 + + 4,3,0,0,0 + + 4,4,0,0,0 + + 4,5,0,0,0 + + 4,6,0,0,0 + + 4,7,0,0,0 + + 4,8,0,0,0 + + 4,9,0,0,0 + + 4,10,0,0,0 + + 4,11,0,0,0 + + 4,12,0,0,0 + + 4,13,0,0,0 + + 4,14,0,0,0 + + 4,15,0,0,0 + + 4,16,0,0,0 + + 4,17,0,0,0 + + 4,18,0,0,0 + + 4,19,0,0,0 + + 4,20,0,0,0 + + 4,21,0,0,0 + + 4,22,0,0,0 + + 4,23,0,0,0 + + 4,24,0,0,0 + + 4,25,0,0,0 + + 4,26,0,0,0 + + 4,27,0,0,0 + + 4,28,0,0,0 + + 4,29,0,0,0 + + 4,30,0,0,0 + + 4,31,0,0,0 + + 4,32,0,0,0 + + 4,33,0,0,0 + + 4,34,0,0,0 + + 4,35,0,0,0 + + 4,36,0,0,0 + + 4,37,0,0,0 + + 4,38,0,0,0 + + 4,39,0,0,0 + + 4,40,0,0,0 + + 4,41,0,0,0 + + 4,42,0,0,0 + + + 4,43,0,0,0 + + + 4,44,0,0,0 + + 4,45,0,0,0 + + 4,46,0,0,0 + + + 4,47,0,0,0 + + + 4,48,0,0,0 + + 4,49,0,0,0 + + 4,50,0,0,0 + + 4,51,0,0,0 + + 4,52,0,0,0 + + 4,53,0,0,0 + + 4,54,0,0,0 + + 4,55,0,0,0 + + 4,56,0,0,0 + + 4,57,0,0,0 + + 4,58,0,0,0 + + + 4,59,0,0,0 + + + 4,60,0,0,0 + + 4,61,0,0,0 + + 4,62,0,0,0 + + + 4,63,0,0,0 + + + 4,64,0,0,0 + + 4,65,0,0,0 + + 4,66,0,0,0 + + 4,67,0,0,0 + + 4,68,0,0,0 + + 4,69,0,0,0 + + 4,70,0,0,0 + + 4,71,0,0,0 + + 4,72,0,0,0 + + 4,73,0,0,0 + + 4,74,0,0,0 + + 4,75,0,0,0 + + 4,76,0,0,0 + + 4,77,0,0,0 + + 4,78,0,0,0 + + 4,79,0,0,0 + + 4,80,0,0,0 + + 4,81,0,0,0 + + 4,82,0,0,0 + + 4,83,0,0,0 + + 4,84,0,0,0 + + 4,85,0,0,0 + + 4,86,0,0,0 + + 4,87,0,0,0 + + 4,88,0,0,0 + + 4,89,0,0,0 + + 4,90,0,0,0 + + 4,91,0,0,0 + + 4,92,0,0,0 + + 4,93,0,0,0 + + 4,94,0,0,0 + + 4,95,0,0,0 + + 4,96,0,0,0 + + 4,97,0,0,0 + + 4,98,0,0,0 + + + 4,99,0,0,0 + + + 4,100,0,0,0 + + 4,101,0,0,0 + + 4,102,0,0,0 + + + 4,103,0,0,0 + + + 4,104,0,0,0 + + 4,105,0,0,0 + + 4,106,0,0,0 + + 4,107,0,0,0 + + 4,108,0,0,0 + + 4,109,0,0,0 + + 4,110,0,0,0 + + 4,111,0,0,0 + + 4,112,0,0,0 + + 4,113,0,0,0 + + 4,114,0,0,0 + + + 4,115,0,0,0 + + + 4,116,0,0,0 + + 4,117,0,0,0 + + 4,118,0,0,0 + + + 4,119,0,0,0 + + + 4,120,0,0,0 + + 4,121,0,0,0 + + 4,122,0,0,0 + + 4,123,0,0,0 + + 4,124,0,0,0 + + 4,125,0,0,0 + + 4,126,0,0,0 + + 4,127,0,0,0 + + 4,128,0,0,0 + + 4,129,0,0,0 + + 4,130,0,0,0 + + 4,131,0,0,0 + + 4,132,0,0,0 + + 4,133,0,0,0 + + 4,134,0,0,0 + + 4,135,0,0,0 + + 4,136,0,0,0 + + 4,137,0,0,0 + + 4,138,0,0,0 + + 4,139,0,0,0 + + 4,140,0,0,0 + + 4,141,0,0,0 + + 4,142,0,0,0 + + 4,143,0,0,0 + + 4,144,0,0,0 + + 4,145,0,0,0 + + 4,146,0,0,0 + + 4,147,0,0,0 + + 4,148,0,0,0 + + 4,149,0,0,0 + + 4,150,0,0,0 + + 4,151,0,0,0 + + 4,152,0,0,0 + + 4,153,0,0,0 + + 4,154,0,0,0 + + + 4,155,0,0,0 + + + 4,156,0,0,0 + + 4,157,0,0,0 + + 4,158,0,0,0 + + + 4,159,0,0,0 + + + 4,160,0,0,0 + + 4,161,0,0,0 + + 4,162,0,0,0 + + 4,163,0,0,0 + + 4,164,0,0,0 + + 4,165,0,0,0 + + 4,166,0,0,0 + + 4,167,0,0,0 + + 4,168,0,0,0 + + 4,169,0,0,0 + + 4,170,0,0,0 + + + 4,171,0,0,0 + + + 4,172,0,0,0 + + 4,173,0,0,0 + + 4,174,0,0,0 + + + 4,175,0,0,0 + + + 4,176,0,0,0 + + 4,177,0,0,0 + + 4,178,0,0,0 + + 4,179,0,0,0 + + 4,180,0,0,0 + + 4,181,0,0,0 + + 4,182,0,0,0 + + 4,183,0,0,0 + + 4,184,0,0,0 + + 4,185,0,0,0 + + 4,186,0,0,0 + + 4,187,0,0,0 + + 4,188,0,0,0 + + 4,189,0,0,0 + + 4,190,0,0,0 + + 4,191,0,0,0 + + 4,192,0,0,0 + + 4,193,0,0,0 + + 4,194,0,0,0 + + 4,195,0,0,0 + + 4,196,0,0,0 + + 4,197,0,0,0 + + 4,198,0,0,0 + + 4,199,0,0,0 + + 4,200,0,0,0 + + 4,201,0,0,0 + + 4,202,0,0,0 + + 4,203,0,0,0 + + 4,204,0,0,0 + + 4,205,0,0,0 + + 4,206,0,0,0 + + 4,207,0,0,0 + + 4,208,0,0,0 + + 4,209,0,0,0 + + 4,210,0,0,0 + + 4,211,0,0,0 + + 4,212,0,0,0 + + 4,213,0,0,0 + + 4,214,0,0,0 + + 4,215,0,0,0 + + 4,216,0,0,0 + + 4,217,0,0,0 + + 4,218,0,0,0 + + + 4,219,0,0,0 + + + 4,220,0,0,0 + + 4,221,0,0,0 + + 4,222,0,0,0 + + + 4,223,0,0,0 + + + 4,224,0,0,0 + + 4,225,0,0,0 + + 4,226,0,0,0 + + 4,227,0,0,0 + + 4,228,0,0,0 + + 4,229,0,0,0 + + 4,230,0,0,0 + + 4,231,0,0,0 + + 4,232,0,0,0 + + 4,233,0,0,0 + + 4,234,0,0,0 + + + 4,235,0,0,0 + + + 4,236,0,0,0 + + 4,237,0,0,0 + + 4,238,0,0,0 + + + 4,239,0,0,0 + + + 4,240,0,0,0 + + 4,241,0,0,0 + + 4,242,0,0,0 + + 4,243,0,0,0 + + 4,244,0,0,0 + + 4,245,0,0,0 + + 4,246,0,0,0 + + 4,247,0,0,0 + + 4,248,0,0,0 + + 4,249,0,0,0 + + 4,250,0,0,0 + + 4,251,0,0,0 + + 4,252,0,0,0 + + 4,253,0,0,0 + + 4,254,0,0,0 + + 4,255,0,0,0 + + 4,256,0,0,0 + + 4,257,0,0,0 + + 4,258,0,0,0 + + 4,259,0,0,0 + + 4,260,0,0,0 + + 4,261,0,0,0 + + 4,262,0,0,0 + + 4,263,0,0,0 + + 4,264,0,0,0 + + 4,265,0,0,0 + + 4,266,0,0,0 + + 4,267,0,0,0 + + 4,268,0,0,0 + + 4,269,0,0,0 + + 4,270,0,0,0 + + 4,271,0,0,0 + + 4,272,0,0,0 + + 4,273,0,0,0 + + 4,274,0,0,0 + + 4,275,0,0,0 + + 4,276,0,0,0 + + 4,277,0,0,0 + + 4,278,0,0,0 + + 4,279,0,0,0 + + 4,280,0,0,0 + + 4,281,0,0,0 + + 4,282,0,0,0 + + + 4,283,0,0,0 + + + 4,284,0,0,0 + + 4,285,0,0,0 + + 4,286,0,0,0 + + + 4,287,0,0,0 + + + 4,288,0,0,0 + + 4,289,0,0,0 + + 4,290,0,0,0 + + 4,291,0,0,0 + + 4,292,0,0,0 + + 4,293,0,0,0 + + 4,294,0,0,0 + + 4,295,0,0,0 + + 4,296,0,0,0 + + 4,297,0,0,0 + + 4,298,0,0,0 + + + 4,299,0,0,0 + + + 4,300,0,0,0 + + 4,301,0,0,0 + + 4,302,0,0,0 + + + 4,303,0,0,0 + + + 4,304,0,0,0 + + 4,305,0,0,0 + + 4,306,0,0,0 + + 4,307,0,0,0 + + 4,308,0,0,0 + + 4,309,0,0,0 + + 4,310,0,0,0 + + 4,311,0,0,0 + + 4,312,0,0,0 + + 4,313,0,0,0 + + 4,314,0,0,0 + + 4,315,0,0,0 + + 4,316,0,0,0 + + 4,317,0,0,0 + + 4,318,0,0,0 + + 4,319,0,0,0 + + 4,320,0,0,0 + + 4,321,0,0,0 + + 4,322,0,0,0 + + 4,323,0,0,0 + + 4,324,0,0,0 + + 4,325,0,0,0 + + 4,326,0,0,0 + + 4,327,0,0,0 + + 4,328,0,0,0 + + 4,329,0,0,0 + + 4,330,0,0,0 + + 4,331,0,0,0 + + 4,332,0,0,0 + + 4,333,0,0,0 + + 4,334,0,0,0 + + 4,335,0,0,0 + + 4,336,0,0,0 + + 4,337,0,0,0 + + 4,338,0,0,0 + + + 4,339,0,0,0 + + + 4,340,0,0,0 + + 4,341,0,0,0 + + 4,342,0,0,0 + + + 4,343,0,0,0 + + + 4,344,0,0,0 + + 4,345,0,0,0 + + 4,346,0,0,0 + + 4,347,0,0,0 + + 4,348,0,0,0 + + 4,349,0,0,0 + + 4,350,0,0,0 + + 4,351,0,0,0 + + 4,352,0,0,0 + + 4,353,0,0,0 + + 4,354,0,0,0 + + + 4,355,0,0,0 + + + 4,356,0,0,0 + + 4,357,0,0,0 + + 4,358,0,0,0 + + + 4,359,0,0,0 + + + 4,360,0,0,0 + + 4,361,0,0,0 + + 4,362,0,0,0 + + 4,363,0,0,0 + + 4,364,0,0,0 + + 4,365,0,0,0 + + 4,366,0,0,0 + + 4,367,0,0,0 + + 4,368,0,0,0 + + 4,369,0,0,0 + + 4,370,0,0,0 + + 4,371,0,0,0 + + 4,372,0,0,0 + + 4,373,0,0,0 + + 4,374,0,0,0 + + 4,375,0,0,0 + + 4,376,0,0,0 + + 4,377,0,0,0 + + 4,378,0,0,0 + + 4,379,0,0,0 + + 4,380,0,0,0 + + 4,381,0,0,0 + + 4,382,0,0,0 + + 4,383,0,0,0 + + 4,384,0,0,0 + + 4,385,0,0,0 + + 4,386,0,0,0 + + 4,387,0,0,0 + + 4,388,0,0,0 + + 4,389,0,0,0 + + 4,390,0,0,0 + + 4,391,0,0,0 + + 4,392,0,0,0 + + 4,393,0,0,0 + + 4,394,0,0,0 + + + 4,395,0,0,0 + + + 4,396,0,0,0 + + 4,397,0,0,0 + + 4,398,0,0,0 + + + 4,399,0,0,0 + + + 4,400,0,0,0 + + 4,401,0,0,0 + + 4,402,0,0,0 + + 4,403,0,0,0 + + 4,404,0,0,0 + + 4,405,0,0,0 + + 4,406,0,0,0 + + 4,407,0,0,0 + + 4,408,0,0,0 + + 4,409,0,0,0 + + 4,410,0,0,0 + + + 4,411,0,0,0 + + + 4,412,0,0,0 + + 4,413,0,0,0 + + 4,414,0,0,0 + + + 4,415,0,0,0 + + + 4,416,0,0,0 + + 4,417,0,0,0 + + 4,418,0,0,0 + + 4,419,0,0,0 + + 4,420,0,0,0 + + 4,421,0,0,0 + + 4,422,0,0,0 + + 4,423,0,0,0 + + 4,424,0,0,0 + + 4,425,0,0,0 + + 4,426,0,0,0 + + 4,427,0,0,0 + + 4,428,0,0,0 + + 4,429,0,0,0 + + 4,430,0,0,0 + + 4,431,0,0,0 + + 4,432,0,0,0 + + 4,433,0,0,0 + + 4,434,0,0,0 + + 4,435,0,0,0 + + 4,436,0,0,0 + + 4,437,0,0,0 + + 4,438,0,0,0 + + 4,439,0,0,0 + + 4,440,0,0,0 + + 4,441,0,0,0 + + 4,442,0,0,0 + + 4,443,0,0,0 + + 4,444,0,0,0 + + 4,445,0,0,0 + + 4,446,0,0,0 + + 4,447,0,0,0 + + 4,448,0,0,0 + + 4,449,0,0,0 + + 4,450,0,0,0 + + 4,451,0,0,0 + + 4,452,0,0,0 + + 4,453,0,0,0 + + 4,454,0,0,0 + + 4,455,0,0,0 + + 4,456,0,0,0 + + 4,457,0,0,0 + + 4,458,0,0,0 + + + 4,459,0,0,0 + + + 4,460,0,0,0 + + 4,461,0,0,0 + + 4,462,0,0,0 + + + 4,463,0,0,0 + + + 4,464,0,0,0 + + 4,465,0,0,0 + + 4,466,0,0,0 + + 4,467,0,0,0 + + 4,468,0,0,0 + + 4,469,0,0,0 + + 4,470,0,0,0 + + 4,471,0,0,0 + + 4,472,0,0,0 + + 4,473,0,0,0 + + 4,474,0,0,0 + + + 4,475,0,0,0 + + + 4,476,0,0,0 + + 4,477,0,0,0 + + 4,478,0,0,0 + + + 4,479,0,0,0 + + + 4,480,0,0,0 + + 4,481,0,0,0 + + 4,482,0,0,0 + + 4,483,0,0,0 + + 4,484,0,0,0 + + 4,485,0,0,0 + + 4,486,0,0,0 + + 4,487,0,0,0 + + 4,488,0,0,0 + + 4,489,0,0,0 + + 4,490,0,0,0 + + 4,491,0,0,0 + + 4,492,0,0,0 + + 4,493,0,0,0 + + 4,494,0,0,0 + + 4,495,0,0,0 + + 4,496,0,0,0 + + 4,497,0,0,0 + + 4,498,0,0,0 + + 4,499,0,0,0 + + 4,500,0,0,0 + + 4,501,0,0,0 + + 4,502,0,0,0 + + 4,503,0,0,0 + + 4,504,0,0,0 + + 4,505,0,0,0 + + 4,506,0,0,0 + + 4,507,0,0,0 + + 4,508,0,0,0 + + 4,509,0,0,0 + + 4,510,0,0,0 + + 4,511,0,0,0 + + 4,512,0,0,0 + + 4,513,0,0,0 + + 4,514,0,0,0 + + 4,515,0,0,0 + + 4,516,0,0,0 + + 4,517,0,0,0 + + 4,518,0,0,0 + + 4,519,0,0,0 + + 4,520,0,0,0 + + 4,521,0,0,0 + + 4,522,0,0,0 + + + 4,523,0,0,0 + + + 4,524,0,0,0 + + 4,525,0,0,0 + + 4,526,0,0,0 + + + 4,527,0,0,0 + + + 4,528,0,0,0 + + 4,529,0,0,0 + + 4,530,0,0,0 + + 4,531,0,0,0 + + 4,532,0,0,0 + + 4,533,0,0,0 + + 4,534,0,0,0 + + 4,535,0,0,0 + + 4,536,0,0,0 + + 4,537,0,0,0 + + 4,538,0,0,0 + + + 4,539,0,0,0 + + + 4,540,0,0,0 + + 4,541,0,0,0 + + 4,542,0,0,0 + + + 4,543,0,0,0 + + + 4,544,0,0,0 + + 4,545,0,0,0 + + 4,546,0,0,0 + + 4,547,0,0,0 + + 4,548,0,0,0 + + 4,549,0,0,0 + + 4,550,0,0,0 + + 4,551,0,0,0 + + 4,552,0,0,0 + + 4,553,0,0,0 + + 4,554,0,0,0 + + 4,555,0,0,0 + + 4,556,0,0,0 + + 4,557,0,0,0 + + 4,558,0,0,0 + + 4,559,0,0,0 + + 4,560,0,0,0 + + 4,561,0,0,0 + + 4,562,0,0,0 + + 4,563,0,0,0 + + 4,564,0,0,0 + + 4,565,0,0,0 + + 4,566,0,0,0 + + 4,567,0,0,0 + + 4,568,0,0,0 + + 4,569,0,0,0 + + 4,570,0,0,0 + + 4,571,0,0,0 + + 4,572,0,0,0 + + 4,573,0,0,0 + + 4,574,0,0,0 + + 4,575,0,0,0 + + 4,576,0,0,0 + + 4,577,0,0,0 + + 4,578,0,0,0 + + + 4,579,0,0,0 + + + 4,580,0,0,0 + + 4,581,0,0,0 + + 4,582,0,0,0 + + + 4,583,0,0,0 + + + 4,584,0,0,0 + + 4,585,0,0,0 + + 4,586,0,0,0 + + 4,587,0,0,0 + + 4,588,0,0,0 + + 4,589,0,0,0 + + 4,590,0,0,0 + + 4,591,0,0,0 + + 4,592,0,0,0 + + 4,593,0,0,0 + + 4,594,0,0,0 + + + 4,595,0,0,0 + + + 4,596,0,0,0 + + 4,597,0,0,0 + + 4,598,0,0,0 + + + 4,599,0,0,0 + + + 4,600,0,0,0 + + 4,601,0,0,0 + + 4,602,0,0,0 + + 4,603,0,0,0 + + 4,604,0,0,0 + + 4,605,0,0,0 + + 4,606,0,0,0 + + 4,607,0,0,0 + + 4,608,0,0,0 + + 4,609,0,0,0 + + 4,610,0,0,0 + + 4,611,0,0,0 + + 4,612,0,0,0 + + 4,613,0,0,0 + + 4,614,0,0,0 + + 4,615,0,0,0 + + 4,616,0,0,0 + + 4,617,0,0,0 + + 4,618,0,0,0 + + 4,619,0,0,0 + + 4,620,0,0,0 + + 4,621,0,0,0 + + 4,622,0,0,0 + + 4,623,0,0,0 + + 4,624,0,0,0 + + 4,625,0,0,0 + + 4,626,0,0,0 + + 4,627,0,0,0 + + 4,628,0,0,0 + + 4,629,0,0,0 + + 4,630,0,0,0 + + 4,631,0,0,0 + + 4,632,0,0,0 + + 4,633,0,0,0 + + 4,634,0,0,0 + + + 4,635,0,0,0 + + + 4,636,0,0,0 + + 4,637,0,0,0 + + 4,638,0,0,0 + + + 4,639,0,0,0 + + + 4,640,0,0,0 + + 4,641,0,0,0 + + 4,642,0,0,0 + + 4,643,0,0,0 + + 4,644,0,0,0 + + 4,645,0,0,0 + + 4,646,0,0,0 + + 4,647,0,0,0 + + 4,648,0,0,0 + + 4,649,0,0,0 + + 4,650,0,0,0 + + + 4,651,0,0,0 + + + 4,652,0,0,0 + + 4,653,0,0,0 + + 4,654,0,0,0 + + + 4,655,0,0,0 + + + 4,656,0,0,0 + + 4,657,0,0,0 + + 4,658,0,0,0 + + 4,659,0,0,0 + + 4,660,0,0,0 + + 4,661,0,0,0 + + 4,662,0,0,0 + + 4,663,0,0,0 + + 4,664,0,0,0 + + 4,665,0,0,0 + + 4,666,0,0,0 + + 4,667,0,0,0 + + 4,668,0,0,0 + + 4,669,0,0,0 + + 4,670,0,0,0 + + 4,671,0,0,0 + + 4,672,0,0,0 + + 4,673,0,0,0 + + 4,674,0,0,0 + + 4,675,0,0,0 + + 4,676,0,0,0 + + 4,677,0,0,0 + + 4,678,0,0,0 + + 4,679,0,0,0 + + 4,680,0,0,0 + + 4,681,0,0,0 + + 4,682,0,0,0 + + 4,683,0,0,0 + + 4,684,0,0,0 + + 4,685,0,0,0 + + 4,686,0,0,0 + + 4,687,0,0,0 + + 4,688,0,0,0 + + 4,689,0,0,0 + + 4,690,0,0,0 + + 4,691,0,0,0 + + 4,692,0,0,0 + + 4,693,0,0,0 + + 4,694,0,0,0 + + 4,695,0,0,0 + + 4,696,0,0,0 + + 4,697,0,0,0 + + 4,698,0,0,0 + + + 4,699,0,0,0 + + + 4,700,0,0,0 + + 4,701,0,0,0 + + 4,702,0,0,0 + + + 4,703,0,0,0 + + + 4,704,0,0,0 + + 4,705,0,0,0 + + 4,706,0,0,0 + + 4,707,0,0,0 + + 4,708,0,0,0 + + 4,709,0,0,0 + + 4,710,0,0,0 + + 4,711,0,0,0 + + 4,712,0,0,0 + + 4,713,0,0,0 + + 4,714,0,0,0 + + + 4,715,0,0,0 + + + 4,716,0,0,0 + + 4,717,0,0,0 + + 4,718,0,0,0 + + + 4,719,0,0,0 + + + 4,720,0,0,0 + + 4,721,0,0,0 + + 4,722,0,0,0 + + 4,723,0,0,0 + + 4,724,0,0,0 + + 4,725,0,0,0 + + 4,726,0,0,0 + + 4,727,0,0,0 + + 4,728,0,0,0 + + 4,729,0,0,0 + + 4,730,0,0,0 + + 4,731,0,0,0 + + 4,732,0,0,0 + + 4,733,0,0,0 + + 4,734,0,0,0 + + 4,735,0,0,0 + + 4,736,0,0,0 + + 4,737,0,0,0 + + 4,738,0,0,0 + + 4,739,0,0,0 + + 4,740,0,0,0 + + 4,741,0,0,0 + + 4,742,0,0,0 + + 4,743,0,0,0 + + 4,744,0,0,0 + + 4,745,0,0,0 + + 4,746,0,0,0 + + 4,747,0,0,0 + + 4,748,0,0,0 + + 4,749,0,0,0 + + 4,750,0,0,0 + + 4,751,0,0,0 + + 4,752,0,0,0 + + 4,753,0,0,0 + + 4,754,0,0,0 + + 4,755,0,0,0 + + 4,756,0,0,0 + + 4,757,0,0,0 + + 4,758,0,0,0 + + 4,759,0,0,0 + + 4,760,0,0,0 + + 4,761,0,0,0 + + 4,762,0,0,0 + + + 4,763,0,0,0 + + + 4,764,0,0,0 + + 4,765,0,0,0 + + 4,766,0,0,0 + + + 4,767,0,0,0 + + + 4,768,0,0,0 + + 4,769,0,0,0 + + 4,770,0,0,0 + + 4,771,0,0,0 + + 4,772,0,0,0 + + 4,773,0,0,0 + + 4,774,0,0,0 + + 4,775,0,0,0 + + 4,776,0,0,0 + + 4,777,0,0,0 + + 4,778,0,0,0 + + + 4,779,0,0,0 + + + 4,780,0,0,0 + + 4,781,0,0,0 + + 4,782,0,0,0 + + + 4,783,0,0,0 + + + 4,784,0,0,0 + + 4,785,0,0,0 + + 4,786,0,0,0 + + 4,787,0,0,0 + + 4,788,0,0,0 + + 4,789,0,0,0 + + 4,790,0,0,0 + + 4,791,0,0,0 + + 4,792,0,0,0 + + 4,793,0,0,0 + + 4,794,0,0,0 + + 4,795,0,0,0 + + 4,796,0,0,0 + + 4,797,0,0,0 + + 4,798,0,0,0 + + 4,799,0,0,0 + + 4,800,0,0,0 + + 4,801,0,0,0 + + 4,802,0,0,0 + + 4,803,0,0,0 + + 4,804,0,0,0 + + 4,805,0,0,0 + + 4,806,0,0,0 + + 4,807,0,0,0 + + 4,808,0,0,0 + + 4,809,0,0,0 + + 4,810,0,0,0 + + 4,811,0,0,0 + + 4,812,0,0,0 + + 4,813,0,0,0 + + 4,814,0,0,0 + + 4,815,0,0,0 + + 4,816,0,0,0 + + 4,817,0,0,0 + + 4,818,0,0,0 + + + 4,819,0,0,0 + + + 4,820,0,0,0 + + 4,821,0,0,0 + + 4,822,0,0,0 + + + 4,823,0,0,0 + + + 4,824,0,0,0 + + 4,825,0,0,0 + + 4,826,0,0,0 + + 4,827,0,0,0 + + 4,828,0,0,0 + + 4,829,0,0,0 + + 4,830,0,0,0 + + 4,831,0,0,0 + + 4,832,0,0,0 + + 4,833,0,0,0 + + 4,834,0,0,0 + + + 4,835,0,0,0 + + + 4,836,0,0,0 + + 4,837,0,0,0 + + 4,838,0,0,0 + + + 4,839,0,0,0 + + + 4,840,0,0,0 + + 4,841,0,0,0 + + 4,842,0,0,0 + + 4,843,0,0,0 + + 4,844,0,0,0 + + 4,845,0,0,0 + + 4,846,0,0,0 + + 4,847,0,0,0 + + 4,848,0,0,0 + + 4,849,0,0,0 + + 4,850,0,0,0 + + 4,851,0,0,0 + + 4,852,0,0,0 + + 4,853,0,0,0 + + 4,854,0,0,0 + + 4,855,0,0,0 + + 4,856,0,0,0 + + 4,857,0,0,0 + + 4,858,0,0,0 + + 4,859,0,0,0 + + 4,860,0,0,0 + + 4,861,0,0,0 + + 4,862,0,0,0 + + 4,863,0,0,0 + + 4,864,0,0,0 + + 4,865,0,0,0 + + 4,866,0,0,0 + + 4,867,0,0,0 + + 4,868,0,0,0 + + 4,869,0,0,0 + + 4,870,0,0,0 + + 4,871,0,0,0 + + 4,872,0,0,0 + + 4,873,0,0,0 + + 4,874,0,0,0 + + + 4,875,0,0,0 + + + 4,876,0,0,0 + + 4,877,0,0,0 + + 4,878,0,0,0 + + + 4,879,0,0,0 + + + 4,880,0,0,0 + + 4,881,0,0,0 + + 4,882,0,0,0 + + 4,883,0,0,0 + + 4,884,0,0,0 + + 4,885,0,0,0 + + 4,886,0,0,0 + + 4,887,0,0,0 + + 4,888,0,0,0 + + 4,889,0,0,0 + + 4,890,0,0,0 + + + 4,891,0,0,0 + + + 4,892,0,0,0 + + 4,893,0,0,0 + + 4,894,0,0,0 + + + 4,895,0,0,0 + + + 4,896,0,0,0 + + 4,897,0,0,0 + + 4,898,0,0,0 + + 4,899,0,0,0 + + 4,900,0,0,0 + + 4,901,0,0,0 + + 4,902,0,0,0 + + 4,903,0,0,0 + + 4,904,0,0,0 + + 4,905,0,0,0 + + 4,906,0,0,0 + + 4,907,0,0,0 + + 4,908,0,0,0 + + 4,909,0,0,0 + + 4,910,0,0,0 + + 4,911,0,0,0 + + 4,912,0,0,0 + + 4,913,0,0,0 + + 4,914,0,0,0 + + 4,915,0,0,0 + + 4,916,0,0,0 + + 4,917,0,0,0 + + 4,918,0,0,0 + + 4,919,0,0,0 + + 4,920,0,0,0 + + 4,921,0,0,0 + + 4,922,0,0,0 + + 4,923,0,0,0 + + 4,924,0,0,0 + + 4,925,0,0,0 + + 4,926,0,0,0 + + 4,927,0,0,0 + + 4,928,0,0,0 + + 4,929,0,0,0 + + 4,930,0,0,0 + + 4,931,0,0,0 + + 4,932,0,0,0 + + 4,933,0,0,0 + + 4,934,0,0,0 + + 4,935,0,0,0 + + 4,936,0,0,0 + + 4,937,0,0,0 + + 4,938,0,0,0 + + + 4,939,0,0,0 + + + 4,940,0,0,0 + + 4,941,0,0,0 + + 4,942,0,0,0 + + + 4,943,0,0,0 + + + 4,944,0,0,0 + + 4,945,0,0,0 + + 4,946,0,0,0 + + 4,947,0,0,0 + + 4,948,0,0,0 + + 4,949,0,0,0 + + 4,950,0,0,0 + + 4,951,0,0,0 + + 4,952,0,0,0 + + 4,953,0,0,0 + + 4,954,0,0,0 + + + 4,955,0,0,0 + + + 4,956,0,0,0 + + 4,957,0,0,0 + + 4,958,0,0,0 + + + 4,959,0,0,0 + - - cell label - level_number, - cell_index, - material_id, - subdomain_id, - level_subdomain_id - azimuth: 0°, polar: 45° + + cell label + level_number, + cell_index, + material_id, + subdomain_id, + level_subdomain_id + azimuth: 0°, polar: 60° - level_number - - 0 min - - 1 - - 2 max + level_number + + 0 min + + 1 + + 2 + + 3 + + 4 max \ No newline at end of file -- 2.39.5